当前位置: 首页 > 知识库问答 >
问题:

我应该使用jBcrypt还是PBKDF2在java中进行密码盐化?

刘骏祥
2023-03-14

大家好!

我正试图找到一种方法,以盐和散列我的密码在Java为一个web应用程序,需要一个密码登录

我试图使用Bouncy Castle bcrypt和scrypt类来获得salting、哈希和密码验证的方法,结果发现这两个类中都没有密码验证方法。如果我在这个评估中是不正确的,请让我知道密码验证的方法是什么或者如果我遗漏了什么。

作为另一种选择,我决定在分解并转到PDBKF2之前试用bcrypt,因为有更多的文档可以代替bcrypt或scrypt。

我遇到的问题是,我在以下网站上找到了Mindrot的bcrypt:http://www.mindrot.org/projects/jbcrypt/#下载,但我担心的是它已经有两年没有更新了。我的工作中的一个开发人员告诉我只能使用在过去六个月内不断更新的加密方法,所以这让我真的很紧张,甚至考虑它。

最近有人用过jBcrypt吗?它仍然是我可以用于我的项目的东西吗?

如果不是,哪里有可靠的地方,我可以得到bcrypt或scrypt与密码验证?

提前道谢!

共有1个答案

逑彬炳
2023-03-14

您不应该太担心jBcrypt(据我所知)是一个广泛使用的库,如果您查看Author的网页,您会看到该库已经更新以解决安全问题和bug。

代码不是那么大,您可以看一看,特别是检查测试。

 类似资料:
  • 问题内容: 我正在用Java进行基于密码的文件加密;我正在使用AES作为底层加密算法,并使用以下代码(我是从该网站的另一位慷慨的海报获得者)从盐和密码的组合中得出密钥的。 我吃了盐,用户在两端输入密码,加密和解密工作正常:-)我的问题是,我希望能够在进入(可能很长)之前验证用户输入的密码是否正确解密过程。我知道PBKD规范包含一个可选的2字节验证值,但是我不确定如何使用上述方法生成该值。Java是

  • 我试图学习密码学,用散列和盐析在数据库中保存密码,所以我决定做一个登录系统来实现这个系统。 我的数据库包括 UserID int PK 用户名varchar(250) Salt varbinary(64) 密码varbinary(64) RegDate日期时间 电子邮件varchar(250) 我正在使用PBKDF2,但似乎这不是散列/盐析方法,如果不是呢? 如果是这样,我做得对吗? 我的钥匙 将

  • 我对密码学相当陌生,我正在使用加密密码并将其存储在数据库中。对于加密,我使用算法,并且我想对密码加盐,以防止它对字典攻击。 如有任何帮助,我们将不胜感激。

  • 是否有理由使用启动一个文件,或者您应该只使用? 我知道可以启动一个特定的容器,但我指的是在不指定容器的情况下使用它以启动所有yml容器的情况。

  • 问题内容: 使用JavaScript更改当前网页位置的首选方法是什么?我已经看到使用window.navigate和document.location了。行为上有区别吗?浏览器的实现是否有所不同? 问题答案: 是用于更改当前窗口位置的标准实现。

  • 问题内容: 当用户使用我的应用程序注册时,我正在使用jBCrypt库对用户密码进行哈希处理。 我使用带有盐的基本哈希函数,如下所示: 注册时我发现 挂 了 一两分钟 ,然后检查了调试器,确认BCrypt是负责任的。 给密码加盐是否真的需要 那么 多处理能力?如果是这样,一个很好的选择是将纯文本密码发送到服务器以对其进行哈希处理吗?我最初对此事的想法是在将其发送到任何地方之前对其进行哈希处理。有任何