Spring 5 Security是否支持$ 2y $ bcrypt哈希版本?

时间:2019-01-29 07:47:22

标签: java spring spring-security bcrypt jbcrypt

我搜索了Spring 5 Security的文档,但在任何地方都找不到对BCrypt $ 2y $版本前缀的引用。

在查看源代码时,我在Javadoc of the PasswordEncoder中找到了一个参考:

  

可以选择提供“版本”($ 2a,$ 2b,$ 2y)

谁能给我一些共识?使用Spring 5 Security时可以使用$ 2y $ bcrypt版本前缀吗?

1 个答案:

答案 0 :(得分:1)

这取决于您使用的版本,此功能的发布日期为the commit,发布于2018年10月18日。它的标签为5.2.0.M1,表示此提交将在其中发布。 ,the official docs of that version now specify this feature exists

  

使用BCrypt强哈希的PasswordEncoder的实现   功能。客户可以选择提供“版本”($ 2a,$ 2b,$ 2y)   和一个“强度”(又称BCrypt中的日志回合)和一个SecureRandom   实例。强度参数越大,必须进行的工作越多   (以指数方式)对密码进行哈希处理。默认值为   10。

在版本5.2.0.M1尚不存在此功能之前,此版本尚未正式发布,仅快照(5.2.0.M1已于2019年1月16日发布)。

要想使用此功能,必须使用此版本(或更高版本),直到正式发布为止。