JDK 1.4中与安全有关的部分
- JCE(Java 密码术扩展)
- JSSE(Java 安全套接字扩展)
- JAAS(Java 认证和授权服务)
- JGSS(Java 通用安全性服务 (Java General Security Service))
- CertPath API(Java 证书路径 API (Java Certification Path API))
JDK 1.4 支持下列消息摘要算法(MD5 和 SHA-1 是最常用的算法。):
- MD2 和 MD5,它们都是 128 位算法
- SHA-1 是 160 位算法
- SHA-256、SHA-383 和 SHA-512 提供更长的指纹,大小分别是 256 位、383 位和 512 位
JDK 1.4 支持下列填充技术:
Java 平台支持下列加密"方式":
- ECB(电子密码本 (Electronic Code Book))
- CBC(密码块链接 (Cipher Block Chaining))
- CFB(密码反馈方式 (Cipher Feedback Mode))
- OFB(输出反馈方式 (Output Feedback Mode))
- PCBC(填充密码块链接 (Propagating Cipher Block Chaining))
JDK 1.4 支持下列私钥算法:
- DES。DES(数据加密标准)是由 IBM 于上世纪 70 年代发明的,美国政府将其采纳为标准。它是一种 56 位分组密码。
- TripleDES。该算法被用来解决使用 DES 技术的 56 位时密钥日益减弱的强度,其方法是:使用两个密钥对明文运行 DES 算法三次,从而得到 112 位有效密钥强度。TripleDES 有时称为 DESede(表示加密、解密和加密这三个阶段)。
- AES。AES(高级加密标准)取代 DES 成为美国标准。它是由 Joan Daemen 和 Vincent Rijmen 发明的,也被称为 Rinjdael 算法。它是 128 位分组密码,密钥长度为 128 位、192 位或 256 位。
- RC2、RC4、和 RC5。这些算法来自领先的加密安全性公司 RSA Security。
- Blowfish。这种算法是由 Bruce Schneier 开发的,它是一种具有从 32 位到 448 位(都是 8 的整数倍)可变密钥长度的分组密码,被设计用于在软件中有效实现微处理器。
- PBE。PBE(基于密码的加密)可以与多种消息摘要和私钥算法结合使用。
JDK 1.4 支持下列数字签名算法:
- MD2/RSA
- MD5/RSA
- SHA1/DSA
- SHA1/RSA
JDK 1.4 支持 X.509 数字证书标准。
第三方的库:
Bouncy Castle 提供的bcprov-jdk14-112.jar
- 将jar 文件放在j2sdk1.4.0\jre\lib\ext和Program Files\Java\J2re1.4.0\lib\ext两个目录下
- 在j2sdk1.4.0\jre\lib\security和Program Files\Java\J2re1.4.0\lib\security目录下的java.security文件中,在security.provider.5=sun.security.jgss.SunProvider 行后面增加一行:
security.provider.6=org.bouncycastle.jce.provider.BouncyCastleProvider
参考文献:
JAVA安全性第一部分 密码学基础
Posted by Hilton at March 29, 2004 08:42 AM
| TrackBack