對(duì)稱密碼
加密和解密時(shí)使用同一密鑰
公鑰密碼(非對(duì)稱密碼)
加密和解密時(shí)使用不同密鑰
愷撒密碼:
通過(guò)將明文中所使用的字母表按照一定的字?jǐn)?shù)“平移”來(lái)進(jìn)行加密的。解密過(guò)程是使用與加密時(shí)相同的密鑰進(jìn)行反向的平移操作。
簡(jiǎn)單密碼替換:
加密過(guò)程是依次將明文中的每一個(gè)字母按照替換 表替換成另一個(gè)字母。
Enigma密碼:
加密與解密過(guò)程極其復(fù)雜
XOR:
如果將A xor B的結(jié)果再與B 進(jìn)行xor運(yùn)算,則結(jié)果會(huì)變回A
一次性密碼本:
將明文與一串隨機(jī)的比特序列進(jìn)行XOR運(yùn)算
DES:
DES是一種將64比特的明文加密成64比特的密文的對(duì)稱密碼算法,它的密鑰長(zhǎng)度是56比特。盡管從規(guī)格上來(lái)說(shuō),DES的密鑰長(zhǎng)度是64比特,但由于每隔7比特會(huì)設(shè)置一個(gè)用于錯(cuò)誤檢查的比特,因此實(shí)質(zhì)上其密鑰長(zhǎng)度是56比特。
DES的結(jié)構(gòu)(Feistel網(wǎng)絡(luò))性質(zhì):
輪數(shù)可以任意增加,加密時(shí)無(wú)論使用任何函數(shù)作為輪函數(shù)都可以正確解密,加密和解密可以用完全相同的結(jié)構(gòu)來(lái)實(shí)現(xiàn)。
64比特分為左右32比特,左邊XOR加密,右邊不加密。下一輪交換
三重DES:
加密:加密>解密>加密 解密:解密>加密>解密