我正在尝试使用node.js实现DIGEST-MD5,但它似乎无法正常工作。 目前,我试图通过以下方式实现它:
function md5(str) {
var hash = crypto.createHash('md5');
hash.update(str);
return hash.digest('binary');
}
var A1 = md5(username + ':' + realm + ':' + password);
当我在console.log中输入此值(使用username =“test”,realm =“”和password =“123)时,会出现以下内容:”EïSÓ*JÉHF7{“
我将它与strophe.js的javascript实现(这是正确的)进行了比较,并打印出以下“EïSÓ*JÉHF7{¢”
还有其他方法可以计算吗?或者它可能是基本字符串的一些错误编码?
谢谢, 迈克尔
答案 0 :(得分:0)
我;使用节点v0.4.12,我得到: EïSÓ*JÉHF7{¢
您正在使用哪个版本的节点?
也许这是shell设置的事情尝试执行unix命令:
的env
搜索: LANG =的en_US.UTF-8
答案 1 :(得分:0)
看看这个module,我已经测试了这个并且它正在运行。
答案 2 :(得分:0)
现在正常工作,我的代码是正确的,但我使用了一些错误的变量来构造字符串..
感谢您的帮助。