今天遇到一個奇怪的問題。
自己做的加簽驗簽功能已經沒有問題了,本地測試通過,同事放到服務器上測試也沒問題。
然后我將包放到自己搭建的環境上,會報這樣一個錯誤:
java.security.InvalidKeyException: Illegal key size
然后就各種百度。
原來是jdk不兼容的問題,我本地以及同事的測試環境都是jdk1.7,而我搭建的環境用的是jdk1.8
解決方案如下:
處理辦法: 在官方網站下載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目錄下覆蓋原來文件