来源:https://blog.csdn.net/dling8/article/details/84061948

今天在使用idea打包maven项目时,出现这个错误:java.security.InvalidKeyException: Illegal key size。(测试也可能会出现这个问题)貌似是因为加密出现了问题。

产生错误原因:为了数据代码在传输过程中的安全,很多时候我们都会将要传输的数据进行加密,然后等对方拿到后再解密使用。我们在使用AES加解密的时候,在遇到128位密钥加解密的时候,没有进行什么特殊处理;然而,在使用256位密钥加解密的时候,如果不进行特殊处理的话,往往会出现这个异常java.security.InvalidKeyException: Illegal key size。

为什么会产生这样的错误?

我们做Java开发,或是Android开发,都会先在电脑上安装JDK(Java Development Kit) 并配置环境变量,JDK也就是 Java 语言的软件开发工具包,JDK中包含有JRE(Java Runtime Environment,即:Java运行环境),JRE中包括Java虚拟机(Java Virtual Machine)、Java核心类库和支持文件,而我们今天要说的主角就在Java的核心类库中。在Java的核心类库中有一个JCE(Java Cryptography Extension),JCE是一组包,它们提供用于加密、密钥生成和协商以及 Message Authentication Code(MAC)算法的框架和实现,所以这个是实现加密解密的重要类库。

在我们安装的JRE目录下有这样一个文件夹:%JAVE_HOME%\jre\lib\security(%JAVE_HOME%是自己电脑的Java路径,一版默认是:C:\Program Files\Java,具体看自己当时安装JDK和JRE时选择的路径是什么),其中包含有两个.jar文件:“local_policy.jar ”和“US_export_policy.jar”,也就是我们平时说的jar包,再通俗一点说就是Java中包含的类库(Sun公司的程序大牛封装的类库,供使用Java开发的程序员使用),这两个jar包就是我们JCE中的核心类库了。JRE中自带的“local_policy.jar ”和“US_export_policy.jar”是支持128位密钥的加密算法,而当我们要使用256位密钥算法的时候,已经超出它的范围,无法支持,所以才会报:“java.security.InvalidKeyException: Illegal key size or default parameters”的异常。那么我们怎么解决呢?

如何解决?

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

jdk 5: http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-java-plat-419418.html#jce_policy-1.5.0-oth-JPR

jdk6: http://www.oracle.com/technetwork/java/javase/downloads/jce-6-download-429243.html

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

具体下载、解压、替换步骤:

1.下载:根据自己使用的jdk版本进入对应的链接下载(我这里是jdk8)

2.解压:

3.替换:(原来的2个jar包你可以备份下)

4.如果不行就重启下软件,刷新下maven

原文:https://blog.csdn.net/dafeige8/article/details/76019911 
原文:https://www.cnblogs.com/lilinzhiyu/p/8024100.html
————————————————

java.security.InvalidKeyException: Illegal key size相关推荐

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

    今天在使用idea打包maven项目时,出现这个错误:java.security.InvalidKeyException: Illegal key size or default parameters ...

  2. java.security.InvalidKeyException: Illegal key size异常解决

    2019独角兽企业重金招聘Python工程师标准>>> 异常: 用AES加密时出现"java.security.InvalidKeyException: Illegal k ...

  3. 异常: java.security.InvalidKeyException: Illegal key size

    异常: java.security.InvalidKeyException: Illegal key size 参考文章: (1)异常: java.security.InvalidKeyExcepti ...

  4. java.security.InvalidKeyException:illegal Key Size

    在引用一个加密解密包时报如下错误:java.security.InvalidKeyException:illegal Key Size 原因默认安全的 jdk sercurity  有对技术出口的限制 ...

  5. 项目实战-解决AES(java.security.InvalidKeyException: Illegal key size)

    异常: java.security.InvalidKeyException: Illegal key size 今天在做接口测试的时候遇到个异常: java.security.InvalidKeyEx ...

  6. jdk 1.8 java.policy,JDK1.8 导致系统报错:java.security.InvalidKeyException:illegal Key Size

    在使用JCE加密时,我们有时候会遇到这样的Exception: java.security.InvalidKeyException:illegal Key Size 要解决这个报错,首先,我们需要知道 ...

  7. java.security.key jar_异常: java.security.InvalidKeyException: Illegal key size

    今天在做接口测试的时候遇到个异常: java.security.InvalidKeyException: Illegal key size. SecretKeySpec secretKeySpec = ...

  8. 控制台报错:java.security.InvalidKeyException: Illegal key size

    在学习微信支付V3的时候启动项目报错java.security.InvalidKeyException: Illegal key size 原因是:数据代码在传输过程中的安全,很多时候我们都会将要传输 ...

  9. java.security.InvalidKeyException:illegal Key Size 报错解决

    在使用JCE加密时,遇到这样的Exception: java.security.InvalidKeyException:illegal Key Size 原因: 这是因为用到了jdk sercurit ...

最新文章

  1. 初始化Mysql系统报错,begin failesd--conpilation aborted at scripts........
  2. Android使用iconfont
  3. [C/CPP系列知识] Type difference of character literals 和 bool in C and C++
  4. 学习 PixiJS — 交互工具
  5. jfinal调用mysql存储过程 封装_jfinal如何调用存储过程?
  6. 关键时刻不可或缺的5款高科技紧急应用
  7. mysql开通访问权限_mysql 用户远程访问权限开通
  8. [USACO12FEB]附近的牛Nearby Cows
  9. 由先序遍历序列和中序遍历序列恢复二叉树以及统计叶子节点个数和树的深度...
  10. 计算机思维游戏案例doc,国外火爆的计算机思维训练游戏,国内居然不知道!
  11. 《数字电子技术基础》3.3 CMOS门电路(下)
  12. 计算机 64虚拟内存设置方法,计算机虚拟内存怎样设置
  13. 安装域、对域进行管理
  14. 网易乌镇咖荟综述 | 2018,AI行业的兴奋与焦虑
  15. 前端JavaScript代码混淆加密原理介绍
  16. 《乌合之众》中的50金句
  17. android view设置按钮颜色_Android关于StatusBar(状态栏)总结
  18. 传统序列式软件开发方法的缺点,以及迭代开发方法的选择
  19. 高校校园IPTV系统升级方案
  20. 万达商铺租赁管理系统/商铺租赁信息管理系统

热门文章

  1. import 和from... import的作用,导入模块or导入函数
  2. TensorFlow 全网最全学习资料汇总之TensorFlow的技术应用
  3. 简单讲述一下Intent的传值过程
  4. 论文阅读课2-Inter-sentence Relation Extraction with Document-level (GCNN,句间关系抽取,ACL2019
  5. HDU Integer's Power(容斥原理)
  6. flannel无法跨主机ping通容器的解决方式
  7. #35 string(缩点+动态规划)
  8. RCC 2017 Qual 1 Mail.Ru, April 2, 2017 Problem B. Painting the Wall
  9. MEF: MSDN 杂志上的文章(15) 拒绝【多个导出,但只用一个导入,会拒绝,但还是稳定的组合】...
  10. jQuery 结构分析