1.Triple DES
2.IDEA
3.RC6
4.RC6
5.ASE
1.Triple DES(3DES)
其實就是有3個密鑰k1,k2,k3,如果m表示明文,C表示密文,他們是這樣操作的:
DES1(m)=>C1
DES2(C1)=>C2
DES3(C3)=>C3
DES密鑰太短是其短板,3DES密鑰長度為k1+k2+k3 = 56*3 = 168bit
既然都Triple自然就有double,為什么不用Double DES呢?
我們先來看下double des:
首先根據DESC密鑰太短的特點,的確是有了double desc,可用中間相遇攻擊破解(老師坑爹沒講什么是中間相遇攻擊,日后補上),經過加密有2^64個可能的密文,密鑰長度為112bit(56+56),所以選擇密鑰的可能性達到2^112,于是對給定一個明文P加密成密文有2^112/2^64 = 2^48種可能,對于給定兩個明文密文對,虛警率降為2^(46-64)=2^-16,用中間相遇攻擊大概可用2^57 可暴力破解
那么如何解決中間相遇攻擊呢?于是設計出了Triple des,它一共有四種模式:
1.DES-EEE3:3個不同的密鑰,順序用三次加密算法
2.DES-EDE3:3個不同的密鑰, 加密-解密-加密
3.DES-EEE2:兩個不同的密鑰,k1,k2,k1,依次k1加密,k2加密,k1加密
4.DES-EDE2:兩個不同的密鑰,k1,k2,k1,依次k1加密,k2解密,k1加密
這里我們著重介紹第四種,DES-EDE2
同DES相比有如下特點:
1.3DES安全性高,密鑰長度大于DES
2.3DES可抵抗中間相遇攻擊
3.可向下兼容,我們設k2=k1,則密鑰均為k1,上圖中A過程加密后在B過程解密,最后在C過程又加密,相當于僅用k1加密一次,兼容了DES,解密同理
4.相比于DES效率低些
2.AES(Advanced Encryption Standard)
要求:1.效率比3DES高
? ? ? ? ? ? 2.至少和3DES一樣安全,數據分組長度128bit
2.1.Rijndael加密算法
它有如下特點:
1.不屬于Feistel結構,屬于SP網絡
2.加密,解密相似但不對稱
3.支持128/32=Nb數據塊大小
4.支持128/192/256(/32=Nk)密鑰長度
5.結構簡單速度快
什么是Feistel結構?
? ? Feistel 的優點在于:由于它是對稱的密碼結構,所以對信息的加密和解密的過程就極為相似,甚至完全一樣。這就使得在實施的過程中,對編碼量和線路傳輸的要求就減少了幾乎一半
什么是SP網絡結構?
? ? 在這種密碼的每一輪中,輪輸入首先被一個由子密鑰控制的可逆函數S作用,然后再對所得結果用置換(或可逆線性變換)P作用,S和P分別被稱為混亂層和擴散層,主要起混亂和擴散作用
通過置換和替換迭代加密(最后一輪沒有列混淆)