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
| 限定符和类型 | 字段和说明 |
|---|---|
static String |
ENCODING |
static String |
KEY_ALGORITHM |
static String |
SIGNATURE_ALGORITHM |
static String |
X509 |
| 构造器和说明 |
|---|
RSASignature() |
| 限定符和类型 | 方法和说明 |
|---|---|
static PrivateKey |
getPrivateKey(String key)
获取私钥
|
static PublicKey |
getPublicKey(String key)
获取公钥
|
static String |
readSourceKey(String path)
从文件中读取密钥字符串
unSafe
|
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 PrivateKey getPrivateKey(String key) throws Exception
key - Exceptionpublic static PublicKey getPublicKey(String key) throws Exception
key - Exceptionpublic 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 - 公钥Copyright © 2017. All rights reserved.