BCrypt身份验证失败

时间:2016-07-05 13:57:33

标签: spring-security bcrypt

我正在尝试使用Spring Security实现BCrypt密码加密。由于某种原因,密码验证失败的原因应该是有效密码。密码是在同一个应用程序中创建的,当我在单元测试中对其进行硬编码时,会通过身份验证检查。但是,由于某种原因,当它在服务器上运行时它会失败。我已经检查过它使用相同的JRE,相同的迭代次数(存储在哈希中)。我尝试将其减少到最低限度的代码,以找出错误的原因。我被困在这句话的地步:

BCrypt.checkpw("password123", "$2a$10$kyRMcxNqagw.ny369X4AsumV4cvHt4Usfvm.rGNDRnxP2SLKioFhu")

在单元测试中运行时返回true,但在服务器上的PasswordEncoder中运行时失败。关于为什么失败的任何想法?

1 个答案:

答案 0 :(得分:0)

我发现了自己的错误。有一次,我们的代码将密码转换为大写。我删除了一些地方,但错过了一个。因此,将所有大写密码与混合大小写密码进行比较失败(正如人们所期望的那样)。