RSA 在线密钥生成与加密解密工具

RSA 非对称密码 浏览器本地计算
密钥在浏览器本地生成,不会上传到服务器,请勿用于生产环境。
512 / 1024 位 RSA 仅用于兼容旧系统,已不安全,请勿用于生产环境。
裸 Base64
裸 Base64
已去掉头尾与换行,可直接粘贴到 .env、JSON 或配置项中。
加密 / 解密使用公钥加密、私钥解密;签名 / 验签使用私钥签名、公钥验签,两者用途不同,请勿混用。
隐私提示:加解密在浏览器本地完成,请勿使用生产环境的真实密钥与敏感数据。

本地生成 512-4096 位密钥对,7 种导出格式,支持加解密与签名验签

RSA 在线密钥生成与加密解密工具

RSA 是最常见的非对称加密算法:公钥可以公开用于加密与验签,私钥必须保密用于解密与签名。这个工具在浏览器本地生成密钥对,并把加密解密、签名验签两组操作放在同一页面,方便完成一次完整的联调。

密钥生成与导出格式

  • 密钥长度可选 512、1024、2048、3072、4096 位,默认 2048 位;512 与 1024 位标注为仅兼容旧系统,页面会提示其已不安全。
  • 导出格式共 7 种:PKCS#8 与 SPKI 组合(默认)、PKCS#1、OpenSSH 公钥、JWK、XML(.NET RSAKeyValue)、裸 Base64、裸 Hex。
  • 裸 Base64 与裸 Hex 已去掉头尾与换行,可直接粘贴到环境变量、JSON 或配置项中。
  • OpenSSH 格式仅适用于公钥,私钥仍以 PKCS#8 输出,页面对此有说明。

加密与解密

加密解密页签使用公钥加密、私钥解密,填充方式可选 RSA-OAEP(SHA-256)或 PKCS#1 v1.5。RSA 只能加密较短数据,页面会按当前密钥位数与填充方式提示最大可加密字节数:OAEP 大约是密钥字节数减 66,PKCS#1 v1.5 大约是减 11;数据超长时会直接给出提示,建议改为混合加密,即用 AES 加密数据、用 RSA 加密 AES 密钥。

签名与验签

签名验签页签使用私钥签名、公钥验签,算法可选 RSA-PSS(SHA-256)或 PKCS#1 v1.5。签名结果以 Base64 输出,可一键填入验签框复核,验签结果明确给出签名有效或无效。页面同时提醒加解密与签名验签用途不同,请勿混用。

已有密钥导入与错误处理

  • 可直接粘贴已有密钥,支持 PEM、DER、OpenSSH、JWK 与 XML 格式。
  • 需要私钥的操作却传入公钥时会明确提示。
  • 密钥被口令加密时提示先用 openssl 或 PuTTYgen 解密导出后再使用,工具不做在线口令解密。
  • 解密失败会提示检查密钥、填充方式与密文是否匹配;密钥格式无法解析、组件加载失败也都有对应提示。

运行环境要求

密钥生成与所有运算依赖浏览器提供的 WebCrypto 接口,该接口只在安全上下文可用,因此需要在 HTTPS 环境下使用;生成较大位数密钥时页面会显示生成中的等待状态。

使用场景

  • 接口对接前快速准备一对测试密钥并导出为对端需要的格式。
  • 验证签名与验签流程,排查算法或填充方式不一致的问题。
  • 确认不同格式密钥在配置文件中的写法。
  • 非对称加密教学与演示。

隐私与数据安全

密钥对在浏览器本地生成,私钥与明文不会上传服务器,也不会被保存。由于浏览器环境不适合托管生产密钥,请只把这里生成的密钥用于测试与学习;如果只是需要转换已有密钥的格式,请使用 RSA 密钥格式转换工具。

在线生成 RSA 密钥对并完成加解密与签名

RSA 是最常用的非对称算法,公钥加密私钥解密、私钥签名公钥验签。工具在浏览器本地生成密钥对,并把加解密与签名验签放在同一页面。
  • 密钥长度可选 512、1024、2048、3072、4096 位,默认 2048,512 与 1024 位标注为仅兼容旧系统
  • 支持 7 种密钥格式导出:PKCS#8 与 SPKI、PKCS#1、OpenSSH 公钥、JWK、XML、裸 Base64、裸 Hex
  • 加解密支持 RSA-OAEP(SHA-256)与 PKCS#1 v1.5 两种填充,并按密钥位数提示可加密的最大字节数
  • 签名验签支持 RSA-PSS(SHA-256)与 PKCS#1 v1.5,签名以 Base64 输出并可一键填入验签框
  • 可直接粘贴已有的 PEM、DER、OpenSSH、JWK 或 XML 密钥使用
  • 输入公钥却执行私钥操作、密钥被口令加密等情况都会给出明确提示
适合接口对接前的密钥准备、签名验签联调与非对称加密教学。生成与运算依赖浏览器 WebCrypto,需要 HTTPS 环境;密钥在本地生成,不会上传服务器,请勿直接用于生产环境。
评论 0
暂无评论,快来发表第一条评论吧
评论内容不能为空
0/255