11月13日总结

前言

在我们日常开发工作中,为了数据安全问题对数据加密、解密是必不可少的。加密方式有很多种如常见的AES,RSA,MD5,SAH1,SAH256,DES等,这时候假如我们有一个封装的对应加密解密工具类可以直接调用,那这样可以节省不少的开发时间。今天推荐一款实用的.NET Core加密解密工具类库:NETCore.Encrypt。
项目介绍

NETCore.Encrypt是.NET Core加密解密工具类库,包括AES、RSA、MD5、SHA1、DES、SHA256、SHA384、SHA512等更多功能。
项目源码

MD5加密
封装方法

    #region MD5
    /// <summary>
    /// MD5 hash
    /// </summary>
    /// <param name="srcString">The string to be encrypted.</param>
    /// <param name="length">The length of hash result , default value is <see cref="MD5Length.L32"/>.</param>
    /// <returns></returns>
    public static string Md5(string srcString, MD5Length length = MD5Length.L32)
    {
        Check.Argument.IsNotEmpty(srcString, nameof(srcString));

        string str_md5_out = string.Empty;
        using (MD5 md5 = MD5.Create())
        {
            byte[] bytes_md5_in = Encoding.UTF8.GetBytes(srcString);
            byte[] bytes_md5_out = md5.ComputeHash(bytes_md5_in);

            str_md5_out = length == MD5Length.L32
                ? BitConverter.ToString(bytes_md5_out)
                : BitConverter.ToString(bytes_md5_out, 4, 8);

            str_md5_out = str_md5_out.Replace("-", "");
            return str_md5_out;
        }
    }
    #endregion

调用结果

posted @ 2023-11-20 08:08  lmyyyy  阅读(6)  评论(0)    收藏  举报