日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java.security.InvalidKeyException: Illegal key size

發布時間:2024/7/23 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java.security.InvalidKeyException: Illegal key size 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

來源: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的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。