MD5 密码加密

ASP.net中md5加密码的方法
<%@ Page Language="C#" ContentType="text/html"%>
<%@ Import Namespace="System"%>
<script language="C#" runat="server">
void Page_Load(Object sender,EventArgs e){
//获取要加密的字段,并转化为Byte[]数组
byte[] data=System.Text.Encoding.Unicode.GetBytes(source.Text.ToCharArray());
//建立加密服务
System.Security.Cryptography.MD5 md5 = new System.Security.Cryptography.MD5CryptoServiceProvider();
//加密Byte[]数组
byte[] result= md5.ComputeHash(data);
//将加密后的数组转化为字段
string sResult=System.Text.Encoding.Unicode.GetString(result);
//显示出来
sha1_1.Text="MD5普通加密:"+sResult.ToString()+"<br/>";
//作为密码方式加密
string EnPswdStr=System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(source.Text.ToString(),"MD5");
//显示出来
sha1_2.Text="MD5密码加密:"+EnPswdStr+"<br/>";
}
</script>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>测试</title>
</head>
<body>
<h3>SHA1加密</h3>
<form runat="server">
<asp:label id="sha1_1" runat="server"></asp:label>
<asp:label id="sha1_2" runat="server"></asp:label>
<asp:textbox ID="source" runat="server" TextMode="SingleLine" Text="test" AutoPostBack="true" />
(回车)
</form>
</body>
</html>

 

 


ASP.NET中实现对密码的加密

方法一:

public static string Encrypt(string Password, int Format)
    {
        string str = "";
        switch (Format)
        {
            case 0:
                str = FormsAuthentication.HashPasswordForStoringInConfigFile(Password, "SHA1");
                break;
            case 1:
                str = FormsAuthentication.HashPasswordForStoringInConfigFile(Password, "MD5");
                break;
        }
        return str;
    }


方法二:

using System;  
using System.Security.Cryptography;  
using System.IO;  
using System.Text; 

//再编写函数如下,效果和(方法一)一样

public string MD5(Stream stream)
    {
        const string HEX_TABLE = "0123456789ABCDEF";
        MD5 md5 = new MD5CryptoServiceProvider();
        //Calculate   MD5   Checksum  
        byte[] data = md5.ComputeHash(stream);
        //convert   to   string  
        StringBuilder sb = new StringBuilder();
        sb.Length = data.Length * 2;
        for (int i = 0; i < data.Length; i++)
        {
            sb[i * 2] = HEX_TABLE[data[i] >> 4];
            sb[i * 2 + 1] = HEX_TABLE[data[i] & 0xF];
        }
        return sb.ToString();
    }

    public string MD5(string s)
    {
        byte[] data = ASCIIEncoding.ASCII.GetBytes(s);
        MemoryStream stream = new MemoryStream(data);
        //stream.Write(data,0,data.Length);  
        return MD5(stream);
    }

 

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值