如何使用crypto-js进行AES解密,没有iv密钥偏移量?-灵析社区

UX_siri

AES解密,没有iv怎么使用crypto-js呢 ![image.png](https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241112/d9acd6fd66fa426bad9dad50c6dcd0b3.png) var CryptoJS = require("crypto-js"); // 定义AES加密解密密钥 const key = CryptoJS.enc.Utf8.parse('1234567_cpzy1234'); // 加密 const plaintext = 'admin'; const ciphertext = CryptoJS.AES.encrypt(plaintext, key, { iv: CryptoJS.enc.Utf8.parse('1234567_cpzy1234'), // 初始向量 mode: CryptoJS.mode.CBC, // 模式 padding: CryptoJS.pad.Pkcs7 // 填充 }).toString(); console.log('加密',ciphertext); // 解密 const decrypted = CryptoJS.AES.decrypt(ciphertext, key, { iv: CryptoJS.enc.Utf8.parse('1234567_cpzy1234'), // 初始向量 mode: CryptoJS.mode.CBC, // 模式 padding: CryptoJS.pad.Pkcs7 // 填充 }); console.log('解密',decrypted.toString(CryptoJS.enc.Utf8)); 加密串:'z6OGLxa/UGEjSZXfBiPGsA==' 秘钥:'1234567_cpzy1234' 找了一个在线解密的[网站](https://link.segmentfault.com/?enc=KyT4%2B3Fh8gLzsVlu3b7a%2Bw%3D%3D.%2F7r3VU5YjBBt9SI5gMYM8dt4lhyuhG5dU1jovut7ays%3D),没设置iv密钥偏移量确实可以解,但是用crypto-js不设置iv就会报错,应该怎么用啊。

阅读量:23

点赞量:0

问AI
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241112/5739ba4df517cc7a9ba10f8bf10aa1df.png) 你这分组模式一个是 ECB、一个是 CBC,那能对吗? CBC 一定要 iv,实在就是没有那就填充 16 字节的 0;ECB 不需要 iv。