为什么nodejs的crypto 的sha1加密汉字的时候结果不对呢。。
var crypto = require('crypto');
//sha1
function sha1(str) {
console.log(str)
var md5sum = crypto.createHash('sha1');
md5sum.update(str);
str = md5sum.digest('hex');
console.log(str)
return str;
}
sha1('agentsy489981aecontent脸真圆receiver13523460220secretAA4091068C59B65F77E871701895D49DD8235EEAservicetypeb23dc7')
下面那段字符串在在线的sha1上加密出是e7a328e41f84e0af1bdd7274ea754578cbb8a847 我们用c写的算法也是这个。 但是nodejs 加密出来是6db0d68135057b3a43df8bd91bdf7770e70b4fd6 求开示啊。。。 不带汉字的话是没有问题的
3 回复
md5sum.update(str, ‘utf8’);
感谢,解决了!
多谢多谢,解决大问题了,呵呵。