RSA密钥对生成
使用浏览器 Web Crypto API 生成 RSA 密钥对(2048 / 4096 位),并以 PEM 格式输出。
使用说明
- 1 选择密钥长度(2048 / 4096)
- 2 点击生成按钮
- 3 复制公钥和私钥(PEM 格式)
相关工具
关于此工具
RSA 密钥对生成工具使用浏览器内置的 Web Crypto API 在客户端本地生成 RSA 公私钥对,支持 2048 位和 4096 位两种长度,以标准 PEM 格式(-----BEGIN PUBLIC KEY-----)输出,可直接用于 SSH、TLS 证书、JWT 签名等场景。
适用场景:开发环境快速生成测试用的密钥对、配置 GitHub SSH 公钥认证、生成自签名证书的密钥材料、为 JWT RS256 签名方案生成密钥、以及在 API 集成中配置非对称加密通信。
与在服务器或本地安装 OpenSSL 工具生成密钥相比,本工具无需任何安装步骤,私钥在浏览器内存中生成后直接显示,不经过网络传输,安全性与本地命令行工具相当,适合临时快速生成测试密钥的场景。
常见问题
RSA 2048 位和 4096 位哪个更安全,应该用哪个? +
4096 位密钥安全强度更高,破解所需算力远超 2048 位,适合长期保存的密钥或高价值场景(如根 CA 证书)。2048 位在 2030 年前仍被 NIST 认为足够安全,且加解密速度更快。一般 HTTPS 网站和 SSH 登录用 2048 位即可,长期存档用 4096 位。
生成的私钥安全吗?会被工具收集吗? +
安全。本工具使用浏览器原生 Web Crypto API 在本地生成密钥,私钥只存在于当前浏览器内存中,页面关闭即销毁,不会上传到任何服务器。建议生成后立即复制保存到安全的密钥管理系统,不要截图或发送到聊天工具。
PEM 格式是什么,怎么使用? +
PEM(Privacy Enhanced Mail)是以 Base64 编码密钥数据并用 -----BEGIN/END----- 包裹的文本格式,是 OpenSSL、Node.js、Java 等主流工具的默认密钥格式。将生成的 PEM 文本保存为 .pem 文件,或直接粘贴到 SSH 配置、Nginx 配置或代码中使用。
这个工具生成的密钥可以用于生产环境吗? +
可以作为临时测试密钥,但生产环境的密钥对建议使用 OpenSSL 或硬件安全模块(HSM)生成,并按照所在组织的密钥管理规范存储。生产私钥绝对不应在联网浏览器中处理,应在隔离的安全环境中生成。
如何用公钥验证私钥是否匹配? +
在命令行中使用 OpenSSL 验证:运行 openssl rsa -in private.pem -pubout 提取公钥,再与已有公钥对比。如果两者一致,说明密钥对匹配。也可以用私钥签名一段数据,再用公钥验签,成功则说明配对正确。