证书签名请求生成器
指导
证书签名请求生成器
在您的浏览器中完全生成PKCS#10证书签名请求(CSR)及其对应的RSA私钥。填写主题字段,添加主题备用名称,选择密钥大小,然后点击“生成”。两个文件都会在本地生成——私钥永远不会传输到任何服务器,也不会被记录或存储。
如何使用
- 输入 通用名称(CN) — 通常为完全限定的主机名(例如:
example.com)。此字段是必需的。 - 可选地填写组织、组织单位、国家(两位字母ISO代码)、州、城市和地区以及电子邮件地址。
- 添加任何 主题备用名称,每行一个。DNS名称、IPv4地址、URI和电子邮件地址将自动检测。
- 选择一个 RSA密钥大小 (2048位是行业标准) 和一个 签名哈希 (推荐使用SHA-256)。
- 点击 生成。密钥生成在Web Worker中进行,对于4096位密钥可能需要几秒钟。
- 复制或下载生成的
.key.pem(私钥) 和.csr.pem(CSR)。将CSR提交给您的证书颁发机构,并妥善保管私钥。
特征
- 100% 客户端 — RSA密钥生成在浏览器中通过node-forge和Web Worker完成。没有数据离开您的设备。
- 多种密钥大小 — 2048位、3072位和4096位RSA密钥。
- 签名哈希选择 — SHA-256、SHA-384和SHA-512。
- 完整主题字段 — CN、O、OU、C、ST、L和电子邮件地址。
- 主题备用名称 — 包含DNS、IPv4、URI和电子邮件条目,自动检测类型。
- CSR自验证 — 生成的CSR会在显示前与对应的公钥进行验证,立即发现数据损坏。
- 标准PEM输出 — 与OpenSSL、Apache、nginx、AWS证书管理器、Let’s Encrypt商业API以及所有公共CA直接兼容。
- 免费下载 — 两个文件均可下载,文件名基于通用名称合理生成。
隐私与安全
私钥由浏览器标签页中的Web Crypto支持的RSA实现生成。它永远不会触达我们的服务器,也不会写入任何分析端点,关闭标签页后即消失。请始终将私钥存储在密钥管理器中或以静态加密方式保存。如果私钥被粘贴到聊天工具、日志文件或远程服务中,请将其视为已泄露,并撤销所有由此私钥签发的证书。
常问问题
-
什么是证书签名请求(CSR)?
CSR是一种PKCS#10格式的消息,发送给证书颁发机构以申请数字证书。它包含公钥和关于请求实体的身份信息(主题),并由相应的私钥签名以证明持有者身份。
-
为什么CSR需要私钥?
私钥用于对CSR进行签名,以证明请求者确实控制对应的公钥。没有这个签名,任何人都可以为他人的公钥申请证书。证书颁发机构在签发前会验证该签名。
-
什么是主题备用名称(SANs)?
SANs允许一个证书覆盖多个身份——额外的DNS名称、IP地址、电子邮件地址或URI。现代浏览器在TLS主机名匹配中忽略通用名称字段,完全依赖SAN扩展,因此一个可用的TLS证书必须在SAN中列出所有主机名。
-
2048位RSA在2026年仍然安全吗?
是的。2048位RSA是当前行业基准,被认为在至少到2030年都对经典攻击是安全的。4096位RSA提供了更大的安全余量,但签名速度大约慢5倍。对于新部署,2048位是标准;高安全级别或长期有效的根证书通常使用4096位。
-
我应该选择哪种签名哈希?
SHA-256是通用默认值,被所有现代CA接受。SHA-384和SHA-512提供了略微更强的碰撞抵抗性,但对于典型的网页证书并非必需。完全避免使用SHA-1——自2017年以来所有公共CA均已弃用它。
