1

我最近一直在处理一些p12存储私钥和公​​钥的文件。远离密码学专家,我开始思考将公钥和私钥一起存储在同一个存档中(然后通过网络传输)是否会破坏密钥的整个目的。

4

2 回答 2

1

是否分发私钥取决于您的特定需求。通常,它们是保密的,不会分发超出需要的部分(几乎从不)。

从技术上讲,可以将没有私钥的证书添加到 PKCS#12 容器中,但这没有多大意义,因为其他格式对于仅分发证书更实用。如果您只是因为某些软件仅适用于 PKCS#12 格式而添加私钥,并且您不知道如何避免将私钥放在那里,那么这是一个错误 - 您不应该这样做。

现在,PKCS#12 文件中数据的安全性取决于所使用的加密算法。以前(在旧版本的 Windows 中)默认使用 40 位加密。40 位是不安全的,这是肯定的。较新的版本支持 3DES 加密——它更强大。

于 2013-09-21T10:25:19.640 回答
1

将公钥与私钥一起存储在文件中并没有错。这一切都取决于这样做的意图。

如果您只想将公钥发送给第三方,那么通过发送您的私钥,您可以为他们提供一种破解公钥机制的方法。这是不安全的,您应该丢弃您的密钥,因为它们现在没有任何值。

如果传输是您的基础架构的一部分,并且传输是安全地进行的,并且您完全希望此文件在目标上是私有的,那么将它们存储为一个文件没有任何问题。

大多数框架都知道如何正确使用单个私有/公共文件,并且只会将公共部分披露给第三方并将私有部分保留在内部。

于 2013-09-21T06:15:48.757 回答