数据库中密码经过MD5加密后,如何把用户加密前的密码与数据库中加密后的密码做比较,来让用户正确登录呢?

本文介绍了一种利用MD5加密实现用户密码安全存储的方法,并详细解释了如何在用户登录时,将输入的明文密码通过相同的加密算法处理,再与数据库中存储的加密密码进行对比以完成身份验证。
    把数据导入到数据库中,并使用SQLserver内置函数把密码加密后,那么我的登录功能就要修改,用户输入的肯定是加密前的密码,那么如何把用户加密前的密码与数据库中加密后的密码做比较,来让用户正确登录呢?大家可以想一想
   *我说下我的解决方案(由于同一个字符串只有一个MD5加密结果,由于MD5是单向加密型也就是只能加密不能解密【网上的在线解密是在一个库里事先存好了的对应关系,一旦一个复杂的字符串加密后就无法解密了因为库里没存】),所以我们就可以来比对加密后的一致性,那么这个时候我要通过C#代码来加密用户输入的密码,来和数据库比对,一致则登录成功。
   C#代码:
            需要引入:using System.Security.Cryptography;

            写入方法使用即可:

		 public string GetStrMd5(string ConvertString)
		        {
		            MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
		            string t2 = BitConverter.ToString(md5.ComputeHash(UTF8Encoding.Default.GetBytes(ConvertString)));
		            t2 = t2.Replace("-", "");
		            return t2;
		        }

                           

                                                          感谢您的阅读~❀

    
评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值