上传文件
  1. base64hub
  2. 密钥与哈希
  3. 证书解码器

证书解码器(PEM / X.509)

粘贴 PEM 证书、整条证书链或原始 Base64 DER,即可查看证书颁发给谁、覆盖哪些主机名、何时到期,以及它的 SHA-256 指纹。

免费 无需注册,不限次数 本地 不上传任何内容 证书链 包中的每张证书都有自己的卡片 更新于 2026年10月27日

在你的浏览器中处理。此页面无法将你的数据发送到任何地方: 我们如何确认

如何解码证书

  1. 把证书粘贴到框中,包括 -----BEGIN CERTIFICATE----- 和 -----END CERTIFICATE----- 两行。不带这两行的原始 Base64 DER,以及以 30 82 开头的 hex 转储也可以。
  2. 也可以把 .pem、.crt、.cer、.der、.p7b 或 .crl 文件拖到框中。二进制 DER 文件也能用,不需要先转换。
  3. 查看卡片。输入中的每个对象都有一张卡片,所以包含三张证书的 fullchain.pem 会显示三张卡片。
  4. 需要原始的树结构时,展开卡片下方的 ASN.1 结构,例如要查找摘要中列在 其他扩展 下的某个扩展。

如果只想看看布局,点击 示例 按钮会载入一张演示证书。

解码器显示的内容

字段关注点
主体、颁发者证书是给谁的,由谁签发。两者相同时会标记为自签名。
生效时间 / 到期时间剩余天数;证书已过期、尚未生效或距到期不足 30 天时会发出警告。
主体备用名称(SAN)证书适用的主机名和 IP。浏览器用主机名匹配这个列表,忽略 CN。
公钥、签名算法例如 EC P-256 搭配 ecdsa-with-SHA256,或 RSA 及其位数。
密钥用法、扩展密钥用法TLS 服务器证书的 EKU 中需要有 serverAuth。
基本约束CA:TRUE 表示中间证书或根证书。
主体密钥标识符、颁发机构密钥标识符证书的 AKI 等于签发它的证书的 SKI,可以据此理顺证书链的顺序。
CRL 分发点、OCSP、CA 颁发者以纯文本显示。页面不会去获取它们。
SHA-1 和 SHA-256 指纹整个 DER 的哈希,证书管理工具和证书固定配置比较的就是这些值。
SPKI SHA-256 固定值(pin)仅对公钥计算的 SHA-256,以 Base64 表示。用同一个密钥续期证书时它保持不变。

证书链、证书包和混合文件

服务器通常会发送一条证书链:先是叶子证书,然后是一个或多个中间证书。粘贴整个 fullchain.pem,逐张查看卡片:卡片 1 的颁发者应当是卡片 2 的主体,AKI/SKI 的值也应以同样的方式对应。在不会自行获取中间证书的客户端中,顺序错误或缺少中间证书是出现“unable to get local issuer certificate”错误的常见原因。

PKCS#7 证书包(-----BEGIN PKCS7-----,常见于 Windows 或 CA 门户导出的 .p7b)同样可以打开,其中的每张证书都有自己的卡片。你还可以在一次粘贴中混合不同类型的对象:一张证书、它的 CSR 和它的私钥。如果三行 SPKI SHA-256 固定值(pin) 完全相同,说明密钥、请求和证书属于同一个密钥对。

证书是公开的,私钥则不是。本页在本地解析所有内容,对于私钥只显示类型和长度,ASN.1 树中的机密数值也会被隐藏。即便如此,除非万不得已,生产环境的私钥最好哪里都不要粘贴。

根据开头的字符识别证书数据

去掉头尾两行后,证书就是 DER 的 Base64,而 DER 总是以 SEQUENCE 字节 0x30 开头。由此可以得出几个值得记住的前缀:

开头通常是
MIIB260–515 字节的 DER,例如较小的 EC 证书(下面的示例为 443 字节)
MIIC516–771 字节的 DER
MIID、MIIE、MIIF772–1,539 字节的 DER,RSA-2048 证书的典型大小
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEEC P-256 公钥(SPKI)
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8ARSA-2048 公钥(SPKI)

第四个字符取决于长度字节,所以会随大小变化。更多规律见 常见的 Base64 前缀。

用 OpenSSL 解码证书

在命令行中查看同样的字段:

openssl x509 -in cert.pem -noout -text
openssl x509 -in cert.pem -noout -subject -issuer -dates -ext subjectAltName
openssl x509 -in cert.pem -noout -fingerprint -sha256
openssl x509 -in cert.pem -noout -pubkey | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | openssl base64

最后一行输出 SPKI 固定值,与这里显示的一致。要获取线上服务器发送的证书链,运行 openssl s_client -connect example.com:443 -servername example.com -showcerts </dev/null 并粘贴输出:解码器会从周围的文本中挑出 PEM 块。更多单行命令见 OpenSSL Base64 页面。

常见问题

  • “找到了 —–BEGIN 行,但没有标签相同的 —–END 行与之对应”:复制的内容被截断了。请重新复制,或者直接拖入文件。
  • “既不是 PEM,也不是有效的 Base64 DER”:输入两者都不是。典型原因是用文本编辑器打开二进制文件后粘贴了内容,或者 Base64 在经过聊天或邮件客户端时丢了字符。
  • “这是 SSH 公钥,不是 PEM”:ssh-ed25519 AAAA… 这样的行应该交给 SSH 密钥指纹工具。-----BEGIN OPENSSH PRIVATE KEY----- 也一样。
  • 指纹显示“需要安全(https)页面”:哈希使用浏览器的 WebCrypto API,它只能在 https 或 localhost 下运行。请通过 https 打开页面。
  • .pfx 或 .p12 文件:PKCS#12 的内容用导出密码加密,因此只能显示外层结构。请先用 openssl pkcs12 -in file.pfx -nokeys -out cert.pem 提取证书。

常见问题

怎么查看 SSL 证书什么时候到期?

把证书粘贴到上方,查看 到期时间:解码器会附上剩余天数,并在不足 30 天或已过期时发出警告。在 shell 中,openssl x509 -in cert.pem -noout -enddate 会输出同一个日期。

.pem、.crt 和 .cer 文件有什么区别?

扩展名只是一种约定。.pem 文件一定是带 -----BEGIN 行的 Base64 文本,而 .crt 和 .cer 既可能是这种文本,也可能是二进制 DER。把文件拖到这里,两种格式解码器都能读取。

这个工具会验证证书链或吊销状态吗?

不会。它读取所有字段,但不检查签名、证书链或 OCSP/CRL 状态,因为页面无法连接其他服务器。检查证书链请使用 openssl verify -CAfile chain.pem cert.pem。

能把私钥和证书一起粘贴吗?

能,这也是判断它们是否配套的最快方法:SPKI SHA-256 固定值(pin) 相同,就说明是同一个密钥对。对于私钥,工具只显示类型和长度,ASN.1 树中的机密值会被隐藏。