Java使用密钥库相关问题(AES加密)

按照网上帖子使用AES加密的时候显示new BouncyCastleProvider()找不到
原帖地址:http://my.oschina.net/nicsun/blog/95632

我去官网下载了适用的版本bcprov-jdk15on-153.jar
下载地址:http://www.bouncycastle.org/java.html
在右上角有个Java Release 1.53 is now available for download ->下方的latest releases

然后build path之后终于没有说找不到相关类,但是出现如图错误

这里写图片描述

java.lang.SecurityException: The jurisdiction policy files are not signed by a trusted signer!

主要是因为加密文件的版本和jdk的版本加密文件不相同。查看主类(local_policy.jar,US_export_policy.jar)和jdk的加密文件的版本不相同。
参考文章:http://m.oschina.net/blog/279731

local_policy.jar和US_export_policy.jar下载地址(注意jdk版本要对应)

jdk6
http://www.oracle.com/technetwork/java/javase/downloads/jce-6-download-429243.html

JDK7
http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html

JDK8
http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html

如果还有问题,那么试试下面方法
配置安全属性文件
安全属性文件java.security位于和/lib/ext平行的另一个目录/lib/security下,它定义了当前可以使用的加密提供者。找到如下内容:
security.provider.1=sun.security.provider.Sun
security.provider.2=sun.security.rsa.SunRsaSign
它表明本虚拟机有两个加密提供者以及他们的优先级和访问时使用的名称。当需要用到一个加密算法时,虚拟机会依次访问这里列出的提供者,寻找想要的算法,并按这里的优先级顺序使用第一个找到的算法。我们应该在文件中插入新的提供者例如:
security.provider.11=org.bouncycastle.jce.provider.BouncyCastleProvider

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值