php加盐加密

来源:互联网 发布:士族知乎 编辑:程序博客网 时间:2024/06/14 18:32
以前用md5或sha1,或基于sha2的sha256和512的hash加密,彩虹表可破译这些hash加密方法。
较为安全的做法是
(1)或者使用md5(或sha1等)+salt(干扰字符串)的方式。。salt是随机生成在用户表加一个字段并存
入数据库
 (2)Bcrypt加密
  使用BCrypt算法免除存储salt。BCrypt算法将salt随机并混入最终加密后的密码,验证时也无需单独
提供之前的salt,从而无需单独处理salt问题。
  $hash = password_hash($value, PASSWORD_BCRYPT, ['cost' => 10]);
  password_hash后的结果包含了算法,cost和盐值,所以可以直接用password_verify验证。