登入密码加密 看源代码知道他的加密写法 如何写出解密写法呢
虽然md5没有所谓的解密算法,但是按照你的源代码看,朴素的md5算法,相同的明文可以得到相应的md5值。
这就是说,比如你知道一个密码8888,它对应的md5是多少(比如假设是cf79ae6addba60ad018347359bd144d2),你可以强行改表中的记录,那么改好以后,不管原来的密码是多少,都可以用8888这个密码登录。
你也可以用穷举的方式来破解密码,也就是穷举一个排列组合或者用一个密码字典来尝试试探,用md5算法算出密文,和你的密文比对,对上了就可以知道原文了。不过对于密码长度比较长的密码,就不怎么可行了。
md5是摘要算法,不是加密算法,md5是不可逆的,也就不存在什么解密了。
digest字面意思就是“摘要”,byte2hex就是把字节转换成16进制,就算你不会编程,起码字面意思也看得懂吧。
MD5不是加密算法,而是生成指定字符串的摘要。我们在信息系统同用MD5算法来进行密码校验的原理是这样的:将密码用MD5算法生成的摘要信息存入数据库;登录是再根据用户输入的密码再生成MD5摘要信息,跟数据库存储的值对比,相等说明密码正确。
此外,MD5是不可逆的,就是不存在你说的解密过程的。
http://blog.csdn.net/xuanjiewu/article/details/52101896 关于加密解密的
你想要解密的话,你必须知道加密规则才能解密,不是说你要解密就能解密的
Java提供了两种加密算法:
1、MD5算法,这种算法不可逆,例如用户的密码一般都是MD5加密后保存的。
2、AES加密,这种支持加密解密,是可逆的,你可以看看,应该符合你的要求。
MD5是不能解密的,为什么需要解密呢