MD5加密!!!!如何再将数据库中‘密文’还原成‘原文’显示在页面上
比如:aaa
经过MD5加密后得: 4f589f4867dbd57e
将密文存在数据库中,
如何再将数据库中密文还原成aaa显示在页面上》?
------解决方案--------------------md5,不是双向的
------解决方案--------------------不能解密,你要用的话,例如登录 可以在转换成MD5,然后和数据库里加密后的数据比较就行了
------解决方案--------------------没法解,不过据说我们中国的一个团队已经破解了MD5加密,公开的话安全隐患太大。。
一般都是加密和加密的比较。
------解决方案--------------------楼主,建议去补习一下密码学相关的知识,给你一个题纲吧:
1:消息摘要
2:对称加密
3:非对称加密
4:消息认证码
5:数字签名
6:块(分组)加密、流加密
------解决方案--------------------不用解密呀,直接把自己输入的和数据库中的比较就可以啦,MD5不可解吧,除非清华大学的王小云可以的
------解决方案--------------------摘要算法岂是加密算法?!
------解决方案--------------------还原是不可能的了。
记得前辈说用比较暴力的还原方法,就是类似的数据字典形式的。也就是把各种数字以及字母的组合进行MD5加密后存到数据库里面,然后对这些加密后的摘要进行扫描遍历。如果匹配某种字符组合就取出来。
也就是楼主的aaa为 经过MD5加密后得: 4f589f4867dbd57e
如果我只知道 4f589f4867dbd57e:那么在数据库有一张表就是刚才说的存储MD5加密后的信息以及原来的字符组合的信息的表 其中有2个字段,第一个是原有字段,第二个是MD5后的字段,前后是匹配的。
唯一的难的就是需要大量的数据字典。理论是这样,实际上。
唉 难以实现
------解决方案--------------------不能还原的,要是可以还原还用md5加密做什么,那你存在数据库中的密码不被别人全知道了。
------解决方案--------------------楼主的是什么项目,姓名之类的直接存原文就行了。没必要用MD5然后存进去。
非要加密的话。可以专门写个加密算法,然后在弄个解密的密钥。
------解决方案--------------------
------解决方案--------------------不可逆,要是能逆的话,很多网站的账户信息就能抓过来了
------解决方案--------------------MD5得到的是摘要,不管你原文是什么,得到的都是16个byte的结果,理论上,相同的MD5运算结果可能对应不同的原文的
要能还原成密文的话,建议选择AES(对称)或RSA(非对称),一般情况下足够满足要求了
------解决方案--------------------你把页面获得的数据再调用一遍MD5算法,把结果和数据库查到的对比一下,一样的话,那就是相等的,没必要解密成原文
------解决方案--------------------如果你非要还原的话,就别用MD5算法了,换个算法
------解决方案--------------------表示如果你不是要比较密码而是加密其他数据的话!建议使用其他的加密方法 !
------解决方案--------------------md5还不能解密
------解决方案--------------------MD5对于一般人来说都是单向的