上篇博文已經對驗證碼做了瞭解並實現,驗證碼可以防止惡意破解密碼,但是密碼也需要增強自身的防禦功能,所以在做登陸界面的時候用了MD5(又譯摘要算法、哈希算法)進行加密,以期能夠保證用戶的數據安全。
U層:
導入命名空間:using System.Web.Security;
//把密碼轉爲MD5碼的形式
pwd = FormsAuthentication.HashPasswordForStoringInConfigFile(pwd, "MD5");
B層:
public class LoginManager
{
/// <summary>
/// 用戶是否登陸成功
/// </summary>
/// <param name="name">用戶名</param>
/// <param name="pwd">密碼</param>
/// <returns></returns>
public static bool Login(string name, string pwd)
{
bool flag = false;
if (("admin" == name) && ("E10ADC3949BA59ABBE56E057F20F883E" == pwd))
{
flag = true;
}
return flag;
}
當然,這只能保證密碼不是以明碼的方式出現在程序代碼裏,只能是在一定程度上增加了安全性。
對於密碼學知之甚少,記得前兩年在看民國史的時候,對於書中的池步洲先生印象尤爲深刻,那時是抗日戰爭的階段,如果破譯了日本密電碼,就等於在前方增加了十幾萬大軍,那時被池步洲先生的鑽研精神、大膽的假設精神以及做出的成果感到吃驚。