跳到主要内容

Java RSA 加密

RSA 是常见的非对称加密算法,使用公钥和私钥完成加密、解密或签名验签。

一、适合场景

  • 数字签名;
  • 密钥交换;
  • 小数据加密;
  • 登录或支付签名。

大数据内容不建议直接用 RSA 加密,通常使用 RSA 交换对称密钥,再用 AES 加密正文。

二、基本流程

三、示例结构

// 1. 生成 KeyPair
// 2. 获取 PublicKey 和 PrivateKey
// 3. 使用 Cipher.getInstance("RSA")
// 4. 加密、解密
// 5. 使用 Signature 完成签名和验签

四、安全建议

  • 私钥不能写进代码仓库。
  • 生产环境密钥要有轮换机制。
  • 签名算法优先使用带哈希的安全组合。
  • 不要自己设计加密协议。