久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長(zhǎng)資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      ASP.NET數(shù)據(jù)庫(kù)密碼:MD5加密算法詳解

      在做軟件開(kāi)發(fā)的過(guò)程中,必然會(huì)涉及到用戶(hù)密碼等關(guān)鍵信息的存儲(chǔ)。在大多數(shù)的情況下,用戶(hù)的密碼是存儲(chǔ)在數(shù)據(jù)庫(kù)中的。如果不加任何保密措施,直接以明文形式保存的話(huà),很容易造成用戶(hù)個(gè)人信息的泄露,給企業(yè)和用戶(hù)帶來(lái)無(wú)法預(yù)估的損失。

      目前,常用的密碼加密存儲(chǔ)算法有很多種,比如:MD5、3DES、AES、SHA1等。

      今天我們主要來(lái)介紹一下MD5加密算法。

      ASP.NET數(shù)據(jù)庫(kù)密碼:MD5加密算法詳解

      什么是MD5算法

      MD5是一種用于產(chǎn)生數(shù)字簽名的單項(xiàng)散列算法,它以512位分組來(lái)處理輸入的信息,且每一分組又被劃分為16個(gè)32位子分組,經(jīng)過(guò)一系列處理,算法的輸出由4個(gè)32位分組級(jí)聯(lián)后生成一個(gè)128位散列值。

      使用ASP.NET把密碼字段值進(jìn)行加密,代碼如下:

      using System.Security.Cryptograhoy;//引入MD5加密命名空間 public string GetMD5(string strPwd) {     //將要加密的字符串加上前綴與后綴后再加密     string cl = DateTime.Now.Month + strPwd + DateTime.Now.Day;     string pwd = "";     //實(shí)例化一個(gè)MD5對(duì)象     MD5 md5 = MD5.Create();     //加密后是一個(gè)字節(jié)類(lèi)型的數(shù)組,要注意編碼UTF8/Unicode等的選擇     byte[] s = md5.ComputeHash(Encoding.UTF8.GetBytes(cl));     //翻轉(zhuǎn)生成的MD5碼     s.Reverse();     //通過(guò)循環(huán),將字節(jié)類(lèi)型的數(shù)組轉(zhuǎn)換為字符串     //只取MD5碼的一部分,這樣惡意訪問(wèn)者無(wú)法知道取的是哪幾位     for(int i = 3;i < s.Length-1; i++)     {         //將得到的字符串使用十六進(jìn)制類(lèi)型格式化。格式化后的字符是小寫(xiě)的字母,如果使用大寫(xiě)(X),則格式化后的字符是大寫(xiě)字母         //進(jìn)一步對(duì)生成的MD5碼做一些改造         pwd = pwd + (s[i] < 198 ? s[i] + 28 : s[i]).ToString("X");     }     return pwd; }

      注意

      如果單純使用MD5算法生成的散列值,是可以被破解的。所以我們?cè)趯?shí)際開(kāi)發(fā)過(guò)程中,需要使用MD5算法,結(jié)合加鹽算法來(lái)生成無(wú)法破解的加密字符串。

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)