public abstract class AbstractEncryptCoder extends java.lang.Object implements EncryptCoder
| 限定符和类型 | 字段和说明 |
|---|---|
static java.nio.charset.Charset |
DEFAULT_CHARSET |
static int |
MAX_BLOCK_SIZE
最大加密区块长度1M
|
static java.lang.String |
UNSUPPORT_MSG
未实现具体方法异常提示
|
| 构造器和说明 |
|---|
AbstractEncryptCoder() |
| 限定符和类型 | 方法和说明 |
|---|---|
protected java.lang.String |
bytes2Str(byte[] data)
字节转字符串
|
byte[] |
decrypt(byte[] ciphertext)
解密数据 文件
|
double |
decrypt(double ciphertext,
long seed,
int decimal)
解密数字
|
java.lang.String |
decrypt(java.lang.String ciphertext)
解密数据 字符串
|
protected byte[] |
doFinal(javax.crypto.Cipher cipher,
byte[] data)
按照MAX_BLOCK_SIZE分区运算加解密数据
|
byte[] |
encrypt(byte[] data)
加密文件类型的二进制数据
|
double |
encrypt(double data,
long seed)
加密小数
|
java.lang.String |
encrypt(java.lang.String data)
加密字符串
|
protected java.lang.String |
getSecretKey(java.lang.String keyId,
SupplierExtend<java.lang.String> keyGenerator)
从配置中获取密钥
|
protected byte[] |
mergeBytes(byte[] header,
byte[] data)
合并两个数组
|
protected byte[] |
removeHeader(byte[] ciphertext)
去掉头部标识的字节
|
java.lang.String |
signature(byte[] data)
文件类型加签
|
java.lang.String |
signature(java.lang.String data,
java.lang.String seed)
字符串签名
|
boolean |
signatureCheck(byte[] data,
java.lang.String signature)
文件验签
|
boolean |
signatureCheck(java.lang.String data,
java.lang.String signature,
java.lang.String seed) |
protected byte[] |
str2Bytes(java.lang.String data)
字符串转字节数组
|
public static final java.nio.charset.Charset DEFAULT_CHARSET
public static final java.lang.String UNSUPPORT_MSG
public static final int MAX_BLOCK_SIZE
protected byte[] doFinal(javax.crypto.Cipher cipher,
byte[] data)
throws javax.crypto.BadPaddingException,
javax.crypto.IllegalBlockSizeException
cipher - data - javax.crypto.BadPaddingExceptionjavax.crypto.IllegalBlockSizeExceptionprotected byte[] str2Bytes(java.lang.String data)
data - protected java.lang.String bytes2Str(byte[] data)
data - protected byte[] mergeBytes(byte[] header,
byte[] data)
header - 头部标识区域data - 密文数据protected byte[] removeHeader(byte[] ciphertext)
ciphertext - protected java.lang.String getSecretKey(java.lang.String keyId,
SupplierExtend<java.lang.String> keyGenerator)
throws CoderException
keyId - CoderExceptionpublic byte[] encrypt(byte[] data)
throws CoderException
EncryptCoderencrypt 在接口中 EncryptCoderdata - 待加密明文CoderExceptionpublic java.lang.String encrypt(java.lang.String data)
throws CoderException
EncryptCoderencrypt 在接口中 EncryptCoderdata - 待加密明文
具体的加密操作:正文/附件/日志等CoderExceptionpublic double encrypt(double data,
long seed)
throws CoderException
EncryptCoderencrypt 在接口中 EncryptCoderdata - 待加密数字seed - 参与混肴的盐,通常是用户idCoderExceptionpublic byte[] decrypt(byte[] ciphertext)
throws CoderException
EncryptCoderdecrypt 在接口中 EncryptCoderciphertext - 密文CoderExceptionpublic double decrypt(double ciphertext,
long seed,
int decimal)
throws CoderException
EncryptCoderdecrypt 在接口中 EncryptCoderciphertext - 待解密数字seed - 参与混肴的盐,通常是用户iddecimal - 保留的有效小数位CoderExceptionpublic java.lang.String decrypt(java.lang.String ciphertext)
throws CoderException
EncryptCoderdecrypt 在接口中 EncryptCoderciphertext - 密文CoderExceptionpublic java.lang.String signature(byte[] data)
throws CoderException
EncryptCodersignature 在接口中 EncryptCoderdata - 待签名的原始数据CoderExceptionpublic boolean signatureCheck(byte[] data,
java.lang.String signature)
throws CoderException
EncryptCodersignatureCheck 在接口中 EncryptCoderCoderExceptionpublic java.lang.String signature(java.lang.String data,
java.lang.String seed)
throws CoderException
EncryptCodersignature 在接口中 EncryptCoderdata - 签名数据seed - 盐 保证同样字符串签名后的密文不一样之前是用户的用户登录名加密CoderExceptionpublic boolean signatureCheck(java.lang.String data,
java.lang.String signature,
java.lang.String seed)
throws CoderException
signatureCheck 在接口中 EncryptCoderdata - 待签名数据signature - 签名后的密文seed - 盐 保证同样字符串签名后的密文不一样CoderException