AES(Advanced Encryption Standard) 加密算法是一種對稱加密算法。
AES 加密支持的密鑰長度:128, 192, 256,長度越長安全性越高,性能越差。
AES 在對明文進行加密時並不是把整個明文一下全部加密成一整段密文,而是把明文拆分成一個個獨立的明文塊,每個明文塊長度爲 128 bit。這些明文塊經過 AES 加密器處理後生成一個個獨立的密文塊,將所有密文塊拼接在一起便是最終的 AES 加密結果。

如果明文總長度不是 128 bit 的整數倍,如上圖中明文塊 N 的大小小於 128 bit,則需要對最後長度不足的明文塊進行填充。AES 在不同的語言實現中有不同的填充算法,幾種常見的算法包括:
{1,2,3,4,5,6,7,8,9,0} 只佔用了 10 個字節,缺少 6 個字節,則經此算法填充後變爲 {1,2,3,4,5,6,7,8,9,0,6,6,6,6,6,6},填充內容全部爲缺少的字節數量。{1,2,3,4,5,6,7,8,9,0},經此算法填充後可能變爲 {1,2,3,4,5,6,7,8,9,0,r,9,$,v,u,6}
注意:AES 加解密使用的填充算法必須保持一致。
注意:AES 加解密使用的工作模式也必須保持一致。
原文作者:;如有侵权,请联系管理员删除。