QT歷程(一):與CryptoJs對應的AES加密

#####目的:函數

使用QT進行AES加密,能用CryptoJs進行AES解密。加密

#####說明:blog

CryptoJs使用的AES加密文件爲 aes.jsget

#####網上QT經常使用的AES加密方式源碼

    1. Crypto++庫
    1. Qca庫
    1. Botan庫
    1. 網友貢獻的AES加密代碼

crypto++ 和 qca 都須要下載源碼編譯成靜態庫或者動態庫調用,方法比較複雜,沒有編譯成功。qt

botan 是QT自帶的庫,只須要引入頭文件便可,調用還算是比較方便,可是我嘗試的時候發現加密之後不能正確解密,不知道哪裏弄錯了,按道理來講不該該這樣。編譯

網友貢獻的AES加密代碼,能夠正常加密和解密,可是和CryptoJs默認加密方式得出的結果不同,配置了mode和padding 也不能獲得相同的結果。配置

說到這裏,常規手段已經用完了,好吧,結果一點都不理想。下載

#####很是規手段: QT調用js方法進行加解密。方法

大概步驟就是使用QJSEngine加載本地aes.js文件,而後調用js裏面的方法進行加解密,獲取返回結果,我這邊得出的結果就是,加密不正確且沒法解密。

到這裏就結束了嗎?不!我以爲還能夠再搶救一下,也就是這篇文章的意義所在

==使用QML包含aes.js文件,再用QML函數調用aes.js的AES加密方法,最後用C++調用QML內的方法,獲取加解密結果,成功!==

#####完!

原創文章,轉載請註明出處:http://yliyun.com/blog/2016/05/30/qt-aes-cryptojs/

歡迎選擇一粒雲 ,您的專屬企業網盤

相關文章
相關標籤/搜索