# CSR 解析：在线检查证书签名请求

> 在浏览器里解析并校验 CSR：主体、SAN、密钥类型和长度、签名算法、请求的扩展，提交给 CA 之前发现常见错误。

Source: https://ssl.sh/zh/tools/csr-decoder/
Last updated: 2026-11-10

粘贴 CSR，查看它请求的域名、密钥和扩展，校验签名，在提交给 CA 之前发现错误。

CSR 解析工具读取证书签名请求，告诉你它到底要求 CA 在证书里写什么。粘贴以 `-----BEGIN CERTIFICATE REQUEST-----` 开头的 CSR（或选择 `.csr` 文件），工具会列出各字段、校验签名并提示常见错误。全部在浏览器里运行。

## 怎么用

1. 粘贴 CSR 或选择文件。
2. 粘贴完整后自动解析，也可以点 **解析**。
3. 有警告就重新生成 CSR，再提交给 CA。

## 检查哪些内容

- **签名**：CSR 用私钥自签名，校验失败说明内容被改过或损坏了（复制时少了字符很常见）。
- **SAN**：浏览器只信任 SAN 里的名字。没有 SAN 的 CSR 只能指望 CA 把 CN 复制进去，大多数 CA 会这样做，但不是全部。
- **密钥强度**：公开 CA 会拒绝小于 2048 位的 RSA 密钥。
- **签名哈希**：SHA-1 已经不被接受，要用 SHA-256 或更强的算法。
- **OU**：2022 年 9 月起公开 CA 不再写入 OU，可能直接拒绝。

## 下一步

证书签发后，用[私钥匹配工具](https://ssl.sh/zh/tools/key-matcher/)确认它和你保存的私钥是一对，再用[证书解析工具](https://ssl.sh/zh/tools/certificate-decoder/)核对签发的域名。要重新生成 CSR，用 [CSR 生成器](https://ssl.sh/zh/tools/csr-generator/)。


## FAQ

**CSR 里有私钥吗？**

没有。CSR 只包含公钥，并用私钥签了名，可以放心发给 CA 或粘贴到云厂商的证书申请页面。

**CA 说我的 CSR 无效，要查什么？**

确认复制完整，包括 BEGIN 和 END 两行；密钥至少是 RSA 2048 或 ECDSA P-256；域名写法正确。有些 CA 会拒绝带 OU 或含有它不支持字符的 CSR。

**CSR 生成后还能改吗？**

不能，一改签名就失效。用同一个私钥重新生成（openssl req -new -key ...），或者换个新私钥重新生成。
