X.509证书解码器(SSL证书解析)
粘贴PEM格式的SSL/TLS证书,即可立即解析出主题、颁发者、有效期、SAN、序列号、公钥算法及SHA-1/SHA-256指纹。免费工具,支持离线解析自签名证书和内部CA证书。
什么是X.509证书解码器
X.509证书解码器是一款免费工具,只需粘贴PEM格式的SSL/TLS证书,即可一次性列出主题、颁发者、有效期、SAN条目、序列号、公钥算法、签名算法及指纹等信息。解析底层ASN.1 DER二进制结构的过程在服务器端完成,因此任何人都无需安装OpenSSL命令行工具,即可查看证书内容。
与实时SSL检测工具(通过实际域名连接互联网、经由真实TLS握手获取证书)不同,本工具直接解析你粘贴的PEM文本,因此还能解析实时检测无法触及的证书:尚未部署到生产环境的证书、内网自签名或内部CA证书,以及已下载保存在本地的证书文件。
X.509证书解码器的使用方法
- 粘贴PEM证书 将以“-----BEGIN CERTIFICATE-----”开头的文本直接粘贴到输入框中。
- 支持一次粘贴多个证书 将服务器证书与中间CA证书一起粘贴,系统会自动检测并拆分各个区块。
- 点击“解析”按钮 确认检测到的证书数量后,点击按钮在服务器端进行解析。
- 查看解析结果 主题、颁发者、有效期、SAN、指纹等信息将逐一列出。
用好本工具的小技巧
- 即使一次粘贴整条证书链(服务器证书+中间CA证书),系统也会自动拆分区块并分别解析。
- 将本工具显示的SHA-256指纹与颁发机构公布的值进行比对,可确认证书是否被替换或篡改。
- 主题(Subject)与颁发者(Issuer)完全一致的证书即为自签名证书,结果中会以专门的徽章标出。
- 在粘贴自己的证书前,可先点击“插入示例证书”查看输出格式,做到心中有数。
- 在将多域名证书切换到生产环境前,务必确认所有需要的域名都已列在SAN中。
适用场景
排查证书过期问题
当浏览器提示“证书已过期”时,可直接查看实际的validTo到期时间。
上线前确认SAN条目
在切换多域名证书之前,确认所有需要的主机名是否都已列在SAN扩展中。
审计密钥强度
在安全审查中确认公钥算法与长度,例如是否为RSA 2048位以上或使用了哪种EC曲线。
检查内部或自签名证书
解析基于域名的实时检测工具无法访问的内部系统证书或自签名证书。
术语表
- PEM
- 将Base64编码后的DER数据用“-----BEGIN CERTIFICATE-----”等标记行包裹起来的文本格式,是证书交换中最常用的形式。
- X.509
- 定义公钥证书结构的国际标准,不仅用于TLS/SSL,也用于S/MIME和代码签名。
- ASN.1 / DER
- 严格定义证书内部结构的二进制编码规则,PEM只是将这段DER数据进行了Base64编码。
- SAN(使用者备用名称)
- 列出证书额外生效的主机名或IP地址的扩展字段,多域名证书必须包含此项。
- 指纹
- 对整个证书进行哈希计算得到的值,用于核实证书是否被替换或篡改。
- 自签名证书
- 颁发者与主题完全相同的证书,未经过第三方证书颁发机构(CA)验证。
常见问题
闲话 ― PEM为什么看起来像一堆天书
打开证书文件,常常会看到一长串以“-----BEGIN CERTIFICATE-----”开头的、几乎无法阅读的字符。这种格式被称为PEM(Privacy-Enhanced Mail),其本质只是把一种叫ASN.1的规范所定义的DER二进制数据,用Base64编码成文本,以便能安全地通过邮件系统和纯文本文件传输。换句话说,PEM只是给DER“换了一身衣服”,证书真正的内容严格定义为一系列ASN.1的TLV(标签、长度、值)结构,本工具的任务正是解析这段二进制数据,转换成人类可读的形式。
X.509这个名字的由来也颇为意外。它最初由国际电信联盟(ITU-T)于1988年制定,作为X.500目录服务标准的一部分,早于互联网普及的年代。1999年,IETF将其改编用于互联网场景,编号为RFC 2459,如今最新规范是RFC 5280。证书分为v1、v2、v3三个版本,而像SAN(使用者备用名称)这样的扩展字段,只有从v3开始才能使用。如今几乎所有签发的TLS证书都是v3,本工具在解析时也以v3的扩展字段为前提。
同一份证书常常会同时看到SHA-1和SHA-256两种指纹。自从针对SHA-1的实际碰撞攻击被证实以来,它作为签名算法已被弃用,但作为唯一标识证书的指纹用途,出于兼容旧工具的考虑仍会被展示,本工具也因此同时提供两种指纹。在进行新的核验工作时,建议优先使用SHA-256的值。