这两天做项目一直在被这个问题烦恼
我们的md5验证字符串 和合作方接口提供的字符串不一致。原因不明。
问了下朋友,他说不通语言对中文的加密结果不一致。
我挺郁闷 我用的是c#,对方使用java。 最后还是群里的一个朋友说明了真相。
真相就是 什么语言对md5的加密结果都一致,MD5算法都是一致的。只是有的是真的md5,有的是16进制的md5。
还给出了代码 在此不敢独享,给以后遇到这样问题的朋友们提供参考。
首先看下我们的加密
C#:这是真的md5字符串
对方的java版本:16进制后的字符串(假的MD5)
和对方对接写的方法:16进制后的字符串(加的MD5)
到此 大功告成。。。