public class Sign extends BaseAsymmetric<Sign>
Signature
包装类Modifier and Type | Field and Description |
---|---|
protected Signature |
signature
签名,用于签名和验证
|
algorithm, lock, privateKey, publicKey
Constructor and Description |
---|
Sign(SignAlgorithm algorithm)
构造,创建新的私钥公钥对
|
Sign(SignAlgorithm algorithm,
byte[] privateKey,
byte[] publicKey)
构造 私钥和公钥同时为空时生成一对新的私钥和公钥
私钥和公钥可以单独传入一个,如此则只能使用此钥匙来做签名或验证 |
Sign(SignAlgorithm algorithm,
KeyPair keyPair)
构造 私钥和公钥同时为空时生成一对新的私钥和公钥
私钥和公钥可以单独传入一个,如此则只能使用此钥匙来做签名或验证 |
Sign(SignAlgorithm algorithm,
PrivateKey privateKey,
PublicKey publicKey)
构造 私钥和公钥同时为空时生成一对新的私钥和公钥
私钥和公钥可以单独传入一个,如此则只能使用此钥匙来做签名或验证 |
Sign(SignAlgorithm algorithm,
String privateKeyStr,
String publicKeyStr)
构造 私钥和公钥同时为空时生成一对新的私钥和公钥
私钥和公钥可以单独传入一个,如此则只能使用此钥匙来做签名或验证 |
Sign(String algorithm)
构造,创建新的私钥公钥对
|
Sign(String algorithm,
byte[] privateKey,
byte[] publicKey)
构造
私钥和公钥同时为空时生成一对新的私钥和公钥 私钥和公钥可以单独传入一个,如此则只能使用此钥匙来做签名或验证 |
Sign(String algorithm,
KeyPair keyPair)
构造
私钥和公钥同时为空时生成一对新的私钥和公钥 私钥和公钥可以单独传入一个,如此则只能使用此钥匙来做签名或验证 |
Sign(String algorithm,
PrivateKey privateKey,
PublicKey publicKey)
构造
私钥和公钥同时为空时生成一对新的私钥和公钥 私钥和公钥可以单独传入一个,如此则只能使用此钥匙来做签名或验证 |
Sign(String algorithm,
String privateKeyBase64,
String publicKeyBase64)
构造 私钥和公钥同时为空时生成一对新的私钥和公钥
私钥和公钥可以单独传入一个,如此则只能使用此钥匙来做签名或验证 |
Modifier and Type | Method and Description |
---|---|
String |
digestHex(InputStream data,
int bufferLength)
生成签名,并转为16进制字符串
使用默认缓存大小,见 NioUtil.DEFAULT_BUFFER_SIZE |
Signature |
getSignature()
获得签名对象
|
Sign |
init(String algorithm,
PrivateKey privateKey,
PublicKey publicKey)
初始化
|
Sign |
setCertificate(Certificate certificate)
设置
Certificate 为PublicKey如果Certificate是X509Certificate,我们需要检查是否有密钥扩展 |
Sign |
setParameter(AlgorithmParameterSpec params)
设置签名的参数
|
Sign |
setSignature(Signature signature)
设置签名
|
byte[] |
sign(byte[] data)
用私钥对信息生成数字签名
|
byte[] |
sign(InputStream data)
生成签名,使用默认缓存大小,见
NioUtil.DEFAULT_BUFFER_SIZE |
byte[] |
sign(InputStream data,
int bufferLength)
生成签名
|
byte[] |
sign(String data)
生成文件签名
|
byte[] |
sign(String data,
Charset charset)
生成文件签名
|
String |
signHex(byte[] data)
生成签名,并转为16进制字符串
|
String |
signHex(InputStream data)
生成签名,并转为16进制字符串
使用默认缓存大小,见 NioUtil.DEFAULT_BUFFER_SIZE |
String |
signHex(String data)
生成文件签名
|
String |
signHex(String data,
Charset charset)
生成文件签名,并转为16进制字符串
|
boolean |
verify(byte[] data,
byte[] sign)
用公钥检验数字签名的合法性
|
getKeyByType, getPrivateKey, getPrivateKeyBase64, getPublicKey, getPublicKeyBase64, initKeys, setKey, setPrivateKey, setPublicKey
protected Signature signature
public Sign(SignAlgorithm algorithm)
algorithm
- SignAlgorithm
public Sign(String algorithm)
algorithm
- 算法public Sign(SignAlgorithm algorithm, String privateKeyStr, String publicKeyStr)
algorithm
- SignAlgorithm
privateKeyStr
- 私钥Hex或Base64表示publicKeyStr
- 公钥Hex或Base64表示public Sign(SignAlgorithm algorithm, byte[] privateKey, byte[] publicKey)
algorithm
- SignAlgorithm
privateKey
- 私钥publicKey
- 公钥public Sign(SignAlgorithm algorithm, KeyPair keyPair)
algorithm
- SignAlgorithm
keyPair
- 密钥对(包括公钥和私钥)public Sign(SignAlgorithm algorithm, PrivateKey privateKey, PublicKey publicKey)
algorithm
- SignAlgorithm
privateKey
- 私钥publicKey
- 公钥public Sign(String algorithm, String privateKeyBase64, String publicKeyBase64)
algorithm
- 非对称加密算法privateKeyBase64
- 私钥Base64publicKeyBase64
- 公钥Base64public Sign(String algorithm, byte[] privateKey, byte[] publicKey)
algorithm
- 算法privateKey
- 私钥publicKey
- 公钥public Sign(String algorithm, KeyPair keyPair)
algorithm
- 算法,见SignAlgorithm
keyPair
- 密钥对(包括公钥和私钥)public Sign(String algorithm, PrivateKey privateKey, PublicKey publicKey)
algorithm
- 算法privateKey
- 私钥publicKey
- 公钥public Sign init(String algorithm, PrivateKey privateKey, PublicKey publicKey)
init
in class BaseAsymmetric<Sign>
algorithm
- 算法privateKey
- 私钥publicKey
- 公钥public Sign setParameter(AlgorithmParameterSpec params)
params
- AlgorithmParameterSpec
public byte[] sign(String data, Charset charset)
data
- 被签名数据charset
- 编码public byte[] sign(String data)
data
- 被签名数据public String signHex(String data, Charset charset)
data
- 被签名数据charset
- 编码public byte[] sign(byte[] data)
data
- 加密数据public String signHex(byte[] data)
data
- 被签名数据public String signHex(InputStream data)
NioUtil.DEFAULT_BUFFER_SIZE
data
- 被签名数据public byte[] sign(InputStream data)
NioUtil.DEFAULT_BUFFER_SIZE
data
- InputStream
数据流public String digestHex(InputStream data, int bufferLength)
NioUtil.DEFAULT_BUFFER_SIZE
data
- 被签名数据bufferLength
- 缓存长度,不足1使用 NioUtil.DEFAULT_BUFFER_SIZE
做为默认值public byte[] sign(InputStream data, int bufferLength)
data
- InputStream
数据流bufferLength
- 缓存长度,不足1使用 NioUtil.DEFAULT_BUFFER_SIZE
做为默认值public boolean verify(byte[] data, byte[] sign)
data
- 数据sign
- 签名public Sign setSignature(Signature signature)
signature
- 签名对象 Signature
AsymmetricCrypto
public Sign setCertificate(Certificate certificate)
Certificate
为PublicKeycertificate
- Certificate
Copyright © 2024. All rights reserved.