JCE 基础
JAVA安全体系结构分析
下图显示了JAVA安全体系结构的标准组件。在图的下半部分,是JAVA2安全体系结构的核心和JAVA加密体系结构(JCA,Java Cryptography Architecture),两者构成JAVA2平台所带的JAVA2安全平台。在图的上半部分,是独立于JAVA2平台而又与JAVA2平台的不同方面相关的JAVA安全扩展。
从上图可以看出,Java平台为安全和加密服务提供了两组API:JCA和JCE。 JCA (Java Cryptography Architecture)提供基本的加密框架,如证书、数字签名、消息摘要和密钥对产生器; JCE在JCA的基础上作了扩展,包括加密算法、密钥交换、密钥产生和消息鉴别服务等接口。JCA与JCE
JCA/JCE并不执行各种算法,它们只是连接应用和实际算法实现程序的一组接口。软件开发商根据JCE接口,将各种算法实现后,打包成一个Provider,可以动态地加到Java运行环境中。由于美国出口控制规定,JCA 是可出口的(JCA和一个Sun的默认实现包括在Java2中),但是JCE对部分国家是限制出口的。因此,要实现一个完整的安全结构,就需要一个或多个第三方厂商提供的JCE产品,称为安全供应者。BouncyCastle JCE就是其中的一个安全供应者。
安全供应者是承担特定安全机制的实现的第三方。有些供应者是完全免费的,而另一些供应者则需要付费。提供安全供应者的公司有IBM,Bouncy Castle等,Sun提供了如何实现开发人员自己供应者的细节。Bouncy Castle提供了可以在J2ME/J2EE/J2SE平台得到支持的API,而且他的API是免费的。详情参见:http://www.bouncycastle.org/。
hongbo781202,又名HongSoft,职业程序员,研究领域:1)基于工作流的BPM系统研究2)基于JAVA的信息安全
技术.欢迎和大家讨论JAVA相关各方面技术和市场问题 hongbosoftware@163.com