【问题标题】:Decrypt and encrypt using PBKDF2 java使用 PBKDF2 java 解密和加密
【发布时间】:2017-07-06 16:17:31
【问题描述】:

有没有办法在java中解密PBKDF2密码。 Java 将PBKDF2 算法实现为PBKDF2WithHmacSHA1。我得到了为密码创建哈希的代码。我参考了下面的哈希技术链接:

http://howtodoinjava.com/security/how-to-generate-secure-password-hash-md5-sha-pbkdf2-bcrypt-examples/

我的要求是以加密格式存储第三方FTP服务器密码,并在需要登录服务器时以纯文本形式从数据库中取回密码。 谁能推荐最好的密码加密方法?

【问题讨论】:

标签: java security encryption


【解决方案1】:

请注意,PBKDF2 是一种散列方法而不是加密方法(准确地说:它是一种从密码中派生加密密钥的方法,但它也经常用作密码散列方法)。 PBKDF2 的全部意义在于让除了暴力猜测之外无法获得原始密码,并且尽可能地做到这一点。

如果您在谈论您的用户密码:您根本不应该让他们清楚 - 如果您这样做并告诉我(例如通过显示我的密码)我会立即将您的整个网站标记为不安全。

如果您需要为您的应用程序访问另一个服务保留一个加密密码,那么 PBKDF2 是不适合这项工作的工具,请改用 AES 等真正的加密算法。

【讨论】:

  • @Artjom B Piet.t - 感谢您提供此信息,它帮助我更清楚地搜索有关用户安全的信息 我的要求是以加密格式存储第三方 FTP 服务器密码并取回需要登录服务器时的密码你能建议一个最好的方法吗?
  • 我知道我有点迟到了,任何谷歌搜索都会告诉你——散列是一种方式,加密是可逆的。因此,按照建议,您可以使用 AES 或任何其他可逆加密来恢复密码。
【解决方案2】:

不,这在设计上是不可能的!想知道为什么?

以下 2 篇文章将回答您的所有问题: https://nakedsecurity.sophos.com/2013/11/20/serious-security-how-to-store-your-users-passwords-safely/ https://crackstation.net/hashing-security.htm

【讨论】:

  • 感谢这篇文章,对我有很大帮助我的要求是将第三方FTP服务器密码以加密格式存储,并在需要登录服务器时从数据库中取回密码。实际上需要每 10-20 分钟登录一次服务器任何人都可以建议任何密码加密方法
  • 嗯,这只是将问题委托给下一个级别。假设您选择了算法 X。您打算如何保护用于加密 FTP 服务器密码的加密密钥?
  • 所有相关信息都包含在链接的文章中。这使得这是一个仅限链接的答案。请添加链接文章的摘要。仅链接的答案是不可接受的,因为链接死了,当它们死时,答案变得毫无用处。
猜你喜欢
  • 2017-12-26
  • 1970-01-01
  • 2013-05-15
  • 1970-01-01
  • 1970-01-01
  • 2020-09-24
  • 2011-04-29
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多