iT邦幫忙

第 12 屆 iT 邦幫忙鐵人賽

DAY 8
0
Security

駭客入門系列 第 8

Day8 Cryptography - Padding 實例 ( 包含 Mode 簡介 )

昨天我們提到 padding 的概念,今天我們就來看看實際上 padding的操作,

以 AES 為例 ( 1 個區塊的大小是 16 bytes ) ,所以 :

輸入 ITHOME SECURITY ( 因為字元 " ITHOME SECURITY " 包含空格,總共是 15 bytes ,所以這個區塊缺少 1 個 bytes )
我們補上 padding 後就變成 ITHOME SECURITY\x01

輸入 Hamlet ( 因為區塊缺少 10 個 bytes )
所以我們補上 padding 後 就會變成 Hamlet\x0a\x0a\x0a\x0a\x0a\x0a\x0a\x0a\x0a\x0a

輸入 Cryptography2020 ( 區塊的長度剛剛好,但我們還是需要補相同長度 padding )
補上 padding 後 就會變成 Cryptography2020\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10

當我們輸入的資料很大時,就必須要分組,並同時決定要用哪一種操作模式 Mode 加密 以下皆以 AES 為例
當資料多於 128 bits 時,就必須要分組,而 Mode 就是當我們將資料分成好幾組時,要怎麼對這些分組後的區塊做加密,

Mode 有分成五種 :
Electronic codebook ( ECB )
Cipher - block chaining ( CBC )
Couter ( CTR )
Cipher feedback
Output feedback

其中,最後的兩個 Cipher feedback 與 Output feedback 很少用, 所以我們不討論,之後會進到 Mode 的單元時,就只會介紹前 3 個


上一篇
Day7 Cryptography - Padding
下一篇
Day9 Cryptography - ECB Mode
系列文
駭客入門30

尚未有邦友留言

立即登入留言