如何用 Python 解析 ssl 证书文件?

2016-12-21 09:12:42 +08:00
 master13
现在有一堆 SSL 证书,需要提取其中的 Issuer 、 Subject 等信息吧,就是 windows 下双击这个证书里能看到的颁发者、使用时间啥的。之前用 C#的 System.Security.Cryptography.X509Certificates 包来做的,现在开发环境换 python 了,也没找到比较好用的库。

求老司机引导一下……
6316 次点击
所在节点    Python
9 条回复
bxb100
2016-12-21 09:28:01 +08:00
好像自带库里有,没用过,我也不清楚,帮
way2exp
2016-12-21 09:35:05 +08:00
vvoody
2016-12-21 09:35:07 +08:00
PyOpenSSL

OpenSSL.SSL.Connection()
get_peer_certificate()
get_peer_cert_chain()
BOYPT
2016-12-21 10:16:01 +08:00
import os
os.system("openssl x509 -text -noout -in cert.crt")
est
2016-12-21 10:29:48 +08:00
@BOYPT 我喜欢这个方式。
wujunze
2016-12-21 10:50:52 +08:00
@est
@BOYPT 简单粗暴
master13
2016-12-21 15:00:06 +08:00
@BOYPT 啊这也能叫用 python 来解决……你赢了
master13
2016-12-21 15:04:40 +08:00
@way2exp 感谢。我没有说清楚,证书是离线的,无法再次与服务器建立连接。
已补充到题目。
master13
2016-12-22 08:22:32 +08:00
好,自问自答一波

使用 pyOpenSSL:

OpenSSL.crypto.load_certificate(type, buffer)
get_subject()
get_issuer()

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/329060

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX