我计划使用 jBCrypt 密码散列在一个新的网络应用程序,因为这是应该是最好的从什么我已经阅读。因为我没用过这之前我要找到如果有任何理由,不要使用它。

我有这样的:

  • 我还没有找到它的专家库(搜索jbcrypt和bcrypt在mvnrepository.org的),这是唐纳为我想要我的依赖关系的管理,使用一个专家库,如果可能的。如果jBCrypt是最佳的解决方案password hashing我想要设置我自己的本地库并提供方式。或者我只是错过了吗?也许它在那里的某个地方?
  • 只有在0.2版,但也许这是稳定的,因为低版本的数量有一些其他的原因吗?
有帮助吗?

解决方案

jBcrypt可能是罚款作为一种加密算法为你的密码;河豚是相对强劲。虽然已有一些报告的执行情况中存在的缺陷河豚本身,我找不到任何东西很多报告有关jBcrypt.另一方面,河豚还没被测试的几乎一样严重,因为其他算法,以及一个 裂纹-已知的风格-plaintxt攻击往往效果更好于预期,令人惊奇的密爱好者。

所以这里就是我想建议:

  • 继续前进和使用jBcrypt但是保护你加密的密码文件的范围内,合理地可以的-你会使用/etc/影UNIX系统。
  • 相反Nikhil的建议,我 拉来源进入你的版本控制,原因有两个:(1)在其他地方你留住他们,因为你需要他们时,你建立,以及(2)因为总是有的 机会 人做jBcrypt将转移到其他事情,以及你不想找到自己的左晃来晃去之前娩(这是不可避免的时候你会发现.) 在这种情况,我会把来源进入你的版本控制,如果他们是你的代码,然后的任何变化可以插入如果你想建立一个新版自己。不需要复杂得多,通常会。

其他提示

尽你的关心,这是不成熟,我要表明,你在设置自己的JUnit测试的比较结果jBcrypt和更多的证明Bcrypt,看看你得到相同的结果,然后做出贡献的那些到jBcrypt项目。

但是,已经完成:

...船与一组JUnit单元 测试,以验证正确操作 图书馆和兼容性 规范C执行情况 bcrypt算法。

仔细阅读JUnit测试,看看他们是否满足了你的满意程度是在那里我会开始...

我怀疑稳定将是一个问题,因为bcrypt本身就是成熟和其微小的、标准化的包装不要做任何事情非同寻常的。我很乐意跟达米安*米勒的其他bcrypt包装, 蟒蛇bcrypt, ,这是只有上版本0.1。

我不熟悉的专家,但(异端邪说警报!) 我怀疑你需要的版本控制的组件作为简单,因为bcrypt.引用网站,改变从0.1 0.2是"正确性,打字错误和API的调整(完全兼容),"待办列表是空的。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top