微信APIV3加解密:Illegal key size

Posted william_zhao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信APIV3加解密:Illegal key size相关的知识,希望对你有一定的参考价值。

 

今天在开发微信APIV3接口的时候遇到的,微信第三方平台解密报的错误,原因:

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

解决方案:去官方下载JCE无限制权限策略文件。

 

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目录下覆盖原来文件。

 

引用:https://www.cnblogs.com/xiaopotian/p/10151326.html

以上是关于微信APIV3加解密:Illegal key size的主要内容,如果未能解决你的问题,请参考以下文章

微信 AES 解密报错 Illegal key size 三种解决办法

java.security.InvalidKeyException Illegal key size

java.security.InvalidKeyException: Illegal key size or default parameters

Java 解密错误InvalidKeyException: Illegal key size解决方法

java 加密 解密 Illegal key size

微信小程序获取session_key和openId(加解密 签名系列)