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参考实现程序