我必须加密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);发布于 2014-06-14 09:27:51
好了我找到解决办法了。
客户端(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));
});https://stackoverflow.com/questions/24217791
复制相似问题