1 回答

TA貢獻1859條經驗 獲得超6個贊
由于可以更好地顯示必要的代碼,因此我使用的是答案,而不是您應該考慮的代碼行的注釋。
來自文檔(此代碼適用于默認的 AES CBC 模式) https://cryptojs.gitbook.io/docs/#custom-key-and-iv
custom-key-and-iv
var key = CryptoJS.enc.Hex.parse("000102030405060708090a0b0c0d0e0f");
var iv = CryptoJS.enc.Hex.parse("101112131415161718191a1b1c1d1e1f");
var encrypted = CryptoJS.AES.encrypt("Message", key, { iv: iv });
安全警告:請注意,ECB 模式是不安全的。
編輯-回答您的問題:
我如何知道該字符串確實經過 Base64 加密(位于前端(瀏覽器))?使用默認輸出(由“返回加密消息”產生)與 OpenSSL 兼容,即base64編碼。
為什么字符串 2(b64words) 不是字符串 1 的子字符串?因為它是雙重 Base64 編碼,并且字符串看起來不同。
為什么我能夠使用 CryptoJS 解密字符串 1,但無法成功解密字符串 2(b64words)?如果您首先對字符串編號 2 進行 Base64 解碼并將結果提供給解密函數,則您將成功獲得字符串編號 2。
添加回答
舉報