MD5加密帮助类

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_32157579/article/details/102461943
public class MD5Helper
{
    /// <summary>
    /// MD5加密
    /// </summary>
    /// <param name="input">需要加密的字符串</param>
    /// <returns></returns>
    public static string MD5Encrypt(string input)
    {
        return MD5Encrypt(input, new UTF8Encoding());
    }

    /// <summary>
    /// md5加密16|32位
    /// </summary>
    /// <param name="input"></param>
    /// <param name="length"></param>
    /// <returns></returns>
    public static string MD5Encrypt(string input, int length)
    {
        string res = MD5Encrypt(input, new UTF8Encoding());
        if (length == 16)
        {
            res = res.Substring(8, 16);
        }
        return res;
    }

    /// <summary>
    /// MD5加密
    /// </summary>
    /// <param name="input">需要加密的字符串</param>
    /// <param name="encode">字符的编码</param>
    /// <returns></returns>
    public static string MD5Encrypt(string input, Encoding encode)
    {
        if (string.IsNullOrEmpty(input))
        {
            return null;
        }
        StringBuilder sBuilder = new StringBuilder();
        using (MD5CryptoServiceProvider md5Hasher = new MD5CryptoServiceProvider())
        {
            byte[] data = md5Hasher.ComputeHash(encode.GetBytes(input));
            for (int i = 0; i < data.Length; i++)
            {
                sBuilder.Append(data[i].ToString("x2"));
            }
        }
        return sBuilder.ToString();
    }
}

猜你喜欢

转载自blog.csdn.net/qq_32157579/article/details/102461943