javascript - 如何加密-解密 Node.js 加密 aes256 密码

标签 javascript node.js encryption

我必须在 javascript 前端代码中加密密码字符串,并使用 $.ajax 我曾经在 Node.js 中发送该加密密码,但我不知道如何在 Node.js 中解密该密码

我有一个使用 Node.js 的示例,但是我如何将加密代码与 javascript(前端)一起使用,并执行以下代码中给出的相同解密操作。

var crypto = require('crypto');

var algorithm = 'aes256'; // or any other algorithm supported by OpenSSL
var key = 'password';
var text = 'I love kittens';

var cipher = crypto.createCipher(algorithm, key);  
var encrypted = cipher.update(text, 'utf8', 'hex') + cipher.final('hex');
var decipher = crypto.createDecipher(algorithm, key);
var decrypted = decipher.update(encrypted, 'hex', 'utf8') + decipher.final('utf8');

console.log(decrypted);

最佳答案

好吧,我找到了解决方案。

客户端(JavaScript)

var encrypted = CryptoJS.AES.encrypt("password", "Secret Passphrase");
$.ajax({
 url: "/enc_md5",
 type: "POST",
 data: {username:"uname",password:encrypted.toString()},
 success:function (data) {
   alert(data);
 }
});

服务器端(Node.js)

var CryptoJS = require("crypto-js");
app.post('/enc_md5', function (req,res) {
    var encrypted = req.body.password;
    var decrypted = CryptoJS.AES.decrypt(encrypted, "Secret Passphrase");
    console.log(decrypted.toString(CryptoJS.enc.Utf8));
});

关于javascript - 如何加密-解密 Node.js 加密 aes256 密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24217791/

相关文章:

javascript - 如何使用 ApolloClient 记录 HTTP 请求和响应

node.js - 如何在所有测试之前设置 DynamoDB 表并在所有测试之后将其拆除?

node.js - nodejs/express - 立即将标准输出流式传输到客户端

python - 保护Python代码,包括密码、加密?

javascript - 在动态生成的图表中为最大值添加颜色?

javascript - 暂停时暂停音乐淡入/淡出?

javascript - 如何使用 Nodejs 将 json 数据插入 MariaDB?

encryption - pkcs#11 内存错误 - 常见原因可能是什么?

encryption - 如何禁用 openssl 引擎?

javascript - Outlook 添加如何在约会中获取多个位置更多元数据