密碼加密MD5和SHA兩種

html:

<body>
    <form id="form1" runat="server">
    <div>
        <asp:TextBox ID="source" runat="server" TextMode="SingleLine"></asp:TextBox>
        <asp:Button ID="Button1" runat="server" Text="MD5加密" onclick="Button1_Click" /><br />
        <asp:Button ID="Button2" runat="server" Text="SHA256加密" onclick="Button2_Click" /><br />
        <asp:Button ID="Button3" runat="server" Text="SHA512加密" onclick="Button3_Click" /><br />
        <asp:label id="md5_1" runat="server"></asp:label><br />
        <asp:label id="md5_2" runat="server"></asp:label><br />        
    </div>
    </form>
</body>

 

cs:

//using須先加入

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

            protected void Button1_Click(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);
                //顯示出來
                md5_1.Text = "MD5普通加密:" + sResult.ToString() + "<br/>";
                //作為密碼方式加密
                string EnPswdStr = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(source.Text.ToString(), "MD5");
                //顯示出來
                md5_2.Text = "MD5密碼加密:" + EnPswdStr + "<br/>";
           }

//其實兩種就是加密,密碼加密能用就是了,不過彷彿不推薦

 

 

protected void Button2_Click(object sender, EventArgs e)
{
//獲取要加密的字段,並轉化為Byte[]數組

byte[] data = System.Text.Encoding.Unicode.GetBytes(source.Text.ToCharArray());

//建立一個SHA256

SHA256 sha256 = new SHA256CryptoServiceProvider();

//進行SHA256加密

byte[] result = sha256.ComputeHash(data);

 //把加密後的字串從Byte[]轉為字串

string enresult = Convert.ToBase64String(result);           

//輸出結果

Response.Write("SHA256加密:  " + enresult);
}

       

 

        protected void Button3_Click(object sender, EventArgs e)
        {

//建立一個SHA512

SHA512 sha512 = new SHA512CryptoServiceProvider();

//進行SHA512加密

string resultSha512 = Convert.ToBase64String(sha512.ComputeHash(Encoding.Default.GetBytes(source.Text)));

//輸出結果

Response.Write("SHA512加密:  " + resultSha512);

        }

//SHA512好像比較厲害

 

參考來源:

1.https://dotblogs.com.tw/mrsunboss/2013/04/07/99955#MD5

2.https://www.gittprogram.com/question/1969180_asp-net-3-5-c-qing-wen-xia-qing-wen-shen-mo-jiao-zuo-md5pu-tong-jia-mi-md5mi-ma-jia-mi-han-cheng-shi-ma.html

若有不妥之處煩請告知

arrow
arrow
    文章標籤
    密碼加密 md5 sha
    全站熱搜
    創作者介紹
    創作者 馬達加斯加 的頭像
    馬達加斯加

    各種事的部落格

    馬達加斯加 發表在 痞客邦 留言(0) 人氣()