BouncyCastle jce安装详解,已测试

原创 2015年07月07日 11:31:50
安装BouncyCastle JCE应该按照如下步骤:

1)下载提供者

BouncyCastle可以从www.bouncycastle.org下载,下载后请将它解压缩。


(http://www.bouncycastle.org/latest_releases.html 下载crypto-145.zip)

2)将JAR文件拷贝到适当位置

如果想让JCE类可以被所有的JAVA应用程序使用,我们需要把JAR文件安装为一个扩展。BouncyCastle提供者没有用于安装为扩展的 JAR类型的文件,但它容易构建。首先将下载的文件展开到JDK的classes目录下(如,将下载的crypto-145.zip解压后,将其中的各文件放入新建的classes文件夹中),然后运行下面的命令将这些文件打包:

首先用cd命令进入classes目录

再c:\...\classes\> jar cvf bouncycastle.jar */.

这样就在classes文件夹中创建的bouncycastle.jar文件。

在Windows中,Java通常安装在两个目录下。一个目录用于开发,包括所有的JDK工具,另一个仅仅是运行环境。JDK本身通常位于 c:\jdk1.6这样的目录下,而JDK运行环境通常位于c:\Program files\JavaSoft\JRE1.6这样的目录下,它们都有库的扩展目录。分别是:c:\jdk1.6.0\jre\lib\ext和c: \Program files\JavaSoft\JRE\1.6\lib\ext,把所要的JAR文件放于对应的目录下(两个目录都要放)。

3)配置安全属性文件

安全属性文件java.security位于和\lib\ext平行的另一个目录\lib\security下,它定义了当前可以使用的加密提供者。如您看到下面的语句:

security.provider.1=sun.security.provider.Sun

security.provider.2=com.sun.rsajca.Provider

它表明本虚拟机有两个加密提供者以及他们的优先级和访问时使用的名称。当需要用到一个加密算法时,虚拟机会依次访问这里列出的提供者,寻找想要的算法,并按这里的优先级顺序使用第一个找到的算法。

我们应该在文件中插入如下行,把新的提供者加入进去(两个java.security都要加入):

security.provider.3=org.bouncycastle.jce.provider.BouncyCastleProvider

注意大小写

当然了,你也可以将前面的加密提供者配置删除,这样就不能使用jdk默认的加密提供者了。

4)测试安装好的程序

我们可以自己写一个测试程序JCEInstallTest .java(用JCE包的API),来判断我们的安装是否成功。程序内容如下:

import javax.crypto.*;

 

public class JCEInstallTest{

public static final String stringToEncrypt="This is a test.";

public static void main(String[] args) throws Exception{

 

System.out.print("Attempting to get a Blowfish key...");

KeyGenerator keyGenerator=KeyGenerator.getInstance("Blowfish");

keyGenerator.init(128);

SecretKey key=keyGenerator.generateKey();

System.out.println("OK");

 

System.out.println("Attempting to get a Cipher and encrypt...");

Cipher cipher=Cipher.getInstance("Blowfish/ECB/PKCS5Padding");

cipher.init(Cipher.ENCRYPT_MODE,key);

 

byte[] cipherText=cipher.doFinal(stringToEncrypt.getBytes("UTF8"));

System.out.println("OK");

 

System.out.println("Test completed successfully.");

}

}

编译:Javac JCEInstallTest.java 无错
运行:Java JCEInstallTest  出结果
即证明bouncycastle jce安装配置正确。
版权声明:本文为博主原创文章,未经博主允许不得转载。

BouncyCastle JCE 的安装配置及在java中的使用

安装BouncyCastle JCE应该按照如下步骤: 1)下载提供者 BouncyCastle可以从www.bouncycastle.org下载,下载后请将它解压缩。 (http://ww...

javax.net.ssl.SSLHandshakeException: org.bouncycastle.jce.exception.ExtCertPathValidatorException: I

javax.net.ssl.SSLHandshakeException: org.bouncycastle.jce.exception.ExtCertPathValidatorException: I...

.bouncycastle.jce.exception.ExtCertPathValidatorException: Could not validate certificate: null

java.security.cert.CertificateException: com.android.org.bouncycastle.jce.exception.ExtCertPathValid...
  • csdnzzu
  • csdnzzu
  • 2017年07月25日 14:44
  • 172

概括描述Ubuntu PHP安装测试(转)

安装Ubuntu PHP5 sudo apt-get install libapache2-mod-PHP5(根据俺的实际测试,这一步似乎不用做了,在上一步已经安装好了,不过还是建议你copy/pas...

LINUX 软件安装(rpm详解)

转自:http://www.51testing.com/?uid-227476-action-viewspace-itemid-99651 在使用Linux系统的过程中,软件包的安装是避免不了的,在...

Yaf 路由配置测试

yaf路由组件有两个部分:路由器(Yaf_Router)和路由协议(Yaf_Route_Abstract) 路由协议事实上主要负责匹配我们预先定义好的路由协议,意思就是我们只有一个路由器,但我们可以有...

java 生成pdf文件(转,测试…

import java.awt.Color; import java.io.FileOutputStream; import org.apache.tools.ant.Main; import c...

web 压力测试(转载)

超频必备 三款“虐”机软件(测试成…

1计算高位圆周率的时间有多长   Superπ   最新版本:1.2   文件大小:53KB   应用平台:Windows 9x/NT/2000/XP   软件类别:免费   汉化版下载地址:http...

文件输入输出流 读写测试断点续传

package com.test; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundEx...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:BouncyCastle jce安装详解,已测试
举报原因:
原因补充:

(最多只允许输入30个字)