木子屋 Dnawo's BLOG

ASP.NET 2.0的MD5加密函数

👤 dnawo 📅 2007-12-25 👁 5687 👍 0 💬 0 🔄 来源:本站原创
ASP.NET 2.0一句话MD5加密方法(字符编码UTF-8):

FormsAuthentication.HashPasswordForStoringInConfigFile("木子屋", "MD5")

若要指定字符编码,则使用下边方法:

public string MD5(string str, Encoding encode)
{
    MD5CryptoServiceProvider provider = new MD5CryptoServiceProvider();
    byte[] data = provider.ComputeHash(encode.GetBytes(str));
    StringBuilder builder = new StringBuilder();
    for (int i = 0; i < data.Length; i++)
    {
        builder.Append(data[i].ToString("x2"));
    }
    return builder.ToString();
}



public string MD5(string str, Encoding encode)
{
    using (MD5 md5Hash = MD5.Create())
    {
        byte[] data = md5Hash.ComputeHash(encode.GetBytes(str));
        StringBuilder builder = new StringBuilder();
        for (int i = 0; i < data.Length; i++)
        {
            builder.Append(data[i].ToString("x2"));
        }
        return builder.ToString();
    }
}

上边加密的结果都是32位字符串,若要改为16位只需从第9位开始截取16个字符即可。

参考资料

[1].MD5CryptoServiceProvider 类:https://msdn.microsoft.com/zh-cn/library/system.security.cryptography.md5cryptoserviceprovider(VS.80).aspx
[2].MD5 类:https://msdn.microsoft.com/zh-cn/library/system.security.cryptography.md5

评论(0)

暂无评论。

计算题
评论需审核通过后显示
← 上一篇 ASP.NET 2.0使用FileUpload控件上传文件示例 下一篇 → ASP.NET 2.0生成图片验证码