一、AES明文和密鑰位數
RIJNDAEL 算法數據塊長度和密鑰長度都可獨立地選定為大于等于 128 位且小于等于 256 位的 32 位的任意倍數。
而美國頒布 AES 時卻規定數據塊的長度為 128 位、密鑰的長度可分別選擇為 128 位, 192 位或 256 位
1.1 狀態
中間結果叫做狀態,把狀態表示為二維字節數組,矩陣中元素排序從上到下,從左到右
1.1.1 數據塊狀態
四行, Nb列。Nb等于數據塊長度除以 32,數據塊長度為128時,Nb=4。數據塊長度為192時,Nb=6。數據塊長度為 256 時, Nb=8 。(AES時Nb=4)
一個元素一個字節即8位
1.1.2 密鑰狀態
密鑰與數據塊相同,表示為Nk列
1.1.3 算法迭代圈數
算法的迭代圈數 Nr 由Nb和Nk共同決定:
二、算法結構
采用代替/置換網絡結構 (SP 結構)