测试jasypt时,提示 没有安装JCE扩展包,下载了一个jce_policy-1_5_0,解决

本文探讨了如何解决使用Jasypt加密时遇到的JCE权限不足问题,涉及JDK版本限制和JCE增强包的下载与替换过程。

 

今天想给自己的应用数据库连接添加一下加密功能,找了一下网上帖子,就想测试一下jasypt ,听说支持hibernate框架。

首先参考网上的例子,写了加密和解密的测试例子

 

忽然发现加解密BasicTextEncryptor  还算正常

 

但是加解密 StrongTextEncryptor 时,竟然提示缺少jce ?

如下:

 

在运行 Java 程序的时候出现下面的异常:

Encryption raised an exception. A possible cause is you are using strong encryption algorithms and you have not installed the Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files in this Java Virtual Machine


后来查资料了解到,JDK 竟然有限制,网上描述如下:

 

Java对JCE的出口是有限制的。

jre\lib\security目录下的local_policy.jar和US_export_policy.jar这两个文件起着至关重要的作用。通常我们下载的jdk安装后,这两个文件都是2.4k左右,事实上无JCE限制的应该是5k左右。 (我下载后也是2.4K左右)

http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-java-plat-419418.html#jce_policy-1.5.0-oth-JPR页面的最下方有一个下载选项,可以下载增强型的JCE包。

我使用的是jdk5,因此我下载的5.0版本

 

我下载下来之后,就把本地的jdk备份了一下,然后替换了local_policy.jar和US_export_policy.jar

说实话,我下载的也是2.4K左右,没有网上说的5K,但是替换后,可以正常使用了

 

附件里面是我下载的包

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值