.net中的md5加密

来源:互联网 发布:字数统计软件 编辑:程序博客网 时间:2024/05/17 05:54

    无论什么时候只要我们使用数据库开发网站,我们就必须保护用户资料,这非常必要。
   黑客可以盗窃口令,个人隐私遭到严重的破坏。最好的方法就是不储存原始密码,而是加密后再放到数据库中。
   当我们想验证用户时,我们只需将用户输入的口令再次加密与数据库中的记录进行比较即可。
   在asp中我们需要额外的对象加密。
   但在asp.net中  SDK可以通过system.web.security  namespace中的CookieAuthentication类的HashPasswordForStoringInConfigFile方法来解决问题。
   这样做的目的是加密配置文件的口令,甚至cookies. HashPasswordForStoringInConfigFile方法非常容易使用,并且,它支持“SHA1”和“MD5”散列算法。
为了清楚“HashPasswordForStoringInConfigFile”方法,让我们制作一个小的ASP.NET页,把输入串在SHA1和MD5格式中译成密码。

    <%@  Import  Namespace="System.Web.Security"  %> <html> <head> <script  language="VB"  runat=server> Sub  encryptString(Src  As  Object,  E  As  EventArgs)
    SHA1.Text  =  CookieAuthentication.HashPasswordForStoringInConfigFile(txtPassword.Text,  "SHA1")
    MD5.Text  =  CookieAuthentication.HashPasswordForStoringInConfigFile(txtPassword.Text,  "MD5")
    End  Sub </script> </head> <body>
    <form  runat=server>
    <p><b>Original  Clear  Text  Password:  </b><br> <asp:Textbox  id="txtPassword"  runat=server  /> <asp:Button  runat="server"  text="Encrypt  String"  onClick="encryptString"  /></p>
    <p><b>Encrypted  Password  In  SHA1:  </b> <asp:label  id="SHA1"  runat=server  /></p>
    <p><b>Encrypted  Password  In  MD5:  </b> <asp:label  id="MD5"  runat=server  /></p>
    </form>
    </body>
    </html>
    怎么样加密一串字符串是很容易的事,为了使它更容易使用我制作了一个函数。下面我就给出函数的源代码。
    Function  EncryptPassword  (PasswordString  as  String,  PasswordFormat  as  String)  as  String
         If  PasswordFormat  =  "SHA1"  then
            EncryptPassword  =  CookieAuthentication.HashPasswordForStoringInConfigFile(PasswordString,  "SHA1")
         Elseif 
             PasswordFormat  =  "MD5"  then
             EncryptPassword=  CookieAuthentication.HashPasswordForStoringInConfigFile(PasswordString,  "MD5")
          Else
         EncryptPassword  =  ""
      End  if
   End  Function

以下是c#版本

        public string EncryptPassword(string password,string passwordformate)
        
{
            
string encryptpassword;
            
if(passwordformate=="SHA1")
                encryptpassword  
=  FormsAuthentication.HashPasswordForStoringInConfigFile(password, "SHA1");
            
else if (passwordformate=="md5")
                encryptpassword 
= FormsAuthentication.HashPasswordForStoringInConfigFile(password, "md5");
            
else 
                encryptpassword
="";    
            
return encryptpassword;
        }


原创粉丝点击