CommandDialog

Command dialog

RSA密钥对生成器

生成RSA密钥对(PEM格式),密钥长度可达4096位。所有操作均在浏览器内完成,您的私钥不会离开设备。

相关工具

查看更多

什么是 RSA 密钥对生成器?

在当今数字化时代,数据安全与隐私保护已成为开发者和企业关注的核心。无论是配置 SSH 登录、GitHub 身份验证,还是开发加密通信软件,一个安全可靠的 RSA 密钥对(RSA Key Pair) 都是不可或缺的基础。

本站提供的 RSA 密钥对生成器是一种利用 RSA 算法产生一对数学相关的密钥——**公钥(Public Key)私钥(Private Key)**的工具,旨在为您提供快速、免费且极度安全的在线 RSA 生成服务,支持 1024、2048 及最高 4096 位的工业级加密强度。

  • 公钥:可以公开给任何人,用于加密数据或验证数字签名。
  • 私钥:必须由本人秘密保存,用于解密公钥加密的数据或创建数字签名。

这种机制被称为非对称加密(Asymmetric Encryption),它是现代互联网安全协议(如 HTTPS/TLS、SSL、SSH)的基石。

RSA 算法的工作原理

RSA 算法基于一个简单的数论事实:将两个大型素数相乘在大规模计算上是容易的,但要将它们的乘积分解回原始素数(大数分解问题)在目前的算力下极其困难。其核心步骤如下:

1. 选择基础质数

随机选取两个互不相等的超大质数 ppqq

2. 计算模数与欧拉函数

  • 计算 nn Modulusnn的二进制长度即密钥长度(如 2048 bit),它是公开的。其计算公式为:

    n=p×qn = p \times q
  • 计算 ϕ(n)\phi(n):根据欧拉函数特性,对于两个质数相乘,其积的欧拉函数值为:

    ϕ(n)=(p1)(q1)\phi(n) = (p - 1)(q - 1)

3. 确定加密指数 ee

选择一个整数 ee,需满足 1<e<ϕ(n)1 < e < \phi(n)eeϕ(n)\phi(n) 互质。通常在实际应用中,为了加速加密运算,ee 常取固定值 6553765537

4. 计算解密指数 dd

通过模逆运算求得 dd,满足以下同余方程:

ed1(modϕ(n))e \cdot d \equiv 1 \pmod{\phi(n)}

这意味着 (ed1)(e \cdot d − 1) 能够被 ϕ(n)\phi(n) 整除。dd 就是私钥的核心部分,只有拥有 dd 的人才能解开由 ee 加密的信息,因此 dd必须严格保密。

5. 形成密钥对

至此,我们得到了所有的核心变量:

  • 公钥 (Public Key):由 (n,e)(n, e) 组成。
  • 私钥 (Private Key):由 (n,d)(n, d) 组成。

6. 加解密运算公式

一旦获取密钥对,数据的安全传输逻辑如下:

  • 加密 (Encryption):将明文 MM 转换为密文 CC

    C=Me(modn)C = M^e \pmod n
  • 解密 (Decryption):将密文 CC 还原为明文 MM

    M=Cd(modn)M = C^d \pmod n

为什么要使用 RSA 加密技术?

  1. 安全性极高:只要密钥长度足够(推荐 2048 位及以上),目前的超级计算机也无法在有效时间内破解。
  2. 无需共享密钥:与对称加密不同,通信双方不需要预先交换秘密密钥,有效降低了密钥泄露风险。
  3. 身份认证:私钥持有人可以通过数字签名证明自己的身份,接收者通过公钥验证,确保信息未被篡改。

为什么选择我们的在线 RSA 生成工具?

在选择在线工具时,安全性是首要考量。我们的工具具有以下显著优势:

安全性与隐私保护优先

您的私钥永远不会离开您的设备。通常在线工具会将密钥生成请求发送到服务器,这意味着服务器所有者可能获取您的私钥。而我们的工具其所有的数学运算都在您的本地浏览器中完成,不上传到任何服务器,从而有效杜绝生成的私钥发生泄漏的风险。

支持多种密钥长度

  • 1024 bit:适用于对安全性要求较低的旧系统(不建议用于敏感数据)。
  • 2048 bit:目前的工业标准,兼顾了安全性和计算效率。
  • 4096 bit:超高强度加密,适用于对安全性有极致要求的长期加密存储。

标准 PEM 格式输出

生成的密钥遵循标准的 PKCS#1 或 PKCS#8 规范,完美兼容 OpenSSH、OpenSSL、Java、Python、Go 等开发环境,可直接用于 .pem.key 文件。

即开即用,一键刷新

页面加载即自动为您生成一套密钥,如果您不满意,点击“刷新”按钮即可瞬间重新生成,操作极其简便。

如何使用该工具生成密钥?

使用本工具只需简单三步:

  1. 选择密钥长度:在下拉菜单中选择您需要的长度(默认为 2048 位)。
  2. 查看生成结果:页面会自动计算并分别显示“生成的私钥”和“生成的公钥”。您也可以通过点击“刷新”按钮,生成新的公私钥对。
  3. 复制或下载:点击文本框上方的“复制”图标或“下载”按钮,将密钥保存到您的本地电脑中。

【安全提示】:请务必妥善保管您的私钥,不要将其发送给任何人或上传到公开代码仓库(如 GitHub)。

最佳实践:混合加密模式

在实际应用中,由于 RSA 涉及大数幂运算,计算量较大,通常不直接用于加密大量原始数据。针对大量数据加密的场景,主流的工业标准操如下:

  1. 对称加密数据:生成一个 随机的“对称密钥”,并通过高效的对称加密算法(如 AES 等)加密大批量明文数据。
  2. 加密对称密钥:使用接收方的 RSA 公钥 对该密钥进行加密。
  3. 发送载荷:将 加密后的数据被 RSA 加密后的密钥一同发送。
  4. 接收解密:接收方首先用自己的 RSA 私钥 解密出对称密钥,再用该密钥还原明文数据。

这种方式完美结合了 RSA 的安全性与 AES 的高效性。

常见问题

2048位和4096位有什么区别?

4096位比2048位更安全,但加密和解密的计算速度会慢一些。目前2048位被认为足够安全,除非你有极高的安全合规要求,否则通常选2048位即可。

2048位密钥目前会被破解吗?

在现有的传统计算机算力下,2048位 RSA 密钥被认为是极其安全的,破解它需要天文数字级别的计算时间。

为什么说在线生成私钥是安全的?

通常不建议在线生成,但我们的工具通过Web Crypto API在您的浏览器本地执行,数据不回传服务器,这与您在本地终端运行命令的安全性是一致的。

我可以使用生成的密钥用于SSH登录吗?

可以。只需将公钥添加到服务器的 ~/.ssh/authorized_keys 文件中,并将私钥保存在本地即可。

生成的PEM格式是什么意思?

PEM (Privacy Enhanced Mail) 是一种文本格式,它将二进制的密钥数据通过Base64编码,方便用户通过文本编辑器查看和复制。

如果我丢失了私钥怎么办?

私钥一旦丢失无法找回,因为RSA算法的单向性决定了无法通过公钥反推私钥。如果丢失,您需要重新生成一对密钥并替换相关的公钥。

为什么我的私钥比公钥长很多?

私钥包含了模数 n、加密指数 e、解密指数 d 以及为了加速运算存储的 p、q 等参数,而公钥通常只包含 n 和 e,因此私钥的数据量更大。

可以直接在命令行生成吗?

可以,使用命令 “openssl genrsa -out private.pem 2048” 即可在本地生成,本工具提供了与其一致的安全性且更便捷。