PyOpenSSL将证书对象转换为.pem fi

2024-04-29 02:51:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我想通过套接字将证书从“证书颁发机构”发送到节点。 我用这个例子创建了一个证书 https://skippylovesmalorie.wordpress.com/2010/02/12/how-to-generate-a-self-signed-certificate-using-pyopenssl/ 如何将其转换为.pem文件,以便通过套接字将其作为字符串发送,然后在另一端将其转换回.pem,并使用get_证书从中提取此证书。 Python: reading a pkcs12 certificate with pyOpenSSL.crypto 这可能是一个老套的方法,但我想简化它为自己。(或不)

我要重新提出这个人的问题,他的问题没有得到回答 How to convert PyOpenSSL object to PEM-encoded string?


Tags: tohttpsselfcom节点机构wordpresscertificate
1条回答
网友
1楼 · 发布于 2024-04-29 02:51:40

这是为了生成证书签名请求,但概念应该相同

from OpenSSL import crypto

req = crypto.X509Req()
pkey = crypto.PKey()
pkey.generate_key(crypto.TYPE_RSA, 2048)
req.set_pubkey(pkey)
req.sign(pkey, 'sha1')
certreq = crypto.dump_certificate_request(crypto.FILETYPE_PEM, req)
certreq = certreq.replace('-----BEGIN CERTIFICATE REQUEST-----\n', '').replace('-----END CERTIFICATE REQUEST-----\n', '')
private_key = crypto.dump_privatekey(crypto.FILETYPE_PEM, pkey)

对于证书,您可以使用:

crypto.dump_certificate(type, cert)

相关问题 更多 >