這次要動手來驗證RSA的理論與實際操作Openssl產生的key pair是否一致。
2018/05/31
2018/05/30
[Cryptography] 複習筆記: Week4 - Active attack on CBC encryption with a random IV using AES
本週課程探討AE(Authenticated Encryption)的重要性,因為不論是流加密(Stream cipher)或區塊加密(Block cipher),雖然是CPA(Cipher plaintext attack) security,但是無法阻擋Active attack在資料上的完整(Integrity)。
2018/05/28
[Cryptography] DES筆記: meet in the middle attack
Meet in the middle attack是在cryptography攻擊上很常見的手法,概念上是把一系列的計算分成前半部份和後半部份,利用建立表格的方式,找到前半部份計算與後半部份計算相等的地方。
2018/05/17
[Cryptography] 數論相關筆記-用Extended Eculid algorithm求Modular multiplicative inverse
在數論中,最大公因數是一個很重要的概念,因為如果兩個數的最大公因數為1,則代表兩個數互質(relatively prime)。要求兩數的最大公因數,可以透過Extended Eculid algorithm來計算。
2018/05/08
[Cryptography] pycrypto筆記: SHA256計算之程式作業
在Coursera上Cryptography I之第三週作業中,要利用chaining的方式來計算檔案的SHA256。作業給了兩個檔案,分別是:
1. 驗證用:6.2.birthday.mp4_download, 16,927,313 bytes
2. 作業題目:6.1.intro.mp4_download, 12,494,779 bytes
1. 驗證用:6.2.birthday.mp4_download, 16,927,313 bytes
2. 作業題目:6.1.intro.mp4_download, 12,494,779 bytes
2018/05/02
[Cryptography] pycrypto筆記: 使用AES區塊加密之CBC和CTR工作模式
在此紀錄學習Coursera上學習密碼學(Cryptography)的一些心得。
首先,在第二週的課程,Dan Boneh教授介紹了區塊加密(Block Ciphers)的概念,特別是進階加密標準(AES, Advanced Encryption Standard)中的兩個工作模式:
1. 密碼塊連結(CBC, Cipher-block chaining): 利用隨機產生的初始向量(IV, Initialization Vector)與明文(Plaintext)區塊做互斥邏輯運算,再透過金鑰(Key)加密區塊,再把IV取代成加密區塊結果,依序加密剩下明文區塊。但缺點是,最後一個明文區塊有dummy padding的問題。假設明文長度剛好為16bytes的倍數,其尾端還得加上由0x16 * 16組成的16 bytes dummy padding。
首先,在第二週的課程,Dan Boneh教授介紹了區塊加密(Block Ciphers)的概念,特別是進階加密標準(AES, Advanced Encryption Standard)中的兩個工作模式:
1. 密碼塊連結(CBC, Cipher-block chaining): 利用隨機產生的初始向量(IV, Initialization Vector)與明文(Plaintext)區塊做互斥邏輯運算,再透過金鑰(Key)加密區塊,再把IV取代成加密區塊結果,依序加密剩下明文區塊。但缺點是,最後一個明文區塊有dummy padding的問題。假設明文長度剛好為16bytes的倍數,其尾端還得加上由0x16 * 16組成的16 bytes dummy padding。
訂閱:
文章 (Atom)