public class RSA extends Object
1、签名:使用私钥加密,公钥解密。 用于让所有公钥所有者验证私钥所有者的身份并且用来防止私钥所有者发布的内容被篡改,但是不用来保证内容不被他人获得。 2、加密:用公钥加密,私钥解密。 用于向公钥所有者发布信息,这个信息可能被他人篡改,但是无法被他人获得。
RSA公钥/私钥/签名加密解密
罗纳德·李维斯特(Ron [R]ivest)、阿迪·萨莫尔(Adi [S]hamir)和伦纳德·阿德曼(Leonard [A]dleman)
由于非对称加密速度极其缓慢,一般文件不使用它来加密而是使用对称加密,
非对称加密算法可以用来对对称加密的密钥加密,这样保证密钥的安全也就保证了数据的安全
| 构造器和说明 |
|---|
RSA() |
| 限定符和类型 | 方法和说明 |
|---|---|
static byte[] |
decrypt(byte[] data,
byte[] privateKey,
String transformation)
RSA-OAEP解密
|
static String |
decrypt(String data,
String privateKeyBase64)
ECB解密
|
static byte[] |
decryptOAEP(byte[] data,
String privateKeyBase64)
OAEP解密
|
static byte[] |
encrypt(byte[] data,
byte[] publicKey,
String transformation)
RSA-OAEP加密
|
static String |
encrypt(String data,
String publicKeyBase64)
ECB加密
|
static byte[] |
encryptOAEP(byte[] data,
String publicKeyBase64)
OAEP加密
|
static KeyPair |
generateKeyPair(int keySize)
生成RSA密钥对
|
public static String encrypt(String data, String publicKeyBase64)
data - 被加密的bytespublicKeyBase64 - Base64编码后的公钥public static String decrypt(String data, String privateKeyBase64)
data - 被解密的bytesprivateKeyBase64 - Base64编码后的私钥public static byte[] encryptOAEP(byte[] data,
String publicKeyBase64)
data - 被加密的bytespublicKeyBase64 - Base64编码后的公钥public static byte[] decryptOAEP(byte[] data,
String privateKeyBase64)
data - 被解密的bytesprivateKeyBase64 - Base64编码后的私钥public static byte[] encrypt(byte[] data,
byte[] publicKey,
String transformation)
data - 被加密的bytespublicKey - 公钥transformation - 算法/工作模式/填充模式public static byte[] decrypt(byte[] data,
byte[] privateKey,
String transformation)
data - 被解密的bytesprivateKey - 私钥transformation - 算法/工作模式/填充模式public static KeyPair generateKeyPair(int keySize)
keySize - 密钥模(modulus)长度(单位bit)Copyright © 2024. All rights reserved.