Java几乎各种常用加密算法都能找到对应的实现。因为美国的出口限制,Sun通过权限文件(local_policy.jar、US_export_policy.jar)做了相应限制。因此存在一些问题:
●密钥长度上不能满足需求(如:java.security.InvalidKeyException: Illegal key size or default parameters);
●部分算法未能支持,如MD4、SHA-224等算法;
●API使用起来还不是很方便;一些常用的进制转换辅助工具未能提供,如Base64编码转换、十六进制编码转换等工具。
●Oracle在其官方网站上提供了无政策限制权限文件(Unlimited Strength Jurisdiction Policy Files),我们只需要将其部署在JRE环境中,就可以解决限制问题。
应用网上别人的方法;
Jar下载:
可以用下面的地址,或者用文章下的附件地址。
JDK6
解决Jar下载地址:https://pan.baidu.com/s/1eRYPGf4 密码: y9bd
JDK7
解决Jar下载地址: https://pan.baidu.com/s/1gfenrcn 密码: 5n4y
JDK8
解决Jar下载地址:https://pan.baidu.com/s/1cwErKE 密码: 2u6m
Jar替换步骤:
把里面的两个jar包:local_policy.jar
和 US_export_policy.jar
替换掉原来 Jdk 安装目录 $\Java\jre{6|7|8}\lib\security
下的两个jar
包接可以了。
比如我的Java JDK
替换全目录为:C:\Java\jdk1.8.0_66\jre\lib\security
那就把2个Jar Copy覆盖到当前目录即可。
网友评论