CSR证书生成工具
编程开发
基于 node-forge 的纯浏览器端 CSR 证书生成工具,支持 RSA/ECDSA 密钥,在线生成 CSR、私钥和自签名证书,所有操作在本地完成
快捷预设点击一键填入表单参数
SSL 证书
标准域名 SSL 证书申请
本地开发
localhost 自签名证书
通配符域名
*.example.com 泛域名
企业内部系统
内部系统自签名证书
IoT 设备
物联网设备认证证书
API 网关
API 服务端 HTTPS 证书
选择密钥类型
RSA 2048
推荐,兼容性好,安全性足够
推荐
RSA 4096
更高安全性,生成较慢
RSA 1024
仅测试用,安全性不足
证书信息填写
所有操作在浏览器本地完成,私钥不会离开你的电脑
工具介绍
本工具基于 node-forge 加密库,在浏览器端直接生成 RSA 密钥对、CSR(证书签名请求)和自签名证书。所有加密运算在本地完成,私钥不会上传到任何服务器,安全可靠。
支持的密钥类型
| RSA 2048 | 推荐,兼容性好,安全性足够,适合大多数场景 | RSA 4096 | 更高安全性,生成较慢,适合高安全需求场景 | RSA 1024 | 仅用于测试兼容,安全性不足,不推荐生产使用 |
|---|
使用步骤
选择密钥类型或快捷预设
点击密钥卡片选择 RSA 密钥长度,或点击快捷预设一键填入表单
填写证书信息
填写 CN(域名)、组织、城市等证书主体信息
生成 CSR
点击生成按钮,浏览器端完成加密运算,生成 CSR、私钥和自签名证书
复制/下载结果
复制 PEM 内容或下载 .csr/.key/.crt 文件,妥善保管私钥
功能特性
注意事项
- RSA 2048 是目前推荐的最低密钥长度,兼顾安全性和性能
- CSR 生成后提交给 CA 机构(如 Let's Encrypt)即可签发正式证书
- 自签名证书仅适用于开发测试环境,生产环境请使用 CA 签发证书
- 私钥请妥善保管,刷新页面后生成的内容将丢失
- 如需多域名支持,请在 CN 中使用通配符格式:*.example.com
- 有效期建议不超过 825 天(约 2 年),符合行业最佳实践
常见问题
Q1: 什么是 CSR?
CSR(Certificate Signing Request,证书签名请求)是向 CA 机构申请 SSL 证书时提交的文件,包含公钥和证书主体信息。CA 使用 CSR 中的公钥签发对应的证书。
Q2: 生成的私钥安全吗?
完全安全。所有密钥生成操作在浏览器本地完成,私钥不会上传到任何服务器。但请注意妥善保管,刷新页面后生成的私钥将丢失。
Q3: RSA 和 ECDSA 有什么区别?
RSA 兼容性最好,密钥较长(2048位起);ECDSA 椭圆曲线密钥更短(256位即可达到同等安全性),生成速度更快,但部分老旧系统可能不支持。
Q4: 自签名证书和 CA 签发的证书有什么区别?
自签名证书由自己签名,浏览器会显示安全警告;CA 签发的证书由受信任的第三方签发,浏览器不会警告。自签名适合开发测试,生产环境建议使用 CA 证书。
Q5: 密钥长度怎么选?
一般用途推荐 RSA 2048,安全性足够且兼容性好;高安全需求可选 RSA 4096 或 ECDSA P-256;RSA 1024 已被认为不安全,不推荐使用。
Q6: node-forge 库加载失败怎么办?
本工具依赖 node-forge 加密库(从 CDN 加载)。如果加载失败,请检查网络连接,或尝试刷新页面。工具会自动尝试多个 CDN 源。
使用场景
| 场景 | 说明 | 建议 |
|---|---|---|
| SSL 证书申请 | 生成 CSR 提交给 CA 机构(如 Let's Encrypt、DigiCert)签发正式 SSL 证书 | 使用 RSA 2048,CN 填写你的域名 |
| 本地开发测试 | 生成自签名证书用于本地 HTTPS 开发环境 | 有效期设为 365 天,CN 填 localhost |
| 内部系统部署 | 为企业内部系统生成自签名证书,无需外部 CA 认证 | CN 填内部域名,组织填写公司名 |
| IoT 设备认证 | 为 IoT 设备生成客户端证书用于双向 TLS 认证 | 使用 ECDSA P-256,密钥更短安全性更高 |
| API 网关配置 | 为 API 网关生成服务端证书,配置 HTTPS 加密通信 | 使用 RSA 2048 + SAN 扩展 |
| 证书学习实验 | 学习 PKI 体系,理解 CSR、私钥、证书之间的关系 | 尝试不同密钥类型,观察生成速度差异 |
技术原理
本工具基于 node-forge 加密库实现,在浏览器端完成 RSA 密钥对生成、CSR 构建和自签名证书创建。所有加密运算在本地完成,私钥不会上传到任何服务器。
CSR(Certificate Signing Request)包含公钥和证书主体信息,提交给 CA 机构后可签发正式 SSL/TLS 证书。自签名证书由自己签名,浏览器会显示安全警告,适合开发测试环境,生产环境请使用 CA 签发的正式证书。