使用ASP.NET加密口令 (轉)

worldblog發表於2008-06-17
使用ASP.NET加密口令 (轉)[@more@]

使用口令:namespace prefix = o ns = "urn:schemas--com::office" />

當我們在網站上建立時,保護的資訊是非常必要的。多數使用者不願意讓別人知道自己的資訊,同時網管也不想因為安全問題而丟失網站的信譽。無論對於誰,安全問題都是非常重要的。

  為了解決這個問題,我給大家提供一個簡單實用,但是老套的方法,就是口令加密。在此我們使用技術對口令加密。簡單的講,就是將使用者提供的口令加密之後,然後讓它和存放於中的資料比較,如果相同,則透過驗證。

  在ASP中,並未提供加密的,我們只能使用外部的物件來進行加密。現在好了,在ASP.NET中提供了加密的解決方法。在名字空間System..Security中包含了類FormsAuthentication,其中有一個方法HashPassForStoringInConfigFile。這個方法可以將使用者提供的字元變成亂碼,然後起來,甚至可以儲存在中。

  HashPasswordForStoringInConfigFile方法使用起來很簡單,它支援"SHA1"和"MD5"加密演算法。

  下面的程式碼簡單的演示了關於其用法:

" %>

Original Clear Text Password:


Encrypted Password In SHA1:

Encrypted Password In MD5:

正如你所看到的這樣簡單易用。我們可以把這段加密封裝在一個裡便於重複的使用。程式碼如下:

public string EncryptPassword(string PasswordString,string PasswordFormat )

{

if (PasswordFormat="SHA1"){

EncryptPassword=FormsAuthortication.HashPasswordForStoringInConfigFile(PasswordString ,"SHA1");

}

elseif (PasswordFormat="MD5")

{ EncryptPassword=FormsAuthortication.HashPasswordForStoringInConfigFile(PasswordString ,"MD5");

}

else

{

EncryptPassword="";

}

我們可以在資料庫中新增一個欄位,使用insert將加密的口令作為一個string存入資料庫中。當使用者登陸的時候,就可以將使用者輸入的口令加密結果和資料庫中的正確結果比較,透過這種辦法來驗證口令的正確性了。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-1005750/,如需轉載,請註明出處,否則將追究法律責任。

相關文章