PHP学院的中学生 2021-12-20 21:46:49 1113次浏览 0条回复 0 0 0

单向散列加密是对不同输入长度的信息进行散列计算,得到固定长度的散列计算值。输入信息的任何微小变化都会导致散列的很大不同,并且这种计算是不可逆的,即无法根据散列值获得明文信息。单向散列加密可用于用户密码的保存,即不将用户输入的密码直接保存到数据库,而是对密码进行单向散列加密,将密文存入数据库,用户登录时进行密码验证,同样对输入密码进行散列加密与数据库中密码的密文进行对比,若一致,则验证成功。

虽然不能通过算法从散列密文解出明文,但是由于人们设置的密码具有一定的模式(比如使用生日或名字作为密码),因此通过彩虹表(密码和对应的密文关系表)等手段都可以进行猜测式的破解。为了增加单向散列被破解的难度,还可以给散列算法加盐值(salt), salt相当于加密时的密钥,增加破解时的难度。常用的单向散列算法有MD5、SHA等。

    没有找到数据。
您需要登录后才可以回复。登录 | 立即注册