微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Node-forge 解密 aes-256-cbc 显示难以辨认的字符

如何解决Node-forge 解密 aes-256-cbc 显示难以辨认的字符

嗨,我在 node-forge 中有这个代码。 当我运行此代码时,解密后的数据“难以辨认”。

const keyHash = "d0f95d5e54a7aa25934a5d4915c9e2a06dadac20d16551693be1d21d4d8e8798"
//This keyHash really is in utf8: Nootric2703202 hash(sha256)

const encryptedB64 = "U2FsdGVkX1++7PN6CsF5Bi38t0N3EjXpH5oGpaIZXUwk4T8QCwcATjvA4b/8VaxD8nf/MZhKPnWb1L8raLR4lw==";

var encrypted = Buffer.from(encryptedB64,'base64');

var key = Buffer.from(keyHash,'hex');
var res = forgeDecrypt();



function forgeDecrypt() {
    const encoding = 'utf8';
    key = key.toString(encoding);
    initVal = encrypted.toString(encoding).substring(0,16);
    encrypted = encrypted.toString(encoding).substring(16);
    var decipher = forge.cipher.createDecipher('AES-CBC',key);
    decipher.start({ iv: initVal });
    decipher.update(forge.util.createBuffer(encrypted));
    var result = decipher.finish();
    result = decipher.output.getBytes();
    return result;
 }

enter image description here

真正的解密值一定是这样的:

enter image description here

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。