使用Java加载密钥时,抛出异常InvalidKeyException: Illegal key size
受到美国法律的约束,早期Java的运行时限制了JCE支持的密钥长度,即默认不支持256位的AES。解决的方法有三个:
- (推荐)升级Java 8u162+,默认使用ulimited policy
- Java 8u151和8u152,可以在你的程序中直接放开策略
Security.setProperty("crypto.policy", "unlimited");
- 其他版本,下载无限强度权限策略文件补丁包,并使用其中的文件覆盖$JAVA_HOME/lib/security目录下的对应的local_policy.jar 和US_export_policy.jar
Java9及以上,均无限制。
解决方案来自微信支付官方文档:https://pay.weixin.qq.com/wiki/doc/apiv3/wechatpay/wechatpay7_2.shtml
标签:Java,微信,InvalidKeyException,V3,Illegal,policy,size From: https://www.cnblogs.com/ldl326308/p/17221698.html