首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在javascript中使用node-js crypto?

如何在javascript中使用node-js crypto?
EN

Stack Overflow用户
提问于 2020-06-10 17:17:28
回答 1查看 437关注 0票数 0

我需要以下加密解密,但在客户端的java脚本。这段代码是用Node-JS写的,使用加密库,我找不到客户端运行的java脚本的相同解决方案。

代码语言:javascript
复制
const crypto = require('crypto');

const decrypt = (textBase64, keyBase64, ivBase64) => {
    const algorithm = 'aes-256-cbc';
    const ivBuffer = Buffer.from(ivBase64, 'base64');
    const keyBuffer = Buffer.from(keyBase64, 'base64');

    const decipher = crypto.createDecipheriv(algorithm, keyBuffer, ivBuffer);
    decipher.setAutoPadding(false);

    let decrypted = decipher.update(textBase64, 'base64', 'utf8');
    decrypted += decipher.final('utf8');
    return decrypted;
}

const encryptedMessage = '';


const key = 'cGFzc3dvcmQxMjM0NTY3ODk=';

const iv = Buffer.from(encryptedMessage, 'base64').slice(0, 16);

// the message comes from the bytes AFTER the IV - this is what you should decrypt
const message = Buffer.from(encryptedMessage, 'base64').slice(16);

const result = decrypt(message, key, iv);
console.log(result);
//console.log(Buffer.from(encryptedMessage, 'base64').slice(0, 16))
EN

回答 1

Stack Overflow用户

发布于 2020-06-10 17:23:13

首先,我想说的是,不推荐在客户端解密,因为密钥是可见的。但你知道你在做什么。

这个库是纯JS的,应该可以在浏览器中轻松地工作:ricmoo/aes-js

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62299951

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档