看板 ASM 關於我們 聯絡資訊
大家好,小弟 學習 Arduino Code 新手約一個多月, 有個關於通訊加密的問題請教: 小弟自製手機/平板程式與 Arduino 裝置溝通, 現在要練習將溝通的訊息編碼加密 手機透過AES加密似乎沒什麼問題, https://github.com/WelkinXie/AESCipher-iOS 也找到不少 Arduino 用的 DES , 在 Ardiuno 上面跑也都能跑得起來, 但問題來了... 手機將訊息加密的結果,與 Arduino 加密的結果不一樣, 這個 Arduino library 是我最接近成功的時候 https://github.com/spaniakos/AES/ 手機使用的 Key 跟 IV 預設 NSString (字串), 在程式中會轉成 byte, Arduino 的 Key 是 byte, IV 是 unsigned long long int, 我懷疑是兩邊 IV 不一致, 於是設法把兩邊的 IV 設為長度16的0, 解出來的結果,總是有幾個位元的位置不一樣... 這篇文章說出了我的心聲, https://goo.gl/PkWdEr 不知是否有前輩在這個議題上(跨平台 PC/平板<-->MCU 訊息加密), 願意心得分享解惑, 或是也在研究這方面的議題? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.127.48.233 ※ 文章網址: https://www.ptt.cc/bbs/ASM/M.1489740750.A.73F.html
chuegou: 沒經驗...大印地安小印地安?03/17 23:28
cs8425: 先猜padding方式不同?03/18 11:02
benjenq: library沒有提供padding的選項…頭痛03/18 17:56
benjenq: 我懷疑是Arduino Uno處理器能力不足,多位元計算可能有03/18 18:01
benjenq: 問題03/18 18:01
※ 編輯: benjenq (118.171.147.126), 03/18/2017 18:15:43
cs8425: library有原始碼啊 沒提供自己加不就好了orz 03/18 21:01
benjenq: 我的意思是,程式碼都看不出在哪需要padding, 03/19 13:54
KanoLoa: UNO不夠強 有沒有試過MEGA呢~ 03/20 17:39
cs8425: 沒有? AES.h 201~211行是啥? 還是連翻譯都不會用啊? 03/22 02:09
gpgpi: Des演算法,會有padding選項,用以補足原始資料長度不足8 05/07 12:10
gpgpi: 的倍數,這部分加解密端必須一致哦! 05/07 12:10