如何使用 PyOpenSSL 读取 PFX 文件?
How do I use PyOpenSSL to read a PFX file?
如何使用pyopenssl读取pfx文件?以及如何使用此 SSL 证书签署 XML?
我仍然无法理解如何阅读,但我也不知道如何签名。我以为我会使用 pip signxml 库,但我不知道是否是这样。
到目前为止我的代码:
import OpenSSL
def load_public_key(pfx_path, pfx_password):
''' Read the public key and return as PEM encoded '''
# print('Opening:', pfx_path)
with open(pfx_path, 'rb') as f:
pfx_data = f.read()
# print('Loading PFX contents:')
pfx = OpenSSL.crypto.load_pkcs12(pfx_data, pfx_password)
public_key = OpenSSL.crypto.dump_publickey(
OpenSSL.crypto.FILETYPE_PEM,
p12.get_certificate().get_pubkey())
print(public_key)
return public_key
teste = load_public_key("certificates/myfile.pfx", 'mypass')
我需要阅读一个脚本,签署任何 XML 并获得一个包含 xml 的字符串。
经过一番研究,我得出以下结果:
from OpenSSL.crypto import *
import os
passwd = 'my_pass'
cd = 'my_folder'
p12 = load_pkcs12(open(cd + 'file.pfx', 'rb').read(), passwd)
pkey = p12.get_privatekey()
open(cd + 'pkey.pem', 'wb').write(dump_privatekey(FILETYPE_PEM, pkey))
cert = p12.get_certificate()
open(cd + 'cert.pem', 'wb').write(dump_certificate(FILETYPE_PEM,
cert))
ca_certs = p12.get_ca_certificates()
ca_file = open(cd + 'ca.pem', 'wb')
for ca in ca_certs:
ca_file.write(dump_certificate(FILETYPE_PEM, ca))
如何使用pyopenssl读取pfx文件?以及如何使用此 SSL 证书签署 XML?
我仍然无法理解如何阅读,但我也不知道如何签名。我以为我会使用 pip signxml 库,但我不知道是否是这样。
到目前为止我的代码:
import OpenSSL
def load_public_key(pfx_path, pfx_password):
''' Read the public key and return as PEM encoded '''
# print('Opening:', pfx_path)
with open(pfx_path, 'rb') as f:
pfx_data = f.read()
# print('Loading PFX contents:')
pfx = OpenSSL.crypto.load_pkcs12(pfx_data, pfx_password)
public_key = OpenSSL.crypto.dump_publickey(
OpenSSL.crypto.FILETYPE_PEM,
p12.get_certificate().get_pubkey())
print(public_key)
return public_key
teste = load_public_key("certificates/myfile.pfx", 'mypass')
我需要阅读一个脚本,签署任何 XML 并获得一个包含 xml 的字符串。
经过一番研究,我得出以下结果:
from OpenSSL.crypto import *
import os
passwd = 'my_pass'
cd = 'my_folder'
p12 = load_pkcs12(open(cd + 'file.pfx', 'rb').read(), passwd)
pkey = p12.get_privatekey()
open(cd + 'pkey.pem', 'wb').write(dump_privatekey(FILETYPE_PEM, pkey))
cert = p12.get_certificate()
open(cd + 'cert.pem', 'wb').write(dump_certificate(FILETYPE_PEM,
cert))
ca_certs = p12.get_ca_certificates()
ca_file = open(cd + 'ca.pem', 'wb')
for ca in ca_certs:
ca_file.write(dump_certificate(FILETYPE_PEM, ca))