证书解码器
粘贴 PEM 证书、证书链或 CSR,把它读成清晰的字段:使用者与签发者、有效期及剩余天数、主体备用名称(SAN)、公钥算法与长度、密钥用途与扩展密钥用途、基本约束、密钥标识符,以及 SHA-1 与 SHA-256 指纹。它支持 X.509 证书(PEM、Base64 或 DER)、PKCS#10 证书签名请求,以及可以逐个切换查看的完整证书链。所有解析都用浏览器的 Web Crypto API 在本地完成,证书、CSR 或密钥不会上传、代理或在服务器记录。它是用于查看的解码器,不是信任校验:不会验证证书链、吊销状态,也不会判断某个证书当前是否被真实客户端信任。
- 解码 X.509 证书和 PKCS#10 CSR,支持 PEM、Base64、DER,以及多证书的证书链
- 显示使用者与签发者、带剩余天数的有效期,以及清晰的有效 / 过期 / 尚未生效状态
- 列出主体备用名称、密钥用途、扩展密钥用途、基本约束和密钥标识符
- 给出公钥算法与长度(RSA 位数、EC 曲线),以及可复制的 SHA-1 与 SHA-256 指纹
- 完全本地:解析通过 Web Crypto 在浏览器进行,不上传,也不做信任或吊销校验
功能简介
一个专注于 X.509 证书与 CSR 的阅读器。它把 PEM 背后密集的 ASN.1 结构变成带标签的字段,让你不用拼凑 openssl 参数就能确认证书到底包含什么。解析通过浏览器的 Web Crypto API 完成。
- 01
证书、证书链与 CSR
可以解码单个 X.509 证书、粘贴成多段 PEM 的完整证书链,或 PKCS#10 证书签名请求。检测到证书链时,你可以在各张证书之间切换,分别查看叶子、中间和根证书。
- 02
使用者、签发者与有效期
使用者和签发者会拆成各自的可分辨名称部件(CN、O、OU、C 等)。有效期显示生效与失效时间,并配有清晰的有效、过期或尚未生效徽标和剩余天数。
- 03
主体备用名称
每条 SAN 都会按类型列出 —— DNS、IP、邮箱、URI —— 这通常正是你在确认证书是否覆盖某个主机名时真正关心的字段。
- 04
密钥与签名细节
可以看到公钥算法与长度(RSA 模数位数或 EC 曲线)、签名算法、序列号,以及可一键复制的 SHA-1 与 SHA-256 指纹,用于固定(pinning)或比对。
- 05
用途与约束
密钥用途、扩展密钥用途、基本约束(CA 标志与路径长度)、主体与颁发机构密钥标识符都会解码成可读名称,并附带每个扩展的完整列表,含 OID 和关键标志。
- 06
本地,支持 PEM、Base64 或 DER
输入可以是 PEM、原始 Base64 或 DER。解析和指纹计算完全在浏览器标签页内通过 Web Crypto 进行,证书、CSR 和其中可能包含的密钥都不会离开你的设备。
如何使用
流程很短:粘贴证书、阅读字段、在链成员之间切换、复制所需内容。
- 01
把证书、证书链或 CSR 粘贴到输入面板。从 -----BEGIN CERTIFICATE----- 到原始 Base64 串都可接受,解析会立即进行。
- 02
先看概览:类型、通用名称、签名算法,以及使用者是否等于签发者。状态徽标会一眼显示有效、过期或尚未生效。
- 03
检查主体备用名称,确认证书覆盖了你期望的主机名或 IP;再看有效期部分,了解确切的失效日期和剩余天数。
- 04
如果粘贴的是证书链,用选择器在叶子、中间和根证书之间切换,分别查看每一张。
- 05
用复制按钮复制指纹、序列号或密钥标识符,或在工具栏复制所选证书规范化后的 PEM。
功能说明
那些通常逼着你打开命令行的证书查看工作,这里直接呈现,且不经过服务器往返。
- 从 PEM、Base64 或 DER 输入读取 X.509 证书和 PKCS#10 CSR。
- 把粘贴的证书链拆成单张证书,并提供叶子、中间、根的选择器。
- 把使用者和签发者拆成可分辨名称部件,而不是一整串不透明字符串。
- 显示带剩余天数的有效期,以及有效 / 过期 / 尚未生效的状态。
- 按类型列出主体备用名称,让主机名覆盖一目了然。
- 给出 RSA 密钥的位数和 EC 曲线名,以及签名算法。
- 用 Web Crypto API 计算 SHA-1 与 SHA-256 指纹,并支持一键复制。
- 把密钥用途、扩展密钥用途、基本约束和密钥标识符解码成可读名称。
- 完全在浏览器中运行 —— 不上传、不埋点,也不做信任或吊销校验。
适合哪些场景
只要涉及 PEM 区块,这些日常检查就从一串 openssl 命令变成一次粘贴。
-
查看证书何时过期
粘贴生产证书,读出确切的失效日期和剩余天数,从而在故障发生前安排续期,而不是等告警响起才行动。
-
确认主机名覆盖
核对主体备用名称是否包含某个服务对外提供的每个域名和通配符,在它变成浏览器警告之前发现缺失的 SAN。
-
提交前审查 CSR
解码证书签名请求,在发给证书颁发机构之前确认使用者、密钥长度和请求的 SAN 都正确。
-
检查证书链
把叶子、中间和根证书一起粘贴,通过签发者和颁发机构密钥标识符看清各证书如何衔接,排查证书链不完整的错误。
-
比对指纹用于固定
复制 SHA-256 指纹来固定证书,或在部署时把服务器出示的证书与已知正确的值进行比对。
-
审计密钥强度与算法
在安全审查或迁移时,确认证书使用了足够的 RSA 长度或现代 EC 曲线,以及可接受的签名算法。
-
排查 mTLS 与客户端证书
读取客户端证书,检查其扩展密钥用途包含客户端认证,且使用者与你的服务所期望的一致。
-
了解证书包含什么
生成内置示例并逐个字段探索,理解使用者、扩展和密钥用途如何映射到真实的 X.509 结构。
使用建议
解码器展示证书写了什么;下面这些习惯能让这种阅读保持诚实,也让周边处理更安全。
- 把它当作仅供查看的工具。它不验证签名、不构建证书链、不检查吊销,所以解码成功的证书并不等于被信任的证书。
- 固定或比对证书时使用 SHA-256,而不是 SHA-1;SHA-1 仅用于与旧系统的匹配。
- 从主体备用名称而非通用名称确认主机名覆盖 —— 现代客户端在主机名匹配时会忽略 CN。
- 审查 CSR 时,在签发之前确认密钥长度和使用者,因为证书一旦签发,这些值就固定了。
- 关注剩余天数并提前续期;把失效日期纳入监控,而不是依赖手动检查。
- 不要粘贴私钥。本工具处理证书和 CSR,永远不需要私钥,私钥也不应进入任何网页工具。
- 要做真正的信任判断,请用你的平台工具或真实客户端去验证证书链和吊销状态,而不是用字段阅读器。
边界与注意事项
清楚解码器不做什么,才不会把它误当成校验器或完整的 PKI 工具箱。
- 它不验证信任:不做签名验证、不构建证书链,也不判断真实客户端是否会接受该证书。
- 它不通过 CRL 或 OCSP 检查吊销,也从不联系证书颁发机构或任何网络端点。
- “自签名”是一个启发式判断 —— 即使用者是否等于签发者 —— 不是经过验证的密码学属性。
- 它只读取证书和 CSR。CRL、PKCS#7 / PKCS#12 捆绑包和私钥都不在范围内。
- 少数很少使用的扩展只显示 OID 和关键标志,不做完整值解码;常见扩展会被展开。
- 处理在本地完成,但本地安全仍取决于你的设备、浏览器扩展、屏幕共享,以及你把输出粘贴到哪里。
常见问题
常见问题涵盖信任、支持的输入、指纹、CSR,以及是否会上传。
这能验证证书是否有效或被信任吗?
不能。它只解码并展示字段,不验证签名、不构建或校验证书链、不检查吊销。一个证书可以完美解码,却依然不被信任、已过期或已吊销。真正的信任判断请交给操作系统、浏览器或服务器工具。
支持哪些输入格式?
PEM 是常见情形 —— 从 -----BEGIN CERTIFICATE----- 到 -----END CERTIFICATE----- 粘贴即可。也接受原始 Base64 和 DER,并且可以一次粘贴多段 PEM 来解码完整证书链,并在各张证书之间切换。
能解码 CSR 吗?
能。粘贴 PKCS#10 证书签名请求(-----BEGIN CERTIFICATE REQUEST-----),可读取它的使用者、公钥算法与长度、签名算法,以及请求的扩展(例如主体备用名称)。CSR 没有签发者和有效期,所以这些部分会省略。
我该用哪个指纹?
固定和比对优先用 SHA-256。包含 SHA-1 是因为一些旧系统仍会显示它,但不应将其用于安全目的。两者都在本地用 Web Crypto API 基于证书 DER 计算,并可一键复制。
为什么 CA 颁发的证书显示为自签名?
自签名标志是一个启发式判断,只检查使用者是否等于签发者,并不验证签名,因此请把它当作提示而非证据。使用者与签发者不同的证书会显示为非自签名。
我的证书或密钥会被上传到任何地方吗?
不会。解析、指纹计算和内置示例都在浏览器标签页内通过 Web Crypto API 进行。没有任何内容会发送到服务器、CDN 或分析平台,因此处理内部和生产证书都很安全。
可以粘贴私钥吗?
不需要,也不应该。解码器处理的是证书和 CSR,它们本就是公开的。请让私钥远离任何网页工具;本页会忽略私钥区块,而不是处理它。
为什么有些扩展只显示为 OID?
常见扩展 —— 主体备用名称、密钥用途、扩展密钥用途、基本约束和密钥标识符 —— 都会完整解码。不常见或厂商专有的扩展会按 OID 和关键标志列出,让你即便没有友好名称也能看到它们存在。
更多相关工具
继续使用安全工具集:生成密钥对、检查令牌或对值做哈希。下面的工具可以串成一个典型的证书与身份工作流。