java - 从密码生成 key 对

标签 java security encryption

我想使用基于密码的私钥进行非对称加密。要求是所提供的安全级别必须与 (1) 使用基于密码的对称加密,(2) 使用“常规”方式的非对称加密相同。

我将不得不在 Java 中使用它,但答案可以是通用的。

我知道我可以生成一个 key 对并使用基于密码的对称 key 加密私钥,但是,通过这种方式我将需要一个服务器(或其他存储)来存储这个加密 key 。我想避免这种情况。如果我可以从密码生成 key 对,则不需要。

有什么建议吗?

最佳答案

如果您仅将私钥基于密码,则其强度将仅与密码一样强,即谁能猜出密码,谁就可以获得私钥。

这类似于生成私钥/公钥对,使用对称密码加密私钥,然后将两者一起发布。

这当然会使整个系统变得更弱,因为您不再需要拥有 secret token - 您只需要知道密码。

关于java - 从密码生成 key 对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49510514/

相关文章:

java - gRPC Java客户端: get connected endpoint

asp.net - 是否可以解密并查看 ViewState 值?

security - 在 Websphere Application Server 8.5 中创建领域

c - SSH2 session 中计算量最大的步骤是什么?

Python AES 256 CBC 加密 - ValueError : Incorrect AES key length

Python:解密凯撒密码

java - 通过 jConsole/JMX 的 Activemq Artemis

java - Jython 图形库

java - 写入文件代码不写入

c# - 这种签名 URL 的实现是否相当安全?