生活在数字信息化时代,我们每天接触最多的就是网络,其中包括我们在各大形形色色的网站注册的账户。从而网络安全变得极其重要,毕竟涉及到自身的账户信息安全以及财产安全。那么网站在建设的过程中时如何做到保护信息安全的呢?下面就从网站登录的过程来说明这一点。登录的过程中,对用户输入的密码进行加密,然后与数据库用户密码进行对比,二者匹配成功方可登录网站。这里介绍的加密算法是MD5加密。
以前,我们用MD5加密算法加密一段字符是这样的:
1 string str_1 = FormsAuthentication.HashPasswordForStoringInConfigFile(Input_2, "MD5");
但是现在任然用这一段代码来加密字符串时Visual Studio 2015会给出相关建议:
显示方法时"弃用的",在Visual Studio 2013中则显示"已过时"。主要原因就是该方法并没有想象的那么安全,有些比较大的解密网站可以很快的给出对应的解密密文(此方法是建立在密码设置相对比较简单的情况之上),加密的密文用暴力破解的的方式也可以解密出来。所以便催生了改进版本的MD5加密,在上述加密方法上有了很大的改进。而且代码本身也不是很难理解,加密的大致过程如下:
1 /// <summary> 2 /// 对字符串加密的过程 3 /// </summary> 4 /// <param name="sender"></param> 5 /// <param name="e"></param> 6 protected void SSS(object sender, EventArgs e) 7 { 8 byte[] Input_1 = Encoding.Default.GetBytes(In_str.Value.Trim()); 9 10 MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider(); 11 12 byte[] Output = md5.ComputeHash(Input_1); 13 14 StringBuilder sb = new StringBuilder(); 15 16 for (int i = 0; i <= Output.Length - 1; i++) 17 { 18 sb.Append(Output[i].ToString("x2")); 19 } 20 21 ClientScript.RegisterStartupScript(this.GetType(),"message", "<script>alert('"+ sb + "')</script>"); 22 }
加密只是维护网络安全的冰山一角,但是共同维护网络安全需从点滴做起!