苏飞论坛

标题: Java和C#的Hash算法 [打印本页]

作者: 站长苏飞    时间: 2016-9-8 10:25
标题: Java和C#的Hash算法
由于Hash算法返回的是byte数组,为了显示数据,将byte数组转换成Base64字符串。
Java中使用Hash算法:

[C#] 纯文本查看 复制代码


import java.security.*;

public static String HashBase64(String str)
{
  String ret="";
  try {
    //Hash算法
   MessageDigest sha = MessageDigest.getInstance("SHA-1");
   sha.update(str.getBytes());  
   ret=new sun.misc.BASE64Encoder().encode(sha.digest());
}
catch (Exception e) {
   System.out.print(e.getMessage());
}
  return ret;
}

C#使用Hash算法:
[C#] 纯文本查看 复制代码

using System.Security.Cryptography;

public static string HashBase64(string str)
{   
  byte[] result = new byte[str.Length];
  try  
  {
    SHA1 sha = new SHA1CryptoServiceProvider();
    result = sha.ComputeHash(System.Text.Encoding.UTF8.GetBytes(str));
    return Convert.ToBase64String(result);
  }
  catch
  {
    return "";
  }   
}






欢迎光临 苏飞论坛 (http://www.sufeinet.com/) Powered by Discuz! X3.4