(编程语言界的丐帮 C#).NET MD5 HASH 哈希 加密 与JAVA 互通

布满荆棘的人生 2024-04-03 09:29 42阅读 0赞

一。注意要点

1:输入字符串的的编码双方保持统一,如:UTF8;

2:HASH计算输出结果 byte[] 数组转String 时,编码要统一,如:转16进制小写字符串。当然也可以转Base64。

3:如果是16进制字符串,双方大小写要统一。

二。C#

先看一个常见代码:

  1. public static String Md5Hash(String str)
  2. {
  3. MD5 md = MD5.Create();
  4. byte[] bytes = Encoding.UTF8.GetBytes(str);
  5. byte[] buffer2 = md.ComputeHash(bytes);
  6. string rst = "";
  7. //小写的 x2 是16进制小写。大写 X2 是转16进制大写。
  8. for (int i = 0; i < buffer2.Length; i++)
  9. {
  10. rst = rst + buffer2[i].ToString("x2");
  11. }
  12. return rst;
  13. }

解析:

“MD5 md = MD5.Create();” 获取一个C# MD5对象。

“byte[] bytes = Encoding.UTF8.GetBytes(str);”,将输入字符串用UTF8编码转为byte[] 数组,方便下一步给ComputeHash()方法计算。

“rst = rst &

发表评论

表情:
评论列表 (有 0 条评论,42人围观)

还没有评论,来说两句吧...

相关阅读

    相关 hashing (

    最近翻译一篇文章,发现了对Hashing的概念理解不清楚,特此说明如下: hashing 哈希值也叫做数据摘要,是通过哈希算法把文字处理后得到的数值,但是它比原文占用的