以前用php储存密码都是用的md5 sha1 听说貌似这种的都不安全了索性来看看最新的加密
PHP 5.5 之后引入 Password hashing API 用于创建和校验哈希密码,它属于内核自带,无需进行任何扩展安装和配置。
password_hash() 加密
用法示例:(推荐)
<?php
/**
- 我们想要使用默认算法散列密码
- 当前是 BCRYPT 算法,并会产生 60 个字符的结果。
- 据说bcrypt算法永不过时。
- - 请注意,随时间推移,默认算法可能会有变化,
- 所以需要储存的空间能够超过 60 字(255字不错)
*/
echo password_hash("rasmuslerdorf", PASSWORD_DEFAULT);
?>
password_verify() 验证密码是否和散列值匹配
用法示例:
<?php
// 想知道以下字符从哪里来,可参见 password_hash() 的例子
$hash = '$2y$07$BCryptRequires22Chrcte/VlQH0piJtjXl.0t1XkA8pw9dMXTpOq';
if (password_verify('rasmuslerdorf', $hash)) {
echo '密码正确';
} else {
echo '密码错误';
}
?>
更多相关密码散列算法函数:
password_algos — 获取可用的密码哈希算法ID
password_get_info — 返回指定散列(hash)的相关信息
password_hash — 创建密码的散列(hash)
password_needs_rehash — 检测散列值是否匹配指定的选项
password_verify — 验证密码是否和散列值匹配
Comments | NOTHING