为什么md5是不可逆的?加盐的目的是什么? |
您所在的位置:网站首页 › 果汁加盐巴的好处是什么呢 › 为什么md5是不可逆的?加盐的目的是什么? |
但我们要保存用户名密码的时候,显然明文保存是不太可取的,万一你的数据库的账号密码都被泄露了,那那些在你数据库中的密码不是都没泄露出去了吗? 所以我们要对密码进行加密。 其中md5加密是不可逆的。(网上有很多解释都不太容易理解,下面是我自己的理解) 首先我们要知道md5是散列函数。不懂的可以查一下。哈希就是散列函数。 举一个简单的例子,我的散列函数是 x%8 那我 3%8和11%8得出来的值是一样的。 它是多对一的。 所以当然是不可逆的。 你一那边怎么知道对应多那边的哪个?但这只是一个很简单的例子,md5肯定要复杂很多。 另外经过md5加密后,得到的字符串是固定的长度,不管你之前的字符串有多长,这是md5里面的映射关系决定的。 md5也可以被暴力破解,因为如果你的密码和另外一个的用户的密码是相同的,那你们加密过后的密文也是相同的。这可以通过加盐来解决。 加盐原理简单来说:由原来的H(p)变成了H(p+salt),相当于哈希函数H发生了变化,每次哈希计算使用的salt是随机的 H如果发生了改变,则已有的彩虹表数据就完全无法使用,必须针对特定的H重新生成,这样就提高了破解的难度。 就是在你的密码上加写数值,在用md5加密。 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |