栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何使用python解码SSL证书?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何使用python解码SSL证书?

Python的标准库,即使是最新版本,也不包含任何可解码X.509证书的内容。但是,附加

cryptography
软件包确实支持此功能。引用文档中的示例:

>>> from cryptography import x509>>> from cryptography.hazmat.backends import default_backend>>> cert = x509.load_pem_x509_certificate(pem_data, default_backend())>>> cert.serial_number2

另一个可选的附加软件包是

pyopenssl
。这是围绕OpenSSL C
API的精简包装,这意味着有 可能 做您想做的事情,但是希望花几天的时间来整理文档。

如果您无法安装Python附加软件包,但确实有

openssl
命令行实用程序,

import subprocesscert_txt = subprocess.check_output(["openssl", "x509", "-text", "-noout",    "-in", certificate])

应该会产生与您从中的Web实用工具获得的大致相同的东西

cert_txt

顺便说一句,直接进行base64解码会产生二进制gobbledygook的原因是这里有两层编码。
X.509证书是ASN.1数据结构,序列化为X.690
DER
格式,然后,由于DER是二进制格式,因此使用base64铠装以便于文件传输。(在这方面的许多标准都是在90年代编写的,当时您只能可靠地发送7位ASCII码,否则无法可靠地发送任何东西。)



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/610778.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号