1.把用户注册的密码MD5加密后insert到数据库
写个例子2.怎么比较用户输入的密码是否正确
写个列子
谢谢

解决方案 »

  1.   

            public static string EncryptNum(string pwd)
            {
                StringBuilder build = new StringBuilder();
                MD5 md5 = MD5.Create();
                byte[] pwdByte = md5.ComputeHash(Encoding.ASCII.GetBytes(pwd));            for (int i = 0; i < pwdByte.Length; i++)
                {
                    build.Append(pwdByte[i].ToString("X2"));
                }
                return build.ToString();
            }这是我写的一个方法,你可以参考一下!!比较用户密码要加密后再跟数据库里的比较
      

  2.   

    直接给出代码        /// <summary>
            /// MD5 加密字符串
            /// </summary>
            /// <param name="pTocrypt">字符串</param>
            /// <param name="code">位数</param>
            /// <returns></returns>
            public static string md5(string pTocrypt, int code)
            {
                if (code == 16)
                {
                    MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
                    String pwd = BitConverter.ToString(md5.ComputeHash(UTF8Encoding.Default.GetBytes(pTocrypt)), 4, 8);
                    pwd = pwd.Replace("-", "").ToLower();
                    return pwd;
                }
                else
                    if (code == 32)
                    {
                        string pwd = "";
                        MD5 md5 = MD5.Create();
                        byte[] s = md5.ComputeHash(System.Text.Encoding.UTF8.GetBytes(pTocrypt));
                        for (int i = 0; i < s.Length; i++)
                        {
                            pwd = pwd + s[i].ToString("x").PadLeft(2, '0');
                        }
                        return pwd;
                    }
                    else
                        return "0000000000000000";
            }注册:
         
         string _password = md5(txtPassword.text,32);
         
    比较:
         
         if(userEntity.Password == md5(txtPassword.text,32))
          通过验证;