public final class SecureUtil
extends java.lang.Object
| 限定符和类型 | 字段和说明 |
|---|---|
static int |
DEFAULT_KEY_SIZE
默认密钥字节数
RSA/DSA
Default Keysize 1024
Keysize must be a multiple of 64, ranging from 512 to 1024 (inclusive).
|
| 构造器和说明 |
|---|
SecureUtil() |
| 限定符和类型 | 方法和说明 |
|---|---|
static void |
addProvider(java.security.Provider provider)
增加加密解密的算法提供者,默认优先使用,例如:
addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider());
|
static AES |
aes()
AES加密,生成随机KEY。
|
static AES |
aes(byte[] key)
AES加密
例: AES加密:aes(key).encrypt(data) AES解密:aes(key).decrypt(data) |
static javax.crypto.Cipher |
createCipher(java.lang.String algorithm)
创建
Cipher |
static javax.crypto.Mac |
createMac(java.lang.String algorithm)
创建
Mac |
static java.security.MessageDigest |
createMessageDigest(java.lang.String algorithm)
创建
MessageDigest |
static byte[] |
decode(java.lang.String key)
解码字符串密钥,可支持的编码如下:
1.
|
static DES |
des()
DES加密,生成随机KEY。
|
static DES |
des(byte[] key)
DES加密
例: DES加密:des(key).encrypt(data) DES解密:des(key).decrypt(data) |
static DESede |
desede()
DESede加密(又名3DES、TripleDES),生成随机KEY。
|
static DESede |
desede(byte[] key)
DESede加密(又名3DES、TripleDES)
Java中默认实现为:DESede/ECB/PKCS5Padding 例: DESede加密:desede(key).encrypt(data) DESede解密:desede(key).decrypt(data) |
static void |
disableBouncyCastle()
强制关闭Bouncy Castle库的使用,全局有效
|
static java.lang.String |
generateAlgorithm(AsymmetricAlgorithm asymmetricAlgorithm,
DigestAlgorithm digestAlgorithm)
生成算法,格式为XXXwithXXX
|
static javax.crypto.SecretKey |
generateDESKey(java.lang.String algorithm,
byte[] key)
生成
SecretKey |
static javax.crypto.SecretKey |
generateKey(java.lang.String algorithm)
生成
SecretKey,仅用于对称加密和摘要算法密钥生成 |
static javax.crypto.SecretKey |
generateKey(java.lang.String algorithm,
byte[] key)
生成
SecretKey,仅用于对称加密和摘要算法密钥生成 |
static javax.crypto.SecretKey |
generateKey(java.lang.String algorithm,
int keySize)
生成
SecretKey,仅用于对称加密和摘要算法密钥生成 |
static javax.crypto.SecretKey |
generateKey(java.lang.String algorithm,
java.security.spec.KeySpec keySpec)
生成
SecretKey,仅用于对称加密和摘要算法 |
static java.security.KeyPair |
generateKeyPair(java.lang.String algorithm)
生成用于非对称加密的公钥和私钥,仅用于非对称加密
密钥对生成算法见:https://docs.oracle.com/javase/7/docs/technotes/guides/security/StandardNames.html#KeyPairGenerator |
static java.security.KeyPair |
generateKeyPair(java.lang.String algorithm,
java.security.spec.AlgorithmParameterSpec params)
生成用于非对称加密的公钥和私钥
密钥对生成算法见:https://docs.oracle.com/javase/7/docs/technotes/guides/security/StandardNames.html#KeyPairGenerator |
static java.security.KeyPair |
generateKeyPair(java.lang.String algorithm,
byte[] seed,
java.security.spec.AlgorithmParameterSpec params)
生成用于非对称加密的公钥和私钥
密钥对生成算法见:https://docs.oracle.com/javase/7/docs/technotes/guides/security/StandardNames.html#KeyPairGenerator |
static java.security.KeyPair |
generateKeyPair(java.lang.String algorithm,
int keySize)
生成用于非对称加密的公钥和私钥
密钥对生成算法见:https://docs.oracle.com/javase/7/docs/technotes/guides/security/StandardNames.html#KeyPairGenerator |
static java.security.KeyPair |
generateKeyPair(java.lang.String algorithm,
int keySize,
byte[] seed)
生成用于非对称加密的公钥和私钥
密钥对生成算法见:https://docs.oracle.com/javase/7/docs/technotes/guides/security/StandardNames.html#KeyPairGenerator |
static javax.crypto.SecretKey |
generatePBEKey(java.lang.String algorithm,
char[] key)
生成PBE
SecretKey |
static java.security.PrivateKey |
generatePrivateKey(java.security.KeyStore keyStore,
java.lang.String alias,
char[] password)
生成私钥,仅用于非对称加密
|
static java.security.PrivateKey |
generatePrivateKey(java.lang.String algorithm,
byte[] key)
生成私钥,仅用于非对称加密
算法见:https://docs.oracle.com/javase/7/docs/technotes/guides/security/StandardNames.html#KeyFactory |
static java.security.PrivateKey |
generatePrivateKey(java.lang.String algorithm,
java.security.spec.KeySpec keySpec)
生成私钥,仅用于非对称加密
算法见:https://docs.oracle.com/javase/7/docs/technotes/guides/security/StandardNames.html#KeyFactory |
static java.security.PublicKey |
generatePublicKey(java.lang.String algorithm,
byte[] key)
生成公钥,仅用于非对称加密
算法见:https://docs.oracle.com/javase/7/docs/technotes/guides/security/StandardNames.html#KeyFactory |
static java.security.PublicKey |
generatePublicKey(java.lang.String algorithm,
java.security.spec.KeySpec keySpec)
生成公钥,仅用于非对称加密
算法见:https://docs.oracle.com/javase/7/docs/technotes/guides/security/StandardNames.html#KeyFactory |
static java.security.Signature |
generateSignature(AsymmetricAlgorithm asymmetricAlgorithm,
DigestAlgorithm digestAlgorithm)
生成签名对象,仅用于非对称加密
|
static java.lang.String |
getAlgorithmAfterWith(java.lang.String algorithm)
获取用于密钥生成的算法
获取XXXwithXXX算法的后半部分算法,如果为ECDSA或SM2,返回算法为EC |
static java.security.cert.Certificate |
getCertificate(java.security.KeyStore keyStore,
java.lang.String alias)
获得 Certification
|
static HMac |
hmac(HmacAlgorithm algorithm,
byte[] key)
创建HMac对象,调用digest方法可获得hmac值
|
static HMac |
hmac(HmacAlgorithm algorithm,
javax.crypto.SecretKey key)
创建HMac对象,调用digest方法可获得hmac值
|
static HMac |
hmac(HmacAlgorithm algorithm,
java.lang.String key)
创建HMac对象,调用digest方法可获得hmac值
|
static HMac |
hmacMd5()
HmacMD5加密器,生成随机KEY
例: HmacMD5加密:hmacMd5().digest(data) HmacMD5加密并转为16进制字符串:hmacMd5().digestHex(data) |
static HMac |
hmacMd5(byte[] key)
HmacMD5加密器
例: HmacMD5加密:hmacMd5(key).digest(data) HmacMD5加密并转为16进制字符串:hmacMd5(key).digestHex(data) |
static HMac |
hmacMd5(java.lang.String key)
HmacMD5加密器
例: HmacMD5加密:hmacMd5(key).digest(data) HmacMD5加密并转为16进制字符串:hmacMd5(key).digestHex(data) |
static HMac |
hmacSha1()
HmacSHA1加密器,生成随机KEY
例: HmacSHA1加密:hmacSha1().digest(data) HmacSHA1加密并转为16进制字符串:hmacSha1().digestHex(data) |
static HMac |
hmacSha1(byte[] key)
HmacSHA1加密器
例: HmacSHA1加密:hmacSha1(key).digest(data) HmacSHA1加密并转为16进制字符串:hmacSha1(key).digestHex(data) |
static HMac |
hmacSha1(java.lang.String key)
HmacSHA1加密器
例: HmacSHA1加密:hmacSha1(key).digest(data) HmacSHA1加密并转为16进制字符串:hmacSha1(key).digestHex(data) |
static MD5 |
md5()
MD5加密
例: MD5加密:md5().digest(data) MD5加密并转为16进制字符串:md5().digestHex(data) |
static java.lang.String |
md5(java.io.File dataFile)
MD5加密文件,生成16进制MD5字符串
|
static java.lang.String |
md5(java.io.InputStream data)
MD5加密,生成16进制MD5字符串
|
static java.lang.String |
md5(java.lang.String data)
MD5加密,生成16进制MD5字符串
|
static RC4 |
rc4(java.lang.String key)
RC4算法
|
static java.security.cert.Certificate |
readCertificate(java.lang.String type,
java.io.InputStream in)
读取Certification文件
Certification为证书文件 see: http://snowolf.iteye.com/blog/391931 |
static java.security.cert.Certificate |
readCertificate(java.lang.String type,
java.io.InputStream in,
char[] password,
java.lang.String alias)
读取Certification文件
Certification为证书文件 see: http://snowolf.iteye.com/blog/391931 |
static java.security.KeyStore |
readJKSKeyStore(java.io.InputStream in,
char[] password)
读取密钥库(Java Key Store,JKS) KeyStore文件
KeyStore文件用于数字证书的密钥对保存 see: http://snowolf.iteye.com/blog/391931 |
static java.security.KeyStore |
readKeyStore(java.lang.String type,
java.io.InputStream in,
char[] password)
读取KeyStore文件
KeyStore文件用于数字证书的密钥对保存 see: http://snowolf.iteye.com/blog/391931 |
static java.security.cert.Certificate |
readX509Certificate(java.io.InputStream in)
读取X.509 Certification文件
Certification为证书文件 see: http://snowolf.iteye.com/blog/391931 |
static java.security.cert.Certificate |
readX509Certificate(java.io.InputStream in,
char[] password,
java.lang.String alias)
读取X.509 Certification文件
Certification为证书文件 see: http://snowolf.iteye.com/blog/391931 |
static RSA |
rsa()
创建RSA算法对象
生成新的私钥公钥对 |
static RSA |
rsa(byte[] privateKey,
byte[] publicKey)
创建RSA算法对象
私钥和公钥同时为空时生成一对新的私钥和公钥 私钥和公钥可以单独传入一个,如此则只能使用此钥匙来做加密或者解密 |
static RSA |
rsa(java.lang.String privateKeyBase64,
java.lang.String publicKeyBase64)
创建RSA算法对象
私钥和公钥同时为空时生成一对新的私钥和公钥 私钥和公钥可以单独传入一个,如此则只能使用此钥匙来做加密或者解密 |
static Digester |
sha1()
SHA1加密
例: SHA1加密:sha1().digest(data) SHA1加密并转为16进制字符串:sha1().digestHex(data) |
static java.lang.String |
sha1(java.io.File dataFile)
SHA1加密文件,生成16进制SHA1字符串
|
static java.lang.String |
sha1(java.io.InputStream data)
SHA1加密,生成16进制SHA1字符串
|
static java.lang.String |
sha1(java.lang.String data)
SHA1加密,生成16进制SHA1字符串
|
static Digester |
sha256()
SHA256加密
例: SHA256加密:sha256().digest(data) SHA256加密并转为16进制字符串:sha256().digestHex(data) |
static java.lang.String |
sha256(java.io.File dataFile)
SHA256加密文件,生成16进制SHA256字符串
|
static java.lang.String |
sha256(java.io.InputStream data)
SHA256加密,生成16进制SHA256字符串
|
static java.lang.String |
sha256(java.lang.String data)
SHA256加密,生成16进制SHA256字符串
|
static Sign |
sign(SignAlgorithm algorithm)
创建签名算法对象
生成新的私钥公钥对 |
static Sign |
sign(SignAlgorithm algorithm,
byte[] privateKey,
byte[] publicKey)
创建Sign算法对象
私钥和公钥同时为空时生成一对新的私钥和公钥 私钥和公钥可以单独传入一个,如此则只能使用此钥匙来做签名或验证 |
static Sign |
sign(SignAlgorithm algorithm,
java.lang.String privateKeyBase64,
java.lang.String publicKeyBase64)
创建签名算法对象
私钥和公钥同时为空时生成一对新的私钥和公钥 私钥和公钥可以单独传入一个,如此则只能使用此钥匙来做签名或验证 |
static java.lang.String |
signParams(DigestAlgorithm digestAlgorithm,
java.util.Map<?,?> params)
对参数做签名
参数签名为对Map参数按照key的顺序排序后拼接为字符串,然后根据提供的签名算法生成签名字符串 拼接后的字符串键值对之间无符号,键值对之间无符号,忽略null值 |
static java.lang.String |
signParams(DigestAlgorithm digestAlgorithm,
java.util.Map<?,?> params,
java.lang.String separator,
java.lang.String keyValueSeparator,
boolean isIgnoreNull)
对参数做签名
参数签名为对Map参数按照key的顺序排序后拼接为字符串,然后根据提供的签名算法生成签名字符串 |
static java.lang.String |
signParams(SymmetricCrypto crypto,
java.util.Map<?,?> params)
对参数做签名
参数签名为对Map参数按照key的顺序排序后拼接为字符串,然后根据提供的签名算法生成签名字符串 拼接后的字符串键值对之间无符号,键值对之间无符号,忽略null值 |
static java.lang.String |
signParams(SymmetricCrypto crypto,
java.util.Map<?,?> params,
java.lang.String separator,
java.lang.String keyValueSeparator,
boolean isIgnoreNull)
对参数做签名
参数签名为对Map参数按照key的顺序排序后拼接为字符串,然后根据提供的签名算法生成签名字符串 |
static java.lang.String |
signParamsMd5(java.util.Map<?,?> params)
对参数做md5签名
参数签名为对Map参数按照key的顺序排序后拼接为字符串,然后根据提供的签名算法生成签名字符串 拼接后的字符串键值对之间无符号,键值对之间无符号,忽略null值 |
static java.lang.String |
signParamsSha1(java.util.Map<?,?> params)
对参数做Sha1签名
参数签名为对Map参数按照key的顺序排序后拼接为字符串,然后根据提供的签名算法生成签名字符串 拼接后的字符串键值对之间无符号,键值对之间无符号,忽略null值 |
static java.lang.String |
signParamsSha256(java.util.Map<?,?> params)
对参数做Sha256签名
参数签名为对Map参数按照key的顺序排序后拼接为字符串,然后根据提供的签名算法生成签名字符串 拼接后的字符串键值对之间无符号,键值对之间无符号,忽略null值 |
static java.lang.String |
simpleUUID()
已过时。
|
public static final int DEFAULT_KEY_SIZE
RSA/DSA Default Keysize 1024 Keysize must be a multiple of 64, ranging from 512 to 1024 (inclusive).
public static javax.crypto.SecretKey generateKey(java.lang.String algorithm)
SecretKey,仅用于对称加密和摘要算法密钥生成algorithm - 算法,支持PBE算法SecretKeypublic static javax.crypto.SecretKey generateKey(java.lang.String algorithm,
int keySize)
SecretKey,仅用于对称加密和摘要算法密钥生成algorithm - 算法,支持PBE算法keySize - 密钥长度SecretKeypublic static javax.crypto.SecretKey generateKey(java.lang.String algorithm,
byte[] key)
SecretKey,仅用于对称加密和摘要算法密钥生成algorithm - 算法key - 密钥,如果为null 自动生成随机密钥SecretKeypublic static javax.crypto.SecretKey generateDESKey(java.lang.String algorithm,
byte[] key)
SecretKeyalgorithm - DES算法,包括DES、DESede等key - 密钥SecretKeypublic static javax.crypto.SecretKey generatePBEKey(java.lang.String algorithm,
char[] key)
SecretKeyalgorithm - PBE算法,包括:PBEWithMD5AndDES、PBEWithSHA1AndDESede、PBEWithSHA1AndRC2_40等key - 密钥SecretKeypublic static javax.crypto.SecretKey generateKey(java.lang.String algorithm,
java.security.spec.KeySpec keySpec)
SecretKey,仅用于对称加密和摘要算法algorithm - 算法keySpec - KeySpecSecretKeypublic static java.security.PrivateKey generatePrivateKey(java.lang.String algorithm,
byte[] key)
algorithm - 算法key - 密钥PrivateKeypublic static java.security.PrivateKey generatePrivateKey(java.lang.String algorithm,
java.security.spec.KeySpec keySpec)
algorithm - 算法keySpec - KeySpecPrivateKeypublic static java.security.PrivateKey generatePrivateKey(java.security.KeyStore keyStore,
java.lang.String alias,
char[] password)
keyStore - KeyStorealias - 别名password - 密码PrivateKeypublic static java.security.PublicKey generatePublicKey(java.lang.String algorithm,
byte[] key)
algorithm - 算法key - 密钥PublicKeypublic static java.security.PublicKey generatePublicKey(java.lang.String algorithm,
java.security.spec.KeySpec keySpec)
algorithm - 算法keySpec - KeySpecPublicKeypublic static java.security.KeyPair generateKeyPair(java.lang.String algorithm)
algorithm - 非对称加密算法KeyPairpublic static java.security.KeyPair generateKeyPair(java.lang.String algorithm,
int keySize)
algorithm - 非对称加密算法keySize - 密钥模(modulus )长度KeyPairpublic static java.security.KeyPair generateKeyPair(java.lang.String algorithm,
int keySize,
byte[] seed)
algorithm - 非对称加密算法keySize - 密钥模(modulus )长度seed - 种子KeyPairpublic static java.security.KeyPair generateKeyPair(java.lang.String algorithm,
java.security.spec.AlgorithmParameterSpec params)
algorithm - 非对称加密算法params - AlgorithmParameterSpecKeyPairpublic static java.security.KeyPair generateKeyPair(java.lang.String algorithm,
byte[] seed,
java.security.spec.AlgorithmParameterSpec params)
algorithm - 非对称加密算法seed - 种子params - AlgorithmParameterSpecKeyPairpublic static java.lang.String getAlgorithmAfterWith(java.lang.String algorithm)
algorithm - XXXwithXXX算法public static java.lang.String generateAlgorithm(AsymmetricAlgorithm asymmetricAlgorithm, DigestAlgorithm digestAlgorithm)
asymmetricAlgorithm - 非对称算法digestAlgorithm - 摘要算法public static java.security.Signature generateSignature(AsymmetricAlgorithm asymmetricAlgorithm, DigestAlgorithm digestAlgorithm)
asymmetricAlgorithm - AsymmetricAlgorithm 非对称加密算法digestAlgorithm - DigestAlgorithm 摘要算法Signaturepublic static java.security.KeyStore readJKSKeyStore(java.io.InputStream in,
char[] password)
in - InputStream 如果想从文件读取.keystore文件,使用 FileUtil.getInputStream(java.io.File) 读取password - 密码KeyStorepublic static java.security.KeyStore readKeyStore(java.lang.String type,
java.io.InputStream in,
char[] password)
type - 类型in - InputStream 如果想从文件读取.keystore文件,使用 FileUtil.getInputStream(java.io.File) 读取password - 密码KeyStorepublic static java.security.cert.Certificate readX509Certificate(java.io.InputStream in,
char[] password,
java.lang.String alias)
in - InputStream 如果想从文件读取.cer文件,使用 FileUtil.getInputStream(java.io.File) 读取password - 密码alias - 别名KeyStorepublic static java.security.cert.Certificate readX509Certificate(java.io.InputStream in)
in - InputStream 如果想从文件读取.cer文件,使用 FileUtil.getInputStream(java.io.File) 读取KeyStorepublic static java.security.cert.Certificate readCertificate(java.lang.String type,
java.io.InputStream in,
char[] password,
java.lang.String alias)
type - 类型,例如X.509in - InputStream 如果想从文件读取.cer文件,使用 FileUtil.getInputStream(java.io.File) 读取password - 密码alias - 别名KeyStorepublic static java.security.cert.Certificate readCertificate(java.lang.String type,
java.io.InputStream in)
type - 类型,例如X.509in - InputStream 如果想从文件读取.cer文件,使用 FileUtil.getInputStream(java.io.File) 读取Certificatepublic static java.security.cert.Certificate getCertificate(java.security.KeyStore keyStore,
java.lang.String alias)
keyStore - KeyStorealias - 别名Certificatepublic static AES aes(byte[] key)
AES加密:aes(key).encrypt(data) AES解密:aes(key).decrypt(data)
key - 密钥SymmetricCryptopublic static DES des(byte[] key)
DES加密:des(key).encrypt(data) DES解密:des(key).decrypt(data)
key - 密钥DESpublic static DESede desede()
DESede对象或者使用相同KEYDESede加密:desede().encrypt(data) DESede解密:desede().decrypt(data)
DESedepublic static DESede desede(byte[] key)
DESede加密:desede(key).encrypt(data) DESede解密:desede(key).decrypt(data)
key - 密钥DESedepublic static MD5 md5()
MD5加密:md5().digest(data) MD5加密并转为16进制字符串:md5().digestHex(data)
Digesterpublic static java.lang.String md5(java.lang.String data)
data - 数据public static java.lang.String md5(java.io.InputStream data)
data - 数据public static java.lang.String md5(java.io.File dataFile)
dataFile - 被加密文件public static Digester sha1()
Digesterpublic static java.lang.String sha1(java.lang.String data)
data - 数据public static java.lang.String sha1(java.io.InputStream data)
data - 数据public static java.lang.String sha1(java.io.File dataFile)
dataFile - 被加密文件public static Digester sha256()
Digesterpublic static java.lang.String sha256(java.lang.String data)
data - 数据public static java.lang.String sha256(java.io.InputStream data)
data - 数据public static java.lang.String sha256(java.io.File dataFile)
dataFile - 被加密文件public static HMac hmac(HmacAlgorithm algorithm, java.lang.String key)
algorithm - HmacAlgorithmkey - 密钥,如果为null生成随机密钥HMacpublic static HMac hmac(HmacAlgorithm algorithm, byte[] key)
algorithm - HmacAlgorithmkey - 密钥,如果为null生成随机密钥HMacpublic static HMac hmac(HmacAlgorithm algorithm, javax.crypto.SecretKey key)
algorithm - HmacAlgorithmkey - 密钥SecretKey,如果为null生成随机密钥HMacpublic static HMac hmacMd5(java.lang.String key)
key - 加密密钥,如果为null生成随机密钥HMacpublic static HMac hmacMd5(byte[] key)
key - 加密密钥,如果为null生成随机密钥HMacpublic static HMac hmacMd5()
HMacpublic static HMac hmacSha1(java.lang.String key)
key - 加密密钥,如果为null生成随机密钥HMacpublic static HMac hmacSha1(byte[] key)
key - 加密密钥,如果为null生成随机密钥HMacpublic static HMac hmacSha1()
HMacpublic static RSA rsa(java.lang.String privateKeyBase64, java.lang.String publicKeyBase64)
privateKeyBase64 - 私钥Base64publicKeyBase64 - 公钥Base64RSApublic static RSA rsa(byte[] privateKey, byte[] publicKey)
privateKey - 私钥publicKey - 公钥RSApublic static Sign sign(SignAlgorithm algorithm)
algorithm - 签名算法Signpublic static Sign sign(SignAlgorithm algorithm, java.lang.String privateKeyBase64, java.lang.String publicKeyBase64)
algorithm - 签名算法privateKeyBase64 - 私钥Base64publicKeyBase64 - 公钥Base64Signpublic static Sign sign(SignAlgorithm algorithm, byte[] privateKey, byte[] publicKey)
privateKey - 私钥publicKey - 公钥Signpublic static java.lang.String signParams(SymmetricCrypto crypto, java.util.Map<?,?> params)
crypto - 对称加密算法params - 参数public static java.lang.String signParams(SymmetricCrypto crypto, java.util.Map<?,?> params, java.lang.String separator, java.lang.String keyValueSeparator, boolean isIgnoreNull)
crypto - 对称加密算法params - 参数separator - entry之间的连接符keyValueSeparator - kv之间的连接符isIgnoreNull - 是否忽略null的键和值public static java.lang.String signParamsMd5(java.util.Map<?,?> params)
params - 参数public static java.lang.String signParamsSha1(java.util.Map<?,?> params)
params - 参数public static java.lang.String signParamsSha256(java.util.Map<?,?> params)
params - 参数public static java.lang.String signParams(DigestAlgorithm digestAlgorithm, java.util.Map<?,?> params)
digestAlgorithm - 摘要算法params - 参数public static java.lang.String signParams(DigestAlgorithm digestAlgorithm, java.util.Map<?,?> params, java.lang.String separator, java.lang.String keyValueSeparator, boolean isIgnoreNull)
digestAlgorithm - 摘要算法params - 参数separator - entry之间的连接符keyValueSeparator - kv之间的连接符isIgnoreNull - 是否忽略null的键和值@Deprecated public static java.lang.String simpleUUID()
IdUtil.simpleUUID()public static void addProvider(java.security.Provider provider)
addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider());
provider - 算法提供者public static byte[] decode(java.lang.String key)
1. Hex(16进制)编码 1. Base64编码
key - 被解码的密钥字符串public static javax.crypto.Cipher createCipher(java.lang.String algorithm)
Cipheralgorithm - 算法public static java.security.MessageDigest createMessageDigest(java.lang.String algorithm)
MessageDigestalgorithm - 算法public static javax.crypto.Mac createMac(java.lang.String algorithm)
Macalgorithm - 算法public static void disableBouncyCastle()
Copyright © 2019. All rights reserved.