4

我正在阅读phpass 手册。在某些时候,它会像这样检查散列的结果:

$hash = $hasher->HashPassword($pass);
if (strlen($hash) < 20)
    fail('Failed to hash new password');

我知道这是 phpass 哈希的最小长度,但我不明白它为什么会失败。甚至可能吗?我的意思是,如果发生这种情况,我应该责怪谁/什么?如何防止这种情况?我还在网页上发表了关于此的评论。

作为参考,您可以PasswordHash::HashPassword()在此问题中找到代码:* 如何成为安全的哈希密码?

4

1 回答 1

1

我注意到一些底层库,例如 'crypt' 在出现问题时不会优雅地失败,而只是返回一个较短的字符串。

也许这是这个问题的一个症状,只是一个额外的预防措施。

于 2012-09-20T21:52:34.227 回答