【发布时间】:2018-05-01 21:16:45
【问题描述】:
我这样做是为了处理 pfx 证书,方法是写出一个 pem 文件。
我怎样才能同时取出 public_key?我注意到 p12 对象没有 get_publickey() 方法。
import contextlib
import OpenSSL.crypto
import os
import requests
import ssl
import tempfile
pfx_password = 'thiscertpassword'
tpem = 'temppem.pem'
pfxfile = 'fts.pfx'
f_pem = open(tpem, 'wb')
pfx = open(pfxfile, 'rb').read()
p12 = OpenSSL.crypto.load_pkcs12(pfx, pfx_password)
f_pem.write(OpenSSL.crypto.dump_privatekey(OpenSSL.crypto.FILETYPE_PEM,
p12.get_privatekey()))
#f_pem.write(OpenSSL.crypto.dump_publickey(OpenSSL.crypto.FILETYPE_PEM,
p12.get_publickey())) # NO SUCH METHOD
f_pem.write(OpenSSL.crypto.dump_certificate(OpenSSL.crypto.FILETYPE_PEM,
p12.get_certificate()))
【问题讨论】:
标签: python google-cloud-platform public-key-encryption pem pfx