admin 管理员组

文章数量: 887021

BC

“Legion of the Bouncy Castle”组织开发的Bouncy Castle包,是一个纯JAVA实现的加密算法包,发布遵循“MIT X Consortium license”,只要在分发软件时包含该许可的副本,即可以无限制地获得该软件及其文档,包括使用、拷贝、修改、合并、出版、分发、再分发,甚至出售软件。
         Bouncy Castle加密包提供的是轻量级的API,这样的设计使得它适合于所有遵循JCE框架的应用环境,包括J2ME。其包含的API大致如下:
        轻量级加密算法的JAVA实现
        一个JCE和JCA的provider
        一个纯JCE 1.2.1的实现
        一个读写ASN.1编码对象的库
        一个版本v1和v3的X.509证书以及PKCS12文件的生成器
        一个S/MIME 和 CMS (PKCS7)的生成/处理器
        一个OCSP (RFC 2560)的生成/处理器
        一个OpenPGP (RFC 2440)的生成/处理器
        一个可供JDK1.4和SUN JCE使用的签名后的jar
        由于 Bouncy Castle Crypto加密包遵循并实现了JCE规范;提供了大量的密码算法,包括最新的椭圆曲线算法、AES等等;集成了对ASN.1和X.509证书以及属性证书的支持,所以本文使用Bouncy Castle Crypto作为提供程序。
       “Legion of the Bouncy Castle”组织及Bouncy Castle Crypto包的官方网站是,可以在此了解加密包开发的最新进展及下载最近的发布版本。

Bouncy Castle加密实现的API包含在一系列的名字空间中,主要的有:
       org.bouncycastle.asn1                               ASN1编码对象库
       org.bouncycastle.bcpg                            OpenPGP/BCPG的生成/处理
       org.bouncycastle.cms                                 CMS(PKCS7) 的生成/处理
       org.bouncycastle.crypto                             密码术的一些概念类(接口)
       org.bouncycastle.jce                                          JCE的实现
       org.bouncycastle.mail.smime                 S/MIME的生成/处理
       org.bouncycastle.ocsp                        OCSP (RFC 2560)的生成/处理
       org.bouncycastle.openpgp               OpenPGP (RFC 2440)的生成/处理
       org.bouncycastle.openssl                          OpenSSL文件的读取
其中:

       org.bouncycastle.jce

       org.bouncycastle.jce.provider
是所有算法的提供者,实现了各种对称、非对称算法,摘要算法,以及X.509证书和PKCS12文件的生成。

本文标签: BC