带有pkcs12证书的API

时间:2018-07-03 06:05:58

标签: python openssl python-requests pkcs#12

我正在尝试在Python中读取具有pkcs12证书的API。在导入证书的Firefox中一切正常。我尝试了两种方法:

1)首先,我尝试使用OpenSSL软件包

from OpenSSL import crypto    
p12 = crypto.load_pkcs12(open("C:/PathToCertificate.p12", 'rb').read(),str.encode("mypassword")
p12certificate = p12.get_certificate()
p12privatekey = p12.get_privatekey()
p12cacertificates = p12.get_ca_certificates() 
p12.get_friendlyname()
response = requests.get(url,cert=p12certificate)

第一部分似乎工作正常,但我不知道如何将证书传递给请求。

2)其次,我尝试了request_pkcs12软件包:

r = get("https://eloverblik.dk/api/authorizationsv2",pkcs12_filename="C:/PathToCertificate.p12", pkcs12_password="mypassword")

但是我得到结果 SSLError: HTTPSConnectionPool(host='eloverblik.dk', port=443): Max retries exceeded with url: /api/authorizationsv2 (Caused by SSLError(SSLError("bad handshake: Error([('SSL routines', 'SSL3_GET_RECORD', 'wrong version number')],)",),))

我正在使用1.0.5版的request_pkcs12和python 3.6.1版。 TLS版本1.3。

任何想法出什么问题了吗?

0 个答案:

没有答案