復(fù)制代碼 代碼如下:
System.Security.Cryptography.MD5
System.Security.Cryptography.MD5CryptoServiceProvider()
System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(strSource, "MD5")
復(fù)制代碼 代碼如下:
System.Security.Cryptography.SHA1
System.Security.Cryptography.SHA1CryptoServiceProvider()
System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(strSource, "SHA1")
復(fù)制代碼 代碼如下:
/**//// <summary>
/// 方法一:通過使用 new 運算符創(chuàng)建對象
/// </summary>
/// <param>需要加密的明文</param>
/// <returns>返回16位加密結(jié)果,該結(jié)果取32位加密結(jié)果的第9位到25位</returns>
public string Get_MD5_Method1(string strSource)
{
//new
System.Security.Cryptography.MD5 md5 = new System.Security.Cryptography.MD5CryptoServiceProvider();
//獲取密文字節(jié)數(shù)組
byte[] bytResult = md5.ComputeHash(System.Text.Encoding.Default.GetBytes(strSource));
//轉(zhuǎn)換成字符串,并取9到25位
string strResult = BitConverter.ToString(bytResult, 4, 8);
//轉(zhuǎn)換成字符串,32位
//string strResult = BitConverter.ToString(bytResult);
//BitConverter轉(zhuǎn)換出來的字符串會在每個字符中間產(chǎn)生一個分隔符,需要去除掉
strResult = strResult.Replace("-", "");
return strResult;
}
/**//// <summary>
/// 方法二:通過調(diào)用特定加密算法的抽象類上的 Create 方法,創(chuàng)建實現(xiàn)特定加密算法的對象。
/// </summary>
/// <param>需要加密的明文</param>
/// <returns>返回32位加密結(jié)果</returns>
public string Get_MD5_Method2(string strSource)
{
string strResult = "";
//Create
System.Security.Cryptography.MD5 md5 = System.Security.Cryptography.MD5.Create();
//注意編碼UTF8、UTF7、Unicode等的選擇
byte[] bytResult = md5.ComputeHash(System.Text.Encoding.UTF8.GetBytes(strSource));
//字節(jié)類型的數(shù)組轉(zhuǎn)換為字符串
for (int i = 0; i < bytResult.Length; i++)
{
//16進制轉(zhuǎn)換
strResult = strResult + bytResult[i].ToString("X");
}
return strResult;
}
/**//// <summary>
/// 方法三:直接使用HashPasswordForStoringInConfigFile生成
/// </summary>
/// <param>需要加密的明文</param>
/// <returns>返回32位加密結(jié)果</returns>
public string Get_MD5_Method3(string strSource)
{
return System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(strSource, "MD5");
}
新聞熱點
疑難解答
圖片精選