X.509 证书

使用 Ed25519 或 ECDSA 密钥创建自签名 X.509 证书和 CSR,并解析 PEM/DER 格式的证书或 CSR,全部在浏览器本地完成。

输入内容和文件始终留在浏览器中

自签名

格式:CN=Name,O=Org,C=Country

每行一个或用逗号分隔:DNS 名称(example.com、*.example.com)、IP 地址、电子邮件地址。浏览器用这些条目而不是 CN 来核对主机名。

解析

粘贴证书或 CSR(PEM 或 Base64 DER),或加载一个新生成的示例。

生成证书或 CSR,或解析现有证书——PEM 或 JSON 摘要将显示在这里。

本页内容

X.509 证书工具可创建自签名证书和证书签名请求(CSR,PKCS#10),并将现有证书和 CSR 解析为易读的 JSON。密钥在浏览器中生成,文件在浏览器中解析,不会上传任何内容。

详细功能

生成器接收以可分辨名称表示的主题(CN=…,O=…,OU=…,L=…,ST=…,C=XX;只写名称时作为 CN)、密钥算法(Ed25519、ECDSA P-256 或 ECDSA P-384),生成证书时还需要 1 到 36500 天的有效期。生成证书 输出自签名的 -----BEGIN CERTIFICATE----- PEM,生成 CSR 输出 -----BEGIN CERTIFICATE REQUEST----- PEM;两种情况下,新私钥都以 PKCS#8 -----BEGIN PRIVATE KEY----- 块紧随其后。使用者可选名称 (SAN) 字段中的主机名、IP 地址和电子邮件地址(每行一个或用逗号分隔)会写入 subjectAltName 扩展,CSR 则写入 extensionRequest 属性;CN 不会自动复制到其中,因此请列出客户端访问时使用的所有名称。

解析 接受 PEM 或 Base64 DER 格式的证书或 CSR。对于证书,会显示主题、颁发者、notBefore / notAfter、签名算法和公钥算法 OID 以及 Subject Alternative Names,并对已过期或尚未生效、SHA-1 或 MD5 签名、短于 3072 位的 RSA 和弱曲线给出警告。对于 CSR,会显示主题、密钥类型(例如 ECDSA P-256 或 RSA 2048)、签名算法、请求的 SAN、key usage、extended key usage 和 basic constraints,并校验请求自身的签名(signatureValid)。签名校验失败时会给出警告,说明请求在签名后被修改或已损坏。

证书包。 粘贴两个或更多 CERTIFICATE 块(例如 fullchain.pem),解析 会生成证书链报告:为每个证书按名称在包中查找颁发者,并用其公钥验证签名(RSA PKCS#1、ECDSA P-256/P-384、Ed25519)。会标出验证失败的链节、缺失的颁发者、非 CA 颁发者和错误的顺序。每个证书还会显示 SHA-256 和 SHA-1 指纹及序列号。不检查信任库、吊销(CRL/OCSP)和名称约束。

输出可以复制,或下载为 certificate.pem、request.csr.pem、x509.json 或 csr.json。

实用示例

提交给 CA 前检查 CSR:粘贴 CERTIFICATE REQUEST PEM 并点击 解析。OpenSSL 为 api.example.com 生成的请求会显示 "publicKey": "RSA 2048"、请求的 DNS 名称和 IP、"extendedKeyUsage": ["serverAuth", "clientAuth"] 以及 "signatureValid": true。

本地服务的测试证书:输入 CN=api.example.com,O=Example GmbH,C=DE,选择 ECDSA P-256,保留 365 天并点击 生成证书。解析结果显示主题 CN=api.example.com, O=Example GmbH, C=DE,有效期起止日期正好相差 365 天。

查看证书何时过期:粘贴服务器证书(PEM,或配置文件中的 Base64 DER)并点击 解析;notAfter 即到期日期,已过期的证书会在 警告 中标出。

一步生成密钥和 CSR:填写主题,选择密钥算法并点击 生成 CSR;自行保管私钥块,只提交请求块。

如何使用此工具

  1. 填写主题

    输入 主题 (CN),例如 CN=example.com,O=My Org,C=US,或只输入主机名。在 使用者可选名称 (SAN) 中列出客户端会使用的所有主机名和 IP。

  2. 选择密钥和有效期

    选择 密钥算法,生成证书时设置 有效期(天)。

  3. 生成

    点击 生成证书 得到自签名证书,或点击 生成 CSR 得到签名请求。

  4. 解析现有文件

    将证书或 CSR 粘贴到 粘贴 PEM/DER 中并点击 解析,查看字段和 警告。

提示和最佳实践

  • 浏览器不接受用于 TLS 的 Ed25519 证书;凡是要在浏览器中打开的服务,请选择 ECDSA P-256。
  • 自签名证书只在安装了它的地方受信任;公开网站请将 CSR 提交给证书颁发机构。
  • 私钥紧跟在证书或 CSR 下方:请单独保存,切勿发送给 CA。
  • 浏览器忽略 CN,只用 Subject Alternative Names 匹配主机名:请列出访问服务所用的全部名称和 IP,例如 example.com、www.example.com、127.0.0.1。
  • "signatureValid": null 表示该 CSR 的签名算法不支持校验,而不是校验失败。