RSA 密钥生成与加密工具

免费在线 RSA 私钥生成器与加密解密工具。支持生成 1024/2048/4096 位的 RSA 密钥对,使用 RSA-OAEP 加解密。

算法选择

密钥

加密 / 解密

常见问题解答 (FAQ)

什么是 RSA 非对称加密?

RSA 是一种非对称密码算法。它使用一对不同的密钥:公钥用于加密数据,私钥用于解密。公钥可以公开给任何人,而私钥必须严格保密。它广泛用于安全数据传输和数字签名。

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

RSA-OAEP 是一种更新、更安全的填充方案,强烈建议在新系统中使用。而 RSA-PKCS1 是一种较老的标准,存在某些已知的攻击风险,目前保留主要是为了兼容老旧的遗留系统。

为什么我在加密时会遇到“数据过长 (Message too long)”的错误?

非对称加密算法不适合直接加密大量数据。例如,2048 位的 RSA 密钥最多只能加密大约 200 字节的数据。如果您需要加密长文本或文件,请使用“混合加密”:先用 AES 加密数据,然后再用 RSA 加密该 AES 密钥。

在这个网站生成的私钥安全吗?

绝对安全。本工具的所有密钥生成、加密和解密操作都在您的本地浏览器中完成(通过 Web Crypto API)。您的私钥和明文数据绝不会被发送到我们的服务器上。

算法指南与安全最佳实践

快速参考

算法 类型 适用场景 安全性 密钥长度
RSA-OAEP 加密 通用场景 ⭐⭐⭐⭐⭐ 2048+位
RSA-PKCS1 加密 兼容旧系统 ⭐⭐⭐⭐ 2048+位
RSA-PSS 签名 数字签名 ⭐⭐⭐⭐⭐ 2048+位
ECDH 密钥交换 高性能 ⭐⭐⭐⭐⭐ 256+位
ECDSA 签名 快速签名 ⭐⭐⭐⭐⭐ 256+位
SM2 加密 中国合规 ⭐⭐⭐⭐⭐ 256位

算法选择指南

加密(保护数据)

  • RSA-OAEP + SHA-256: 最佳兼容性,推荐大多数场景使用
  • ECDH + AES-GCM: 最佳性能,适合大数据量

数字签名

  • ECDSA + P-256: 快速高效
  • RSA-PSS + SHA-256: 最大兼容性

中国合规

  • SM2: 中国政府和金融机构强制要求

密钥长度对比

RSA位数 ECC位数 安全等级
1024 - ⚠️ 不推荐
2048 256 ✅ 推荐
3072 384 ✅ 较强
4096 521 ✅ 最强

常见使用场景

1. 安全通信

无需预先共享密钥即可发送加密消息。发送者使用接收者的公钥加密,只有接收者能用私钥解密。

2. 数字签名

证明消息的真实性和完整性。签名者使用私钥,任何人都可以使用公钥验证。

3. 密钥交换

使用ECDH在各方之间安全地交换对称密钥(如AES密钥)。

安全最佳实践

  1. 绝对不要使用原始RSA - 必须使用填充(加密用OAEP)
  2. 使用2048位以上RSA密钥 - 1024位被认为不安全
  3. 优先使用ECC - 相同安全性下性能更好
  4. 使用批准的曲线 - P-256、P-384、P-521是NIST批准的
  5. 使用SHA-256或更强 - 新实现避免使用SHA-1
  6. 保护私钥 - 生产环境使用HSM

故障排除

错误 原因 解决方案
密钥导入失败 格式无效 使用PEM或JWK格式
加密失败 密钥长度太小 使用2048+位密钥
解密失败 密钥对不匹配 确保公钥私钥配对
数据太长 消息超过密钥容量 使用混合加密(RSA + AES)