语言
English English Vietnamese (Tiếng Việt) Vietnamese (Tiếng Việt) Chinese (简体中文) Chinese (简体中文) Portuguese (Brazil) (Português do Brasil) Portuguese (Brazil) (Português do Brasil) Spanish (Español) Spanish (Español) Indonesian (Bahasa Indonesia) Indonesian (Bahasa Indonesia)
RSA 密钥生成器

RSA 密钥生成器

生成 PEM 格式的 RSA 公钥和私钥对,支持自定义密钥大小和算法。

什么是 RSA 密钥生成器?

RSA 密钥生成器创建标准 PEM 格式的RSA 公钥和私钥对,可用于加密、数字签名、SSL/TLS 证书和安全通信。

RSA(Rivest-Shamir-Adleman)是现代密码学中使用最广泛的非对称加密算法之一。它使用数学关联的密钥对:公钥用于加密数据或验证签名,私钥用于解密数据或创建签名。

安全提示:所有密钥生成完全在您的浏览器中使用 Web Crypto API 进行。您的密钥永远不会离开您的设备,也不会传输到任何服务器。

密钥类型说明

RSA-OAEP

最优非对称加密填充

用于加密和解密数据。推荐用于安全数据交换、文件加密和保护敏感信息。

加密

RSASSA-PKCS1-v1_5

带附录的 RSA 签名方案

用于创建和验证数字签名。常见于 JWT 令牌、代码签名、文档认证和 API 安全。

签名

密钥大小

2048 位

适合大多数应用的标准安全级别。

  • 快速生成
  • 行业标准
  • 性能均衡
  • 推荐用于常规用途

3072 位

用于敏感数据保护的增强安全性。

  • 更高的安全边际
  • 面向未来的保护
  • 中等生成时间
  • 适合敏感数据

4096 位

用于高安全环境的最大安全性。

  • 最大保护
  • 长期安全
  • 生成速度较慢
  • 企业级

如何使用 RSA 密钥生成器

使用我们的浏览器工具在几秒内生成安全的 RSA 密钥对。按照以下简单步骤创建您的密码学密钥:

1

选择密钥大小

根据您的安全需求在204830724096 位之间选择。对于大多数应用,2048 位提供充分的安全性和最优性能。

2

选择密钥类型

如果需要加密/解密数据,选择RSA-OAEP;如果需要创建/验证数字签名,选择RSASSA-PKCS1-v1_5

3

选择哈希算法

SHA-256SHA-384SHA-512中选择。SHA-256 推荐用于大多数用例,而 SHA-512 提供最大的哈希强度。

4

生成密钥对

点击"生成密钥对"按钮。您的公钥和私钥将立即创建并以标准 PEM 格式显示。

5

复制或下载

使用复制按钮快速将密钥复制到剪贴板,或下载为 .pem 文件以安全存储并集成到您的项目中。

输出格式

公钥

SPKI(主体公钥信息)格式导出,包装在 PEM 编码中。可安全公开共享用于加密或签名验证。

可共享

私钥

PKCS8格式导出,包装在 PEM 编码中。必须保密和安全。用于解密和签名创建。

保密

指纹

公钥的SHA-256 哈希,以冒号分隔的十六进制格式显示。提供密钥的简便识别和验证。

标识符

您的数据保持私密

安全和隐私是我们的首要任务。所有密钥生成完全在您的浏览器中使用 Web Crypto API 进行:

  • 无服务器处理 - 密钥使用您设备的密码学硬件在本地生成,永远不会通过网络传输
  • 无存储 - 密钥仅存在于您的浏览器会话内存中,直到您明确保存。我们不存储任何内容
  • 无跟踪 - 我们不记录、监控或收集任何关于您的密钥生成活动的信息
  • 开源密码学 - 使用浏览器原生 Web Crypto API,由浏览器供应商审计和维护
100% 客户端:您的密码学密钥完全在您的浏览器中使用行业标准算法生成。没有数据离开您的设备。

功能

多种密钥大小

生成三种行业标准大小的 RSA 密钥以匹配您的安全需求:

  • 2048 位用于日常使用和标准安全
  • 3072 位用于增强保护和合规性
  • 4096 位用于最大安全性和长期保护

灵活的密钥类型

支持两种主要的 RSA 密码学用例:

  • RSA-OAEP用于安全数据加密和解密
  • RSASSA-PKCS1-v1_5用于数字签名和验证
  • 为您的特定应用选择正确的算法

哈希算法选择

从多个密码学哈希函数中选择:

  • SHA-256 - 快速且安全,适合大多数应用
  • SHA-384 - 增强安全性,哈希输出更大
  • SHA-512 - 最大哈希强度,用于关键系统

标准 PEM 输出

密钥以广泛兼容的 PEM 格式导出:

  • 公钥使用SPKI编码标准
  • 私钥使用PKCS8编码标准
  • 与 OpenSSL、SSH 和大多数密码库兼容
  • 可立即用于生产系统

密钥指纹

每个生成的密钥对都包含验证功能:

  • 公钥的SHA-256 指纹
  • 冒号分隔的十六进制格式,便于阅读
  • 密钥的简便识别和验证
  • 检测篡改或密钥替换

复制和下载

保存生成的密钥的多种选项:

  • 一键复制到剪贴板以快速使用
  • 下载为 .pem 文件以安全存储
  • 公钥和私钥的单独文件
  • 立即集成到您的项目中
传统方法

命令行工具

  • 安装 OpenSSL 或类似工具
  • 学习复杂的命令语法
  • 手动格式转换
  • 语法错误的风险
  • 耗时的设置
我们的工具

浏览器生成器

  • 无需安装
  • 简单的可视化界面
  • 自动格式处理
  • 无错误生成
  • 即时结果
由 Web Crypto API 驱动:所有密码学操作使用您浏览器的原生 Web Crypto API,确保行业标准安全性,在可用时具有硬件加速。

常见问题

我应该使用什么密钥大小?

2048 位对大多数应用都足够,是 NIST 和其他安全组织推荐的当前行业标准。它为加密和签名操作提供强大的安全性和最优性能。

如果您需要长期安全(10 年以上)、在高安全环境中工作或有强制要求更大密钥大小的合规要求,请使用4096 位。请注意,更大的密钥有以下权衡:

  • 更长的生成时间(可能需要几秒钟)
  • 更慢的加密/解密操作
  • 更大的密钥文件大小
  • 增加的计算开销

3072 位提供了增强安全性和合理性能之间的平衡。

RSA-OAEP 和 RSASSA-PKCS1-v1_5 有什么区别?

这是两个为不同目的设计的 RSA 方案:

RSA-OAEP(加密)

用于:加密和解密数据

  • 使用公钥加密
  • 使用私钥解密
  • 安全数据交换
  • 文件加密

RSASSA-PKCS1-v1_5(签名)

用于:创建和验证数字签名

  • 使用私钥签名
  • 使用公钥验证
  • JWT 令牌
  • 代码签名

根据您的用例选择:如果需要保护数据机密性,使用 RSA-OAEP。如果需要证明真实性和完整性,使用 RSASSA-PKCS1-v1_5。

生成的密钥是否安全?

是的,绝对安全。密钥使用您浏览器内置的 Web Crypto API 生成,该 API 实现行业标准密码学算法并使用密码学安全的随机数生成器 (CSRNG)。

安全保证:
  • 密码学安全的随机性 - 在可用时使用硬件熵源
  • 无网络传输 - 密钥完全在您的设备上生成
  • 无服务器存储 - 密钥仅存在于您的浏览器会话中
  • 浏览器原生实现 - 由浏览器供应商和安全研究人员审计
  • 行业标准算法 - 遵循 NIST 和 IETF 规范

Web Crypto API 是主要网站用于安全通信的相同技术。您的密钥与由 OpenSSL 等专业命令行工具生成的密钥一样安全。

我可以将这些密钥与 OpenSSL 一起使用吗?

是的,完全兼容。PEM 格式与 SPKI(公钥)和 PKCS8(私钥)编码是 OpenSSL 和几乎所有密码学工具和库使用的标准格式。

您可以直接将生成的密钥与以下工具一起使用:

  • OpenSSL - 命令行密码学工具包
  • SSH - 安全 shell 认证(需要转换)
  • Node.js crypto 模块 - JavaScript 密码学
  • Python 密码学库 - PyCrypto、cryptography.io
  • Java 安全 API - JCE、Bouncy Castle
  • PHP OpenSSL 函数 - openssl_* 函数
  • .NET 密码学 - RSACryptoServiceProvider
  • SSL/TLS 证书 - Web 服务器配置
示例:使用 OpenSSL 验证密钥
# Verify public key
openssl rsa -pubin -in public_key.pem -text -noout

# Verify private key
openssl rsa -in private_key.pem -text -noout

# Extract public key from private key
openssl rsa -in private_key.pem -pubout -out public_key.pem

为什么 4096 位密钥生成需要更长时间?

更大的密钥大小需要找到更大的素数,这在计算上很密集。RSA 密钥生成涉及:

1

生成素数

找到两个大的随机素数

2

素性测试

验证数字确实是素数

3

计算密钥

计算公钥和私钥指数

对于 4096 位密钥,素数的大小是 2048 位密钥的两倍,使素性测试明显更复杂。生成时间取决于您设备的处理能力:

密钥大小 典型时间 复杂度
2048 位 < 1 秒 快速
3072 位 1-3 秒 中等
4096 位 3-10 秒 密集

注意:具有硬件密码学加速的现代设备可能生成密钥更快。移动设备通常比台式计算机花费更长时间。

什么是密钥指纹?

指纹是公钥的 SHA-256 哈希,以冒号分隔的十六进制格式显示(类似于 SSH 密钥指纹)。它用作您的密钥的短的、唯一的标识符。

指纹为什么有用:

  • 密钥验证 - 确认您使用的是正确的公钥
  • 篡改检测 - 验证密钥在传输过程中未被修改
  • 简便比较 - 比较密钥而无需检查完整的 PEM 内容
  • 密钥管理 - 跟踪和识别系统中的多个密钥
  • 安全审计 - 记录和监控正在使用的密钥
示例指纹格式
SHA256:a3:4f:2c:8e:1d:9b:7f:3a:6c:5e:2d:8f:4b:1a:9c:7e:3d:6f:2a:8b:5c:1e:9d:4f:7a:3c:6e:2b:8d:5f:1a:9c

指纹是从公钥密码学派生的,因此对密钥的任何更改(甚至单个比特)都会产生完全不同的指纹。

密钥大小
密钥类型
哈希
公钥 SPKI / PEM
点击“生成密钥对”以创建密钥
私钥 PKCS8 / PEM
点击“生成密钥对”以创建密钥
指纹 (SHA-256)
就绪
仅限客户端
根据安全需求选择密钥大小:2048 位用于常规用途,4096 位用于高安全性
选择RSA-OAEP进行加密/解密,或选择RSASSA-PKCS1-v1_5进行数字签名
使用指纹在共享公钥时验证密钥身份
将密钥下载为.pem 文件,用于 OpenSSL、SSH 和其他工具
密钥完全在您的浏览器中生成 - 永远不会发送到任何服务器
想了解更多? 阅读文档 →
1/6
找不到?用AI自定义工具
开始输入以搜索...
搜索中...
未找到结果
请尝试使用不同的关键词搜索