首页 > 解决方案 > java web应用程序的哈希+盐

问题描述

我被告知不要创建自己的盐和散列方法。由于Java中已经存在的那些要优越得多。经过一番研究,我不太明白以下内容;

如何以现代方式为 Java Web 应用程序生成和验证散列和加盐密码?

标签: javahashsalt

解决方案


这是使用散列存储密码的常用方法。

创建哈希和验证它有什么区别?

  1. 获取纯文本密码,添加随机盐,然后将盐和散列密码存储在数据库中。
  2. 当用户想要登录时,您获取他们提交的密码,从他们的帐户信息中添加随机盐,对其进行哈希处理,看看它是否等同于存储的哈希密码及其帐户信息。

如果盐每次都是随机的,除了用户名之外,您不需要令牌来验证密码吗?

如果您看到 #2,则可能需要令牌用于会话目的,但不需要用于身份验证(检查用户是否合法。)

有相同主题的好问题。您可以使用与此相关的良好工作示例。


推荐阅读