Serpent是一種對稱式分組加密演算法,是進階加密標準(AES)的候選者之一,其順序僅次於Rijndael演算法。設計者為羅斯·安德森英語Ross J. Anderson艾力·畢漢姆英語Eli Biham拉爾斯·克努森英語Lars Knudsen

Serpent
Serpent的線性混合階段
概述
設計者羅斯·安德森英語Ross J. Anderson艾力·畢漢姆英語Eli Biham拉爾斯·克努森英語Lars Knudsen
首次發佈1998年8月21日,​25年前​(1998-08-21
衍生自Square英語Square (cipher)
認證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位元。

參考文獻 編輯

  1. ^ 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). 

外部連結 編輯