您的位置:首页 > 其它

MD5加密的一些记录

2016-06-12 10:37 302 查看
MD5加密是通常使用的加密方式,MD5加密其实很简单,传过去参数,然后就返回了一串加密过后的md5字符串.

刚开始的时候通常简单加密方式就是传入密码->通过MD5加密->返回字符串->存入数据库.就完成了;

这样的加密或许过于简单,我见过的加密有传入用户名和密码->通过md5加密->截取用户名密码加密过后的部分字符串在组成新的字符串,然后返回新的字符串才进行保存的.

看代码:

///<summary>MD5加密字符串

        /// 

        /// </summary>

        /// <param name="str">原字符串</param>

        /// <returns></returns>

        public static string Md5(string str)

        {

            return FormsAuthentication.HashPasswordForStoringInConfigFile(str, "MD5");;

        }

        ///<summary>MD5偏移加密字符串

        /// 

        /// </summary>

        /// <param name="str">原字符串</param>

        /// 

        /// <returns></returns>

        public static string Md5(string password, string username)

        {

            string md51 = Md5(FormsAuthentication.HashPasswordForStoringInConfigFile(password, "MD5"));

            string md52 = FormsAuthentication.HashPasswordForStoringInConfigFile(username, "MD5");

            string test = md51.Substring(0, 16);

            return md51.Substring(0, 16) + md52.Substring(0, 8) + md51.Substring(16, 16) + md52.Substring(24, 8);

        }

这样的加密方式增加了密码猜测解密的难度,这个加密后的字符串我查了好久也没有对应的字符,通常如果简单的密码通过md5直接加密的方法存入数据库,通过数据库字符去查询都能猜测到密码,可是这个用了六个1的密码通过数据库字符串我查了好久都没有查到,可见保密性提高了不少.通过这样的思想,可以引申出好多方式,学习了...
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  加密 md5 密码