我一直在做很多关于在数据库中安全存储密码的研究,bcrypt似乎作为最安全的哈希算法之一出现在各地,所以我可能会用它来存储我网站的密码(用 PHP 编写)。它的主要卖点之一似乎是它非常慢,因此有助于减缓暴力/字典攻击。从字面上看,我读过的每一篇文章都提到 bcrypt 的优点,因为它很慢,因此可以防止暴力攻击。
所以,我的问题是:使用 PHP 登录失败后,我不能手动让代码暂停一两秒吗sleep()?为什么 bcrypt 慢如此重要?我的印象是,我可以使用任何加密算法(假设它的加密方式与 bcrypt 一样),在登录失败时添加 PHP sleep(),并且可以很好地防御暴力/字典攻击bcrypt。
bcrypt和强制登录延迟可防止两种不同的攻击。
强制延迟登录可以增加针对在线攻击的保护,攻击者使用您的登录页面来尝试不同的密码。
bcrypt增加了针对离线攻击的保护,攻击者可以访问您的密码哈希值,并且可以在不使用登录页面的情况下尝试哈希值。
| 归档时间: |
|
| 查看次数: |
675 次 |
| 最近记录: |