我有以下代码片段:
// bcrypt hash of 'password'
$hash = '$2y$10$4u0cQ.WEnwHDo.C5Nl1vm.shKA0beQ32wqzphSfzklAq9OcDM2nLu';
if(password_verify('password', $hash)) {
print_r('woohoo!');
}
else {
print_r('fubar');
}
在一台服务器上它工作正常(哇哦!),在另一台服务器上它不起作用。我刚刚把它放在 codepad.org 上,它也在那里失败了。
问题是(可以在该键盘页面上看到)计算的哈希crypt
长度为 13 而不是所需的 60。
我在 github 上使用ircmaxel 的 password_compat 库password_verify
来实现仅限 PHP 5.5 的功能。