如何/如何使用python和cryptography模块生成PKCS#12文件?
使用上述模块为私钥生成.pem文件的内容非常容易:
keyPEMBytes = privateKey.private_bytes(
encoding=serialization.Encoding.PEM,format=serialization.PrivateFormat.TraditionalOpenSSL,encryption_algorithm=serialization.NoEncryption())
也很容易为相关证书生成.cer / .pem文件的内容:
certBytes = certificate.public_bytes(encoding=serialization.Encoding.PEM)
但是我需要它们(和它们的链)聚集在单个.p12(PKCS12文件)上.所述模块记录了how to parse/consume PKCS12 formats,但是关于如何生成它们却一无所获(我能找到).
我对PKI东西的理解是偶然的,所以也许我只是没有在文档中搜索正确的关键字?
我可以使用以下命令在Linux上的命令行中创建.p12文件:
openssl pkcs12 -export -out myIdentity.p12 -inkey myPrivKey.pem -in myCert.crt -certfile myCertChain.crt
所以我可以用subprocess / cmd包装这样的调用,并用tempfiles / pipes弄乱.我希望将其全部保留在内存/ python中.
我应该考虑使用其他的python TLS库吗?