我对PKCS#12格式有疑问。奇怪的是它需要提供私钥,私钥将保存在生成的文件中。
通常,当我们从CA申请证书时,我们通常会生成一个CSR,其中包含我事先生成的密钥对的公钥。此公钥将放入证书中。因此,当启动SSL连接时,它将用于加密和传输用于其余SSL通道通信的对称加密密钥。由于MITM不知道私钥,因此,他们无法获得对称加密密钥。只有服务器具有私钥才能解密。
因此,无论如何,我们不应该将服务器的证书私钥放到其他人身上。现在,如果我把私钥放到PKCS#12上,它似乎完全违反了规则。
我正在开发一个与SSL固定相关的项目。旧版lib需要使用PKCS#12文件格式作为输入。我认为将p12证书放在客户端应用程序上是非常不安全的。
期待您的回复。