`
清风送月
  • 浏览: 3372 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

启动应用java.security.InvalidKeyException: Illegal key size 异常

阅读更多

启动web应用时,提示

java.security.InvalidKeyException: Illegal key size 异常

由于项目采用了ace加密,当执行如下操作:

// 设置加密模式为AES的CBC模式
            Cipher cipher = Cipher.getInstance("AES/CBC/NoPadding");
            SecretKeySpec keySpec = new SecretKeySpec(aesKey, "AES");
            IvParameterSpec iv = new IvParameterSpec(aesKey, 0, 16);
            cipher.init(Cipher.ENCRYPT_MODE, keySpec, iv);

            // 加密
            byte[] encrypted = cipher.doFinal(unencrypted);
cipher.init(Cipher.ENCRYPT_MODE, keySpec, iv);

 

如果密钥大于128,会抛出java.security.InvalidKeyException: Illegal key size 异常. 因为密钥长度是受限制的, java运行时环境读到的是受限的policy文件. 文件位于${java_home}/jre/lib/security, 这种限制是因为美国对软件出口的控制.

 

处理办法: 在官方网站下载JCE无限制权限策略文件

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 
下载后解压,可以看到local_policy.jar和US_export_policy.jar以及readme.txt
如果安装了JRE,将两个jar文件放到%JRE_HOME%\lib\security目录下覆盖原来的文件
如果安装了JDK,还要将两个jar文件也放到%JDK_HOME%\jre\lib\security目录下覆盖原来文件

分享到:
评论

相关推荐

    java.security.InvalidKeyException: Illegal key size 更换的Jar包

    为了数据代码在传输过程中的安全,很多时候我们都会将要传输的数据进行...然而,在使用256位密钥加解密的时候,如果不进行特殊处理的话,往往会出现这个异常java.security.InvalidKeyException: Illegal key size。

    解决java.security.InvalidKeyException: Illegal key size

    在Java编程环境中,有时会遇到一个常见的错误:"java.security.InvalidKeyException: Illegal key size"。这个错误通常是由于Java安全策略的限制导致的,尤其是当你尝试使用超过默认限制的密钥长度(例如,超过128位...

    微信支付接口 java.security.InvalidKeyException: Illegal key size

    对接微信接口中因为jdk8解密长度不够 报错 java.security.InvalidKeyException: Illegal key size 替换路径:(记得备份原有的文件) C:\Program Files\Java\jdk1.8.0_131\jre\lib\security

    javaAES错误解决办法java.security.InvalidKeyException:illegal

    如在加密过程中出现下面异常: java.security.InvalidKeyException:illegal Key Size 请将两个jar文件按下列操作完成: 如果安装了JRE,将两个jar文件放到%JRE_HOME%\lib\security目录下覆盖原来的文件;如果安装了...

    java.security.InvalidKeyException:illegal Key Size

    在Java编程环境中,"java.security.InvalidKeyException: illegal Key Size" 是一个常见的错误,通常发生在加密或解密操作中。这个错误表示你试图使用的密钥长度超过了Java默认的安全限制。在给定的上下文中,这个...

    AES加密时抛出java.security.InvalidKeyException: Illegal key size or default parameter

    当在Java环境中使用AES加密时遇到 `java.security.InvalidKeyException: Illegal key size or default parameter` 这个异常,通常意味着密钥的长度超过了Java安全策略所允许的最大值。具体来说: - **非法密钥大小...

    java.security.InvalidKeyException: Illegal key size 解决方案

    在Java编程中,`java.security.InvalidKeyException: Illegal key size` 是一个常见的错误,通常出现在加密或解密操作中,尤其是涉及到对称加密算法如AES(高级加密标准)时。这个错误表明您试图使用的密钥长度不受...

    AES加密出现InvalidKeyException之Illegal key size解决方案

    今日遇到如下错误:java.security.InvalidKeyException: Illegal key size 因为美国法律限制,JAVA默认支持AES 128 Bit 的key, 如果你计划使用 192 Bit 或者 256 Bit key, java complier 会抛出 Illegal key size ...

    java.security.InvalidKeyException: Illegal key size or default

    如果执行上面代码时出现了“java.security.InvalidKeyException: Illegal key size or default parameters ”或类似的错误提示,很可能是超出了JDK 默认的秘钥长度造成的。需要在oracle官网下载local_policy.jar 、...

    jdk 密钥长度受限.zip java.security.InvalidKeyException: Illegal key size

    java.security.InvalidKeyException: Illegal key size; JDK自带的密钥库长度有限制,特殊需求,需要到官网下载 jdk 无限制权限策略文件。 查看博客:https://blog.csdn.net/dling8/article/details/84061948 Java...

    local_policy.jar和US_export_policy.jar资源.zip

    异常原因:如果密钥大于128, 会抛出java.security.InvalidKeyException: Illegal key size 异常. 因为密钥长度是受限制的, java运行时环境读到的是受限的policy文件. 文件位于${java_home}/jre/lib/security, 这种...

    jce_policy-8.7z

    异常java.security.InvalidKeyException:illegal Key Size的解决方案:在官方网站下载JCE无限制权限策略文件(请到官网下载对应的版本, 例如JDK7的下载地址:... 如果安装了JRE,将两个jar文件放到%JRE_HOME% \lib\...

    JDK16的security包

    使用AES加密时,当密钥大于128时,代码会抛出java.security.InvalidKeyException: Illegal key size or default parameters Illegal key size or default parameters是指密钥长度是受限制的,java运行时环境读到的...

    java支持256位加密算法所需jar包

    微信小程序加密解密 出现这个错误:java.security.InvalidKeyException: Illegal key size。JRE中自带的“local_policy.jar ”和“US_export_policy.jar”是支持128位密钥的加密算法,而当我们要使用256位密钥算法的...

    JCE无限制强度加密策略所需插件,解决java.security.InvalidKeyException: Illegal ke

    针对出现**java.security.InvalidKeyException: Illegal key size** 错误 错误是:Sun通过权限文件对加密的长度做了相应的限制,比如默认不允许 256 位密钥加解密,解决方法: 1)jdk1.8.0_15以前的版本,可下载附件...

    微信公众号开发消息加解密工具类

    该工具类主要用于微信公众号消息的加解密,我自己的博客也用到了https://blog.csdn.net/goodbye_youth/article/details/80653132

    UnlimitedJCEPolicyJDK8

    JCE无限制权限策略文件 java.security.InvalidKeyException:illegal Key Size的解决方案 1:下载后解压,可以看到local_policy.jar和US_export_policy.jar以及readme.txt. 2:如果安装了JRE,将两个jar文件放到%JRE_...

    security 1.7

    使用AES加密时,当密钥大于128时,代码会抛出java.security.InvalidKeyException: Illegal key size or default parameters Illegal key size or default parameters是指密钥长度是受限制的,java运行时环境读到的...

    解决illegal Key Size jdk7版本

    当你的应用程序尝试使用超过这些限制的密钥长度时,就会抛出“java.security.InvalidKeyException: Illegal key size”这样的异常。这对于需要更高安全性的应用,或者需要兼容其他系统(如使用了更大密钥长度的...

Global site tag (gtag.js) - Google Analytics