将公钥和私钥存储在pkcs12中是否存在风险?

时间:2013-09-20 20:19:23

标签: cryptography pkcs#12 truststore

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

2 个答案:

答案 0 :(得分:1)

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

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

如果传输属于您的基础架构,传输安全,您完全希望此文件在目标上是私有的,那么存储没有错它们作为一个文件。

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

答案 1 :(得分:1)

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

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

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