.NET Core MD5加密 32位和16位


public class MD5Help
{
  //此代碼示例通過創建哈希字符串適用於任何 MD5 哈希函數 (在任何平台) 上創建 32 個字符的十六進制格式哈希字符串官網案例改編
  /// <summary>
  ///獲取32位md5加密
  /// </summary>
  /// <param name="source">待解密的字符串</param>
  /// <returns></returns>
  public static string Get32MD5(string source)
  {
    using (MD5 md5Hash = MD5.Create())
    {
      byte[] data = md5Hash.ComputeHash(Encoding.UTF8.GetBytes(source + MD5Key));
      StringBuilder sBuilder = new StringBuilder();
      for (int i = 0; i < data.Length; i++)
      {
      sBuilder.Append(data[i].ToString("x2"));
      }

      string hash = sBuilder.ToString();
      return hash.ToUpper();
    }
  }
  //這樣容易解的密碼變的更難解=無解   
static string MD5Key = "YI0EPm!*Af";   /// <summary>   /// 獲取16位md5加密   /// </summary>   /// <param name="source">待解密的字符串</param>   /// <returns></returns>   public static string Get16MD5(string source)   {     using (MD5 md5Hash = MD5.Create())     {       byte[] data = md5Hash.ComputeHash(Encoding.UTF8.GetBytes(source + MD5Key));       //轉換成字符串,並取9到25位       string sBuilder = BitConverter.ToString(data, 4, 8);       //BitConverter轉換出來的字符串會在每個字符中間產生一個分隔符,需要去除掉       sBuilder = sBuilder.Replace("-", "");       return sBuilder.ToString().ToUpper();     }   } }

 

 

 

原文地址:https://www.cnblogs.com/oorz/p/8878491.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM