您的位置:首页 > 其它

MD5 密码加密

2010-02-25 09:03 239 查看
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);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: