public class RSASignature extends Object
生成RSA相关密钥,在安装有openssl的linux下执行以下命令,私钥己方保存,公钥对外公开,签名时使用私钥加密,公钥解密
1.生成RSA私钥 openssl genrsa -out rsaprivatekey.pem 1024
2.生成对应RSA公钥 openssl rsa -in rsaprivatekey.pem -pubout -out rsapublickey.pem
3.将RSA私钥转换成PKCS8格式 openssl pkcs8 -topk8 -inform PEM -in rsaprivatekey.pem -outform PEM -nocrypt -out rsaprivatepkcs8.pem
| Modifier and Type | Field and Description |
|---|---|
static String |
ENCODING |
static String |
KEY_ALGORITHM |
static String |
SIGNATURE_ALGORITHM |
static String |
X509 |
| Constructor and Description |
|---|
RSASignature() |
| Modifier and Type | Method and Description |
|---|---|
static String |
getKey(String content) |
static PrivateKey |
getPrivateKey(String key)
获取私钥
|
static PublicKey |
getPublicKey(String key)
获取公钥
|
static String |
readSourceKey(String path)
从文件中读取密钥字符串
|
static String |
signByPrivateKey(String content,
String privateKey)
RSA私钥签名
|
static boolean |
verifySignByPublicKey(String content,
String sign,
String publicKey)
RSA校验签名
|
static boolean |
verifySignByPublicKey(String content,
String sign,
String publicKey,
String encoding)
RSA校验签名
|
public static final String KEY_ALGORITHM
public static final String SIGNATURE_ALGORITHM
public static final String ENCODING
public static final String X509
public static String signByPrivateKey(String content, String privateKey)
content - 待签名数据privateKey - 私钥public static boolean verifySignByPublicKey(String content, String sign, String publicKey)
content - 待签名数据原始串sign - 签名值publicKey - 公钥public static boolean verifySignByPublicKey(String content, String sign, String publicKey, String encoding)
content - 待签名数据原始串sign - 签名值publicKey - 公钥public static PrivateKey getPrivateKey(String key) throws Exception
key - Exceptionpublic static PublicKey getPublicKey(String key) throws Exception
key - ExceptionCopyright © 2018. All rights reserved.