瀏覽單個文章
alex1973
Regular Member
 

加入日期: Sep 2004
文章: 61
我對你這語言不熟, 不過以前用 assembly 還有 C 曾經寫過 AES 加解密 library.

其實對於你呼叫者而言, 關於 AES key expansion 甚麼的你都不用去了解內部怎麼跑的, 因為那都是在 AES 演算法方面必定要做的, 你只要照著 call 就行了.

關於你問題的 AES padding (也就是你 input 的 raw), 在呼叫 AES_Encrypt 前就應該要 padding 到以 16 byte 為單位, 因為 AES spec 就是以 16 bytes 為 block size 在加解密的, 你沒有用加解密雙方講好的 padding rule 去 padding 的話, 加解密出來的東西就根本都亂掉了.

還有我看你兩段 code 的 data 還有 private_key 怎麼感覺是相反的. 而且輸入的 data 沒有 length, 那 AES 怎麼知道要處理多少 block ? 還是這函式固定只處理一個 block ?

Anyway, 一切還是要靠你自己啊, 感覺問題不難, 你只要花點心思看懂照著 call 就行.
舊 2014-06-19, 12:49 AM #13
回應時引用此文章
alex1973離線中