public class RSAUtils extends Object
| 构造器和说明 |
|---|
RSAUtils() |
| 限定符和类型 | 方法和说明 |
|---|---|
static boolean |
checkByPublicKey(String data,
String sign,
String publicKey)
公钥验证签名
|
static String |
decryptByPrivateKey(String data,
String privateKey)
私钥解密
|
static String |
decryptByPrivateKey(String data,
String privateKey,
String fillMode)
私钥解密
|
static String |
decryptByPrivateKeyByWx(String data,
String privateKey) |
static String |
encryptByPrivateKey(String data,
String privateKey)
私钥签名
|
static String |
encryptByPublicKey(String data,
String publicKey)
公钥加密
|
static String |
encryptByPublicKey(String data,
String publicKey,
String fillMode)
公钥加密
|
static String |
encryptByPublicKeyByWx(String data,
String publicKey) |
static Map<String,String> |
getKeys()
生成公钥和私钥
|
static Map<String,String> |
getModulusAndKeys()
获取模数和密钥
|
static RSAPrivateKey |
getPrivateKey(String modulus,
String exponent)
使用模和指数生成RSA私钥
注意:【此代码用了默认补位方式,为RSA/None/PKCS1Padding,不同JDK默认的补位方式可能不同,如Android默认是RSA
/None/NoPadding】
|
static String |
getPrivateKeyStr(PrivateKey privateKey) |
static RSAPublicKey |
getPublicKey(String modulus,
String exponent)
使用模和指数生成RSA公钥
注意:【此代码用了默认补位方式,为RSA/None/PKCS1Padding,不同JDK默认的补位方式可能不同,如Android默认是RSA
/None/NoPadding】
|
static String |
getPublicKeyStr(PublicKey publicKey) |
static PrivateKey |
loadPrivateKey(String privateKeyStr)
从字符串中加载私钥
加载时使用的是PKCS8EncodedKeySpec(PKCS#8编码的Key指令)。 |
static PublicKey |
loadPublicKey(String publicKeyStr)
从字符串中加载公钥
|
static void |
main(String[] args) |
public static RSAPublicKey getPublicKey(String modulus, String exponent)
modulus - 模exponent - 公钥指数public static RSAPrivateKey getPrivateKey(String modulus, String exponent)
modulus - 模exponent - 指数public static String encryptByPublicKey(String data, String publicKey) throws Exception
data - publicKey - Exceptionpublic static String encryptByPublicKeyByWx(String data, String publicKey) throws Exception
Exceptionpublic static String encryptByPublicKey(String data, String publicKey, String fillMode) throws Exception
data - publicKey - fillMode - 填充模式Exceptionpublic static String encryptByPrivateKey(String data, String privateKey) throws Exception
data - privateKey - Exceptionpublic static boolean checkByPublicKey(String data, String sign, String publicKey) throws Exception
data - sign - publicKey - Exceptionpublic static String decryptByPrivateKey(String data, String privateKey) throws Exception
data - privateKey - Exceptionpublic static String decryptByPrivateKeyByWx(String data, String privateKey) throws Exception
Exceptionpublic static String decryptByPrivateKey(String data, String privateKey, String fillMode) throws Exception
data - privateKey - fillMode - 填充模式Exceptionpublic static PublicKey loadPublicKey(String publicKeyStr) throws Exception
publicKeyStr - 公钥数据字符串Exception - 加载公钥时产生的异常public static PrivateKey loadPrivateKey(String privateKeyStr) throws Exception
privateKeyStr - Exceptionpublic static String getPrivateKeyStr(PrivateKey privateKey) throws Exception
Exceptionpublic static String getPublicKeyStr(PublicKey publicKey) throws Exception
ExceptionCopyright © 2019. All rights reserved.