【问题标题】:Spring security with Bcrypt [duplicate]使用 Bcrypt 的 Spring 安全性 [重复]
【发布时间】:2019-09-23 07:32:24
【问题描述】:

我使用 Bcrypt 作为 Spring 安全项目的密码哈希算法。

当我尝试使用在线 Bcrypt 计算器时,它会为相同的纯文本密码生成不同的哈希值。这是由于我理解的盐渍。

但是对于真正的 Spring Security 应用程序中的身份验证,应用程序读取用户输入的密码并生成 bcrypt 哈希,然后将其与存储在数据库中的 bcrypt 哈希进行比较。如果匹配,则对用户进行身份验证。

如果bcrypt每次生成不同的值,如何匹配?

【问题讨论】:

标签: spring spring-mvc spring-security bcrypt jbcrypt


【解决方案1】:

散列方法生成一个包含散列本身和盐的字符串。

检查方法读取存储在字符串中的哈希值,并使用该哈希值对明文密码进行哈希处理(与第一次对密码进行哈希处理时使用的相同)。

查看wikipedia了解更详细的说明

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-08-07
    • 1970-01-01
    • 2021-06-21
    • 2020-05-19
    • 2019-09-17
    • 2019-03-30
    • 2020-06-19
    • 2017-07-04
    相关资源
    最近更新 更多