MD5只对数据加密是无法解密的,也就是说,你把100加密后,就无法解密得到100这个数字了,
MD5一般用于密码加密而不是数据加密,
比如,你的登录密码是123,加密后得到“we89we8......we9r8e”这个字符串,只把这个加密的字符串存入数据库,下次你用123登录的时候,要把你登录的密码进行MD5加密然后跟数据库那个加密字符串对比,
故,MD5不能对数据加密,否则你得不到数据了,
要实现数据加密,用DES加密//
补充:MD5加密密码,连数据库管理员都无法得知用户的密码,这就是MD5的好处,对于用户忘记密码,可以给用户一个密码保护,即提示问题和回答,用户回答对了可以重置密码,如果连密码保护都忘了,很对不起,你的帐号从此丢失,只能联系管理员删除以前的帐号新建一个新帐号,并且把数据都挪到新帐号上,
如果你的字段够长度的话:UPDATE users SET password = MD5(password)
如果长度不够,可以先增加长度后再做,或者多建一列,完成后删除原来的列!(如passwd)
UPDATE users SET passwd = MD5(password)
你在传入数据库前把密码转换为md5,在注册界面上就转换,不过现在md5也不保密,在百度上一查就能反译出来,所以一般转换为md5后再把其中的一些数字或字母替换为别的字母,这样即使别人进入数据库里也不能把加密又替换后的密文改换为明文了,这种规则只要你自己知道就行欢迎分享,转载请注明来源:内存溢出
评论列表(0条)