Serpent
Serpent是一种对称式分组加密算法,是高级加密标准(AES)的候选者之一,其顺序仅次于Rijndael算法。设计者为罗斯·安德森、艾力·毕汉姆及拉尔斯·克努森。
Serpent的线性混合阶段 | |
概述 | |
---|---|
设计者 | 罗斯·安德森、艾力·毕汉姆、拉尔斯·克努森 |
首次发布 | 1998年8月21日 |
派生自 | Square |
认证 | AES决赛算法 |
密码细节 | |
密钥长度 | 128、192、256位 |
分组长度 | 128位 |
重复回数 | 32 |
最佳公开破解 | |
All publicly known attacks are computationally infeasible, and none of them affect the full 32-round Serpent. A 2011 attack breaks 11 round Serpent (all key sizes) with 2116 known plaintexts, 2107.5 time and 2104 memory (as described in [1]). The same paper also describes two attacks which break 12 rounds of Serpent-256. The first requires 2118 known plaintexts, 2228.8 time and 2228 memory. The other attack requires 2116 known plaintexts and 2121 memory but also requires 2237.5 time. |
与其他进入AES评选名单的算法一样,Serpent的区块长度为128比特,支持的密钥长度为128、192和256比特。
参考文献
- ^ Huaxiong Wang, Hongjun Wu & Phuong Ha Nguyen. Improving the Algorithm 2 in Multidimensional Linear Cryptanalysis (PDF). ACISP 2011. 2011 [2018-10-24]. doi:10.1007/978-3-642-22497-3_5. (原始内容存档 (PDF)于2017-04-14).
外部链接
- 256bit Ciphers(页面存档备份,存于互联网档案馆) - SERPENT参考实现程序