如何从Windows证书存储区中存储的证书中获取私钥?

时间:2020-05-01 16:42:11

标签: python windows ssl openssl certificate

我正在使用pyhtons请求lib进行通信。现在,我要按此处所述添加客户端证书:https://requests.readthedocs.io/en/master/user/advanced/#client-side-certificates 这需要以下内容:

您还可以指定本地证书,以用作客户端证书,单个文件(包含私钥和证书)或两个文件路径的元组。

我设法通过使用Windows crypto-api在本地计算机存储中找到证书。我也了解了相应的CSP。但是,我仍然不知道如何访问私钥本身,因此我可以将其提供给请求库。

请求手册中的示例:

requests.get('https://kennethreitz.org', cert=('/path/client.cert', '/path/client.key'))

警告:您本地证书的私钥必须未加密

由于证书会不时更新,因此无法手动导出pfx并使用openssl手动提取密钥。 我还想避免,如果可能的话,将文件包含在明文形式的包含私钥的磁盘上。 因此,我的首选解决方案是在python中读取私钥并将其传递给请求API。 ...我只是不知道怎么办?!

0 个答案:

没有答案