是否每个JDK捆绑包都随附了local_policy.jar和US_export_policy.jar?
对。自1.4版本以来,JCE已集成到Java 2 SDK中。
默认local_policy.jar和US_export_policy.jar中的限制是什么?是密钥大小吗?
是的,这是密钥大小。我的东西超过128位是不允许的。您可以使用以下方法检查算法的最大大小int maxKeyLen =Cipher.getMaxAllowedKeyLength('AES');
如果我需要使用128位密钥,是否需要使用Unlimited Strength Java Cryptography Extension
对于128位密钥加密,我认为您不需要无限强度Java密码扩展罐。默认的应该可以正常工作。
有没有一种方法可以将这两个jar保留在外部路径中并加载它。因为我有50台服务器,而不是每个JDK都应对,所以我宁愿将其维护在一个中央位置。
如上所述,如果您使用128位密钥进行加密,则不会发生这种情况,但是如果您使用更长的密钥(例如256),则需要获得无限强度的jar并将其替换为$JAVA_HOME/jre/lib/security。因为它在JDK/ JRE本身中,所以即使在分布式服务器中也无法使其集中化。您将需要在每台服务器上更换它。
请参考oracles参考指南。
另外,如果您不想执行此操作,则可以参考以下主题的替代方法-
[部署应用程序时如何避免安装“ Unlimited Strength”JCE策略文件?](http://codingdict.com/questions/148407
反射是线程中用户的解决方法。虽然我不建议您查看它。
我已经在帖子中总结了所有内容。您也可以参考-
如何安装Java密码学扩展(JCE)无限强度管辖区策略文件
解决方法在Java平台文档中http://www.oracle.com/technetwork/java/javase/jrereadme-182762.html。关于有关的评论
/lib/security/local_policy.jar /lib/security/US_export_policy.jar
无限强度Java密码学扩展由于某些国家/地区的导入控制限制,Java SE开发工具包和Java SE运行时环境附带的Java密码扩展(JCE)策略文件允许使用强而有限的加密。
JDK网站上为居住在符合条件的国家/地区的人提供了这些文件的无限制强度版本,表明对加密强度没有限制。居住在符合条件的国家/地区的人可以下载无限强度版本,并用无限强度文件替换强密码罐。问题
是否每个JDK捆绑包都随附了local_policy.jar和US_export_policy.jar?默认local_policy.jar和US_export_policy.jar中的限制是什么?是密钥大小吗?如果我需要使用128位密钥,是否需要使用Unlimited Strength Java Cryptography Extension
有没有一种方法可以将这两个jar保留在外部路径中并加载它。因为我有50台服务器,而不是每个JDK都应对,所以我宁愿将其维护在一个中央位置。