java-解決默認jdk限制密鑰長度,linux和windows都可用

報錯

今天在服務器上新搭建的storm集群,處理大數據日誌分析,發現報錯:java.security.InvalidKeyException: Illegal key size

java-解決默認jdk限制密鑰長度,linux和windows都可用


原因

如果密鑰大於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目錄下覆蓋原來文件。


分享到:


相關文章: