我必须在 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/