转载处:https://blog.csdn.net/lg2179/article/details/52535965
<https://blog.csdn.net/lg2179/article/details/52535965>      


md5是一种不可逆的加密,一定记住是不可逆的。虽然现在很多算法也可以将md5解密出来但是md5还是具有很大程度上的不可逆,而且加大解密难道使用双重加密,很多登录的地方用到md5加密,那么有些人会问我用md5加密了服务器怎么解密呢,你要是这么想就错了。登录时输入用户的密码这个密码被md5加密后在服务器也存的是这个md5的字符格式,也就是说服务器的数据库存的就是这个格式的字符串,所以服务器那边为什么要解密呢,只要比较你客户端发送的md5字符串和它数据库字符串进行比较就行了,而且现在APP运营商也很多都不敢保存用户的明文密码这是对用户信息的不负责。所以在这里一定记住md5加密是不可逆的。很多网上的解密也只是简单的解密,比如你解密得到9,你知道是1+8=9还是2+7=9还是3+6=9呢,想解密也就不用md5了,现在md5也只是用于数据库存储数据。

      还有一种就是可以解密的加密算法,一般分为两种,一种是可以对称的加密算法,现在大多用的是AES和DES等,因为不管服务端还是客户端都用的是一个相同的密钥所以可以说是对称加密,比如客户端用这个密钥给一段文字加密服务端收到这段字符串后会用同样的密钥进行解密;另外一种非对称加密用的多的就是RSA,这个加密之所以叫非对称是因为客户端和服务器用的不是同样的密钥分为公钥和秘钥。打个比方,甲方生成了一对密钥然后把公钥公开提供给乙方也可以是乙1,乙2,乙3...,然后乙方拿着公钥进行加密,甲方拿着秘钥进行解密,如果记得不错的话支付宝接入就是用的RSA.所以RSA还是用的很普及的,比较适合于一些平台的加密。

 


--------------------- 
作者:lg2179 
来源:CSDN 
原文:https://blog.csdn.net/lg2179/article/details/52535965 
版权声明:本文为博主原创文章,转载请附上博文链接!