[英]My CryptoJS encryption/decryption is not working
我有一個JSON數組的數組,其值我試圖用CryptoJS加密,然后打印用於另一個文件,其中這些值應該使用用戶給定的密碼來解密。
但我做錯了什么,我在解密URL時得到“未捕獲的錯誤:格式錯誤的UTF-8數據”。
encrypt.js:
var encrypted = CryptoJS.AES.encrypt(item[key], pass);
json[j] += encrypted.ciphertext.toString(CryptoJS.enc.Base64);
decrypt.js:
var decrypted = CryptoJS.AES.decrypt(item[key], pass);
html += '<a href="' + decrypted.toString(CryptoJS.enc.Utf8) + '" target="_blank" class="socialico ' + key + '">' + icons[key] + '</a>';
我按照這個例子......幫忙,好嗎?
該錯誤消息通常意味着數據未正確解密,並且生成的明文字節不會形成有效的UTF-8字符。
要檢查幾件事:
item[key]
是加密前的字符串。 CryptoJS無法加密JSON對象。 你必須先將它序列化。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.