您的位置:首页 > Web前端 > Node.js

nodejs 解决md5加密的中文编码不一致问题

2015-03-16 18:24 1256 查看
nodejs在进行md5加密时,发现同样的密文在,php 和nodejs中加密后的密文竟然不一样
查其原因,nodejs在进行md5 时,中文没有转换成二进制编码,通过增加中间处理过程把字符串强制转换成二进制编码解决问题!!

function md5(data) {
var Buffer = require("buffer").Buffer;
var buf = new Buffer(data);
var str = buf.toString("binary");
var crypto = require("crypto");
return crypto.createHash("md5").update(str).digest("hex");
}


除此之外还有更简单的:

md5.update(stringToSign, 'utf8'); //直接转成utf8
以上更简单~~~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: