我如何在本机JS中使用加密j

  • 本文关键字:加密 JS 本机 cryptojs
  • 更新时间 :
  • 英文 :


我正在使用html中的本地j中的cryptojs。但是,当我用aesdecrypt(解密,钥匙(将TXT降低时,它将无法正常工作。我还尝试了许多其他密码,但它仍然不起作用。你们会查看下面的代码并给我一些建议吗?

我在后端尝试了许多密码(例如AES-192-ECB,AES-256-ECB(,并且它不起作用。它报告:不良加密错误。

Front code: encrypt the txt and send to backend.
function aesEncrypt(data, key) {    
    key = CryptoJS.enc.Utf8.parse(key);    
    let encrypted = CryptoJS.AES.encrypt(data, key, {    
        mode: CryptoJS.mode.ECB,    
        padding: CryptoJS.pad.Pkcs7    
    });    
    return encrypted.toString();    
}   
Backend code: decrypt the txt sent from front.
function aesDecrypt(encrypted, key) {    
    const decipher = crypto.createDecipher('aes192', key);    
    let decrypted = decipher.update(encrypted, 'binary', 'utf8');    
    decrypted += decipher.final('utf8');    
    return decrypted;    
}

看起来我在前端和后端都使用了错误的方法。

front code:
<script src="https://cdn.jsdelivr.net/npm/crypto-js@3.1.9-1/crypto-js.js"></script>
let encrypted = CryptoJS.AES.encrypt("txt", "Secret Passphrase").toString();

backend code:
const cryptojs = require("crypto-js");
let txt = cryptojs.AES.decrypt(encrypted , "Secret Passphrase").toString(cryptojs.enc.Utf8);

最新更新