• MD5加密汇总


     1   #region MD5
     2         /// <summary>
     3         /// 16位MD5加密
     4         /// </summary>
     5         /// <param name="password"></param>
     6         /// <returns></returns>
     7         public static string MD5Encrypt16(string strByMd5)
     8         {
     9             var md5 = new MD5CryptoServiceProvider();
    10             string t2 = BitConverter.ToString(md5.ComputeHash(Encoding.Default.GetBytes(strByMd5)), 4, 8);
    11             t2 = t2.Replace("-", "");
    12             return t2;
    13         }
    14 
    15         /// <summary>
    16         /// 32位MD5加密
    17         /// </summary>
    18         /// <param name="password"></param>
    19         /// <returns></returns>
    20         public static string MD5Encrypt32(string strByMd5)
    21         {
    22             string cl = strByMd5;
    23             string pwd = "";
    24             MD5 md5 = MD5.Create(); //实例化一个md5对像
    25             // 加密后是一个字节类型的数组,这里要注意编码UTF8/Unicode等的选择 
    26             byte[] s = md5.ComputeHash(Encoding.UTF8.GetBytes(cl));
    27             // 通过使用循环,将字节类型的数组转换为字符串,此字符串是常规字符格式化所得
    28             for (int i = 0; i < s.Length; i++)
    29             {
    30                 // 将得到的字符串使用十六进制类型格式。格式后的字符是小写的字母,如果使用大写(X)则格式后的字符是大写字符 
    31                 pwd = pwd + s[i].ToString("X");
    32             }
    33             return pwd;
    34         }
    35 
    36         public static string MD5Encrypt64(string strByMd5)
    37         {
    38             string cl = strByMd5;
    39             //string pwd = "";
    40             MD5 md5 = MD5.Create(); //实例化一个md5对像
    41             // 加密后是一个字节类型的数组,这里要注意编码UTF8/Unicode等的选择 
    42             byte[] s = md5.ComputeHash(Encoding.UTF8.GetBytes(cl));
    43             return Convert.ToBase64String(s);
    44         }
    45         #endregion
    46 
    47         #region 对文件进行MD5处理
    48         /// <summary>
    49         /// 对文件流进行MD5加密
    50         /// </summary>
    51         public static string MD5Stream(Stream stream)
    52         {
    53             MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
    54             md5.ComputeHash(stream);
    55             byte[] b = md5.Hash;
    56             md5.Clear();
    57             StringBuilder sb = new StringBuilder(32);
    58             for (int i = 0; i < b.Length; i++)
    59             {
    60                 sb.Append(b[i].ToString("X2"));
    61             }
    62             return sb.ToString();
    63         }
    64 
    65         /// <summary>
    66         /// 对文件进行MD5加密
    67         /// </summary>
    68         public static string MD5Stream(string filePath)
    69         {
    70             using (FileStream stream = File.Open(filePath, FileMode.Open))
    71             {
    72                 return MD5Stream(stream);
    73             }
    74         }
    75 
    76         #endregion
    77 
    78    /// <summary>
    79         /// 获取MD5值(对字节数组进行MD5)
    80         /// </summary>
    81         /// <param name="fileBytes"></param>
    82         /// <returns></returns>
    83         public static string GetMd5(byte[] fileBytes)
    84         {
    85             var MD5 = System.Security.Cryptography.MD5.Create().ComputeHash(fileBytes);
    86             //将md5byte[]数组转换为字符串
    87             var str_md5 = Convert.ToBase64String(MD5);
    88             return str_md5;
    89         }
  • 相关阅读:
    [k8s] minikube的使用与应用部署
    [docker]docker 安装及构建流程
    [npm] error Cannot read properties of null (reading 'pickAlgorithm')
    SpringWebflux中WebClient怎么打印日志
    ERROR: cannot verify xxx certificate, issued by ‘/C=US/O=Let’s Encrypt/CN=R3’:use `nocheckcertif`
    如何解压 rpm 文件
    error while loading shared libraries: libmpfr.so.6: cannot open shared object file
    安装`gmp`遇到 configure:error:no usable m4 in$path or /user/5bin解决方案
    gcc升级
    264. 丑数 II (JAVA)
  • 原文地址:https://www.cnblogs.com/mengzhixingping/p/11004320.html
Copyright © 2020-2023  润新知