ตามที่คำถามแนะนำ ดูเหมือนว่าฉันไม่สามารถรับค่าที่ถอดรหัสได้อย่างถูกต้องโดยใช้ตัวเลือกที่จำเป็น (AES, โหมด ECB และ PKCS7)
ฉันกำลังเข้ารหัสดังนี้:
var ENC_KEY = "bXlrZXk="; //"mykey"
var encrypted = CryptoJS.AES.encrypt("hello", CryptoJS.enc.Base64.parse(ENC_KEY),
{
mode: CryptoJS.mode.ECB,
padding: CryptoJS.pad.Pkcs7
});
console.log('encrypted: ' + encrypted);
ซึ่งทำงานตามที่คาดไว้และส่งเอาต์พุตค่าที่เข้ารหัสที่ฉันคาดหวัง แต่เมื่อฉันถอดรหัสโดยใช้ค่าด้านล่าง ฉันจะจบลงด้วยวัตถุว่างที่กำลังส่งออก:
var decrypted = CryptoJS.AES.decrypt(encrypted, CryptoJS.enc.Base64.parse(ENC_KEY),
{
mode: CryptoJS.mode.ECB,
padding: CryptoJS.pad.Pkcs7
});
console.log('decrypted: ' + decrypted);
ฉันได้ลองใช้:
console.log('encrypted is decrypted to: ' + decrypted.toString(CryptoJS.enc.Utf8);
แต่ไม่มีความสุข...