加密算法
-
BASE64编码
-
非可逆加密
2.1、MD(Message Digest)消息摘要算法MD2(JDK) MD4(BC) MD5(JDK)
2.2、SHA(Secure Hash Algorithm)安全散列算法
SHA-1(JDK) SHA-224(BC) SHA-256(JDK) SHA-384(JDK) SHA-512(JDK)
2.3、 MAC(Message Authentication Code)含有密钥的散列函数算法
HmacMD2(BC) HmacMD4(BC) HmacMD5(JDK) HmacSHA1(JDK) HmacSHA224(BC) HmacSHA256(JDK) HmacSHA384(JDK) HmacSHA512(JDK)
-
对称加密
3.1、DESData Encryption Standard)数据加密标准
DES56(JDK) DES64(BC) 3DES112(JDK) 3DES168(默认,JDK) 3DES112(BC) 3DES112(默认,BC)
3.2、AES(Advanced Encryption Standard)高级加密标准
AES-128(默认,JDK) AES-192(JDK) AES-256(JDK) AES-128(默认,BC) AES-192(BC) AES-256(BC)
3.3、 PBE(Password Based Encryption)基于口令加密
PBE
3.4、 IDEA
IDEA
-
非对称加密
4.1、 DH(Diffie-Hellman)密钥交换算法
DH 512-1024(默认1024,JDK)
4.2、 RSA(基于因子分解)
RSA1024(JDK) RSA2048(BC)
4.3、Elgamal(基于离散对数)
Elgamal1024
4.4、ECC(Elliptical Curve Cryptography)椭圆曲线加密
-
数字签名
5.1、RSA数字签名MD2withRSA(默认1024,JDK) MD5withRSA(默认1024,JDK) SHA1withRSA(默认1024,JDK) SHA224withRSA(默认2048,BC) SHA256withRSA(默认2048,BC) SHA384withRSA(默认2048,BC) SHA512withRSA(默认2048,BC) RIPEMD128withRSA(默认2048,BC) RIPEMD160withRSA(默认2048,BC)
5.2、DSA(Digital Signature Algorithm)数字签名算算法
SHA1withDSA(默认1024,JDK) SHA224withDSA(默认1024,BC) SHA256withDSA(默认1024,BC) SHA384withDSA(默认1024,BC) SHA512withDSA(默认1024,BC)
5.3、ECDSA(Elliptic Curve Digital Signature Algorithm)椭圆曲线数字签名算法
NONEwithECDSA(默认256) RIPEMD160withECDSA(默认256,BC) SHA1withECDSA(默认256) SHA224withECDSA(默认256,BC) SHA256withECDSA(默认256) SHA384withECDSA(默认256) SHA512withECDSA(默认256)