iT邦幫忙

第 12 屆 iT 邦幫忙鐵人賽

DAY 6
0
Security

駭客入門系列 第 6

Day6 Cryptography - DES與AES

介紹完 XOR 加密後,再來要介紹 AES ( Advanced Encryption Standard ) ,
AES 是用來替代原先的 DES ( Data Encryption Standard ) , 但我不會介紹 DES ,我們只談論 AES 的部分,舉例來說:

64 bits 明文 64 bits DES 的金鑰 加密 = 64 bits 密文
128 bits 明文 128、192 或 256 bits AES 的金鑰 加密 = 128 bits 密文
64 bits 密文 64 bits DES 的金鑰 解密 = 64 bits 明文
128 bits 密文 128、192 或 256 bits AES 的金鑰 解密 = 128 bits 明文

( 對64 bits 的明文進行 DES加解密時, DES 的金鑰只能是 64 bits
但對 128 bits 的明文進行 AES 加解密時, AES 的金鑰卻可以是 128、192 或 256 bits )

那 AES 是怎麼加密的呢? 以下用 128 bits ( 16bytes ) 的明文做說明
總共分為四個步驟 SubBytes 、 ShiftRows 、 MixColumn 與 AddRoundKey

  1. SubBytes : 把 128 bits 看成 16 個 bytes 的區塊
  2. ShiftRows : 把 16 個 bytes 的區塊,隨機調換順序
  3. MixColumn : 調換順序後的每 4 個 bytes 再一次隨機調換順序組成 column
  4. AddRoundKey : 每個 column 與金鑰做 XOR 加密,然後輸出

上一篇
Day5 寫作方式 - 番外篇
下一篇
Day7 Cryptography - Padding
系列文
駭客入門30

1 則留言

1
dennysora
iT邦新手 5 級 ‧ 2020-09-29 00:42:51

你在亂說什麼……AES根本不是從DES改編而來的。
同時內部的邏輯你根本沒介紹。
還一堆錯誤!

什麼『差在 bits 輸出不同而已』,才不是這樣!

建議你好好看我的文章,我的文章都取至正式的論文。

https://ithelp.ithome.com.tw/articles/10234374

Hamlet iT邦新手 5 級 ‧ 2020-09-29 15:45:12 檢舉

讀者您好:
關於文章的錯誤已經修正,
如果有錯誤的地方,請不吝指教,
這是我的參考文件 : https://www.itread01.com/articles/1501720695.html
感謝您支持我的文章

dennysora iT邦新手 5 級 ‧ 2020-09-29 16:37:08 檢舉

感謝您的修正與回復。
資料來源最好多方且有論文或WiKi來輔助更好。

我要留言

立即登入留言