博客数据丢失,刚恢复一年前的备份!--QQ群:162541429

C# MD5加密以及MD5少位数和MD5不匹配的问题

其他 小宝 337℃ 0评论

前言

最近接入了微信支付,发现经常会出现sign签名错误,概率性出现,一直没找到原因。

后面才发现我从网上找来的MD5加密函数会出现少0的问题,从而导致加密出来的md5码可能是31位或者30位的问题

加密方法

如上就是我最终的MD5加密方法

FAQ

  1.  MD5少位数是因为s[i]是一个byte,8位,当s[i]中的值为0时,生成的字符串应该是00,而如果ToString(“X”)会生成0,所以有几个s[i]为0,就少了多少位.把”X”改成”X2″就可以了
  2. MD5码加密和其他地方不一样的问题。是因为获取bytes时的编码问题,注意下编码就可以了。Encoding.ASCII/Encoding.UTF8

 

 

 

 

 

 

 

 

转载请注明:小宝个人笔记 » C# MD5加密以及MD5少位数和MD5不匹配的问题

喜欢 (0)or分享 (0)
本站所有内容如未标明转载的内容,均为原创内容。转载请注明来源!
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址