(C# ASP.NET)MD5加密算法

調用.net的對象那個,沒什麼難的,主要是實用。我給做成了個類,順便複製了遍改了下變成SHA1的……


using System.Web.Security;

/// <summary>
///對字符串使用哈希算法(MD5或SHA1)進行加密。
/// </summary>
public class encrypt
{
	/// <summary>
	/// 構造函數
	/// </summary>
    public encrypt()
	{

	}


    /// <summary>
    /// MD5算法,注意這是一種不可逆的加密算法。
    /// </summary>
    /// <param name="str">要進行哈希運算的密碼。</param>
    /// <param name="code">指定長度,只接受16和32這兩個值。</param>
    /// <returns>經過哈希運算的MD5密碼。</returns>
    public string MD5(string str, int code)
    {
        if (str == "") return "";
        
        if (code == 16) //16位MD5加密(取32位加密的9~25字符) 
        {
            return FormsAuthentication.HashPasswordForStoringInConfigFile(str, "MD5").ToUpper().Substring(8, 16);
        }

        if (code == 32) //32位加密 
        {
            return FormsAuthentication.HashPasswordForStoringInConfigFile(str, "MD5").ToUpper();
        }

        return "";
    }

    /// <summary>
    /// SHA1算法,注意這是一種不可逆的加密算法。
    /// </summary>
    /// <param name="str">要進行哈希運算的密碼。</param>
    /// <param name="code">指定長度,只接受16和32這兩個值。</param>
    /// <returns>經過哈希運算的SHA1密碼。</returns>
    public string SHA1(string str, int code)
    {
        if (str == "") return "";

        if (code == 16) //16位MD5加密(取32位加密的9~25字符) 
        {
            return FormsAuthentication.HashPasswordForStoringInConfigFile(str, "SHA1").ToUpper().Substring(8, 16);
        }

        if (code == 32) //32位加密 
        {
            return FormsAuthentication.HashPasswordForStoringInConfigFile(str, "SHA1").ToUpper();
        }

        return "";
    }



}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章