【发布时间】:2014-12-06 08:20:06
【问题描述】:
为了安全地散列密码,我应该使用哪种算法? BCrypt 或 PBKDF2WithHmacSHA1?
哪个更安全? PBKDF2WithHmacSHA1 内置于 Java 中,而 BCrypt 可通过 jBCrypt 库获得(大部分都获得了正面评价)。
另外,如果我使用BCrypt,我是否应该将用户的密码输入限制为 55 个字符(因为这是BCrypt 的限制)?
如果您是 Java 特定的,那将会很有帮助。
请注意,我会选择使密码更安全且暴力破解更困难的选项。
【问题讨论】:
-
见仁见智,两者同样安全。我会选择 BCrypt。
-
在 Security.stackexchange.com 上查看此答案:security.stackexchange.com/a/6415/2019
-
另一方面,在这里(news.ycombinator.com/item?id=3725723),您会发现一些针对 bcrypt 的有效点(如果您愿意,也可以针对 pbkdf2)。
标签: java security bcrypt pbkdf2 jbcrypt