1. Glossary
DES: Data Encryption Standard
DSA: Data signal algorithm
2. Message Digest
The algorithm names in this section can be specified when generating an instance of Messagedigest.
MD2: The MD2 message digest algorithm as defined in RFC 1319.
MD5: The MD5 message digest algorithm as defined in RFC 1321.
SHA-1: The Secure Hash Algorithm, as defined in Secure Hash Standard, NIST FIPS 180-1.
Algorithm The length of Digest
MD2, MD5 16bytes
SHA-1 20bytes
SHA-256 32bytes
SHA-384 48bytes
SHA-512 64bytes
3 对称算法
主要算法包括:DES,DESede,Blowfish
4.Diffie-Hellman密钥一致协议
公开密钥密码体制的奠基人Diffie和Hellman所提出的 "指数密钥一致协议"(Exponential Key Agreement Protocol),该协议不要求别的安全性先决条件,允许两名用户在公开媒体上交换信息以生成"一致"的,可以共享的密钥。在JCE的中实现用户alice生成DH类型的密钥对,如果长度用1024生成的时间请,推荐第一次生成后保存DHParameterSpec,以便下次使用直接初始化.使其速度加快.
5.非对称算法和公钥体系
主要算法包括:RSA,DSA
RSA 可用于加密和生成签名,而 DSA 只能用于生成签名
DSA 不使用私钥加密消息摘要,也不使用公钥解密消息摘要。相反,DSA 使用特殊的数学函数生成数字签名,该签名由两个 160 位数字组成,这两个数字是从消息摘要和私钥中派生出来的。
使用非对称密钥算法进行加密速度非常慢,尤其是当数据比较大时;因此它们不能用于大批量加密。大批量加密应该使用对称算法。非对称算法可以用来进行密钥交换。
DSA 也使用公钥来验证签名,但验证过程比 RSA 更复杂。
6.数字签名
MD2withRSA: The MD2 with RSA Encryption signature algorithm which uses the MD2 digest algorithm and RSA to create and verify RSA digital signatures as defined in PKCS #1.
MD5withRSA: The MD5 with RSA Encryption signature algorithm which uses the MD5 digest algorithm and RSA to create and verify RSA digital signatures as defined in PKCS #1.
SHA1withDSA: The DSA with SHA-1 signature algorithm which uses the SHA-1 digest algorithm and DSA to create and verify DSA digital signatures as defined in FIPS PUB 186.
SHA1withRSA: The signature algorithm with SHA-1 and the RSA encryption algorithm as defined in the OSI Interoperability Workshop, using the padding conventions described in PKCS #1.