首页 新闻 搜索 专区 学院

nodejs md5 与 php md5 中英文加密结果不一样,怎么办?

0
悬赏园豆:5 [已解决问题] 解决于 2015-01-19 16:00

nodejs md5 md5.update('DOMAIN_CHECKagent19272中国双方的首送达方式发斯蒂芬.cnb18d0a001af1638ec24f26b0a565be23’, ‘utf8’);

结果:82d5e459b1846c545bdcadcf11cc4057

php md5 md5(“DOMAIN_CHECKagent19272中国双方的首送达方式发斯蒂芬.cnb18d0a001af1638ec24f26b0a565be23”);

结果:d5d5016d1097f3ebf6ab3049b9341dc2

php 5.6.0

单独加密结果是正确的,但混合中英文,两者结果就不一样了。

seiya的主页 seiya | 初学一级 | 园豆:194
提问于:2015-01-08 00:19
< >
分享
最佳答案
0

个人觉得是编码问题,如果统一了编码,应该就会一致了。

收获园豆:5
幻天芒 | 高人七级 |园豆:36781 | 2015-01-08 09:51

php 文件编码为:GB2312 print_r(md5(‘中国双方的首送达方式发斯蒂芬.cn’)); 0ce165b19e51f6a8ede0bd17508eba46

Nodejs 文件编码为:GB2312 crypto.createHash(‘md5’).update(‘中国双方的首送达方式发斯蒂芬.cn’).digest(‘hex’); cd9e8c6fac492a12318952291211c3a7

seiya | 园豆:194 (初学一级) | 2015-01-08 13:48

@seiya: 你在node里,用Buffer指定下文本的编码呢。

幻天芒 | 园豆:36781 (高人七级) | 2015-01-08 15:30

@幻天芒: 是对方接收gbk编码产品的问,我把utf-8转换成gbk就行了

seiya | 园豆:194 (初学一级) | 2015-01-13 13:14

@seiya: 嗯,搞定就好!:)

幻天芒 | 园豆:36781 (高人七级) | 2015-01-13 13:29
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册