微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

local_policy.jar和US_export_policy.jar与Unlimited Strength Vs Default不同

如何解决local_policy.jar和US_export_policy.jar与Unlimited Strength Vs Default不同

是否每个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网站上为居住在符合条件的国家/地区的人提供了这些文件的无限制强度版本,表明对加密强度没有限制。居住在符合条件的国家/地区的人可以下载无限强度版本,并用无限强度文件替换强密码罐。问题

  1. 是否每个JDK捆绑包都随附了local_policy.jar和US_export_policy.jar?
  2. 默认local_policy.jar和US_export_policy.jar中的限制是什么?是密钥大小吗?
  3. 如果我需要使用128位密钥,是否需要使用Unlimited Strength Java Cryptography
    Extension

  4. 有没有一种方法可以将这两个jar保留在外部路径中并加载它。因为我有50台服务器,而不是每个JDK都应对,所以我宁愿将其维护在一个中央位置。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。