AES加密时报java.security.InvalidKeyException: Illegal key size or default parameters异常

阅读更多

  在接口对接过程中,由于用到AES加密,经常会遇到java.security.InvalidKeyException: Illegal key size or default parameters异常。所以决定开个博客,专门记录一下。

  由于美国对软件出口的管制,Java通过默认的policy文件来限制密钥长度。因此当密钥长度超过128位时,就会报java.security.InvalidKeyException: Illegal key size or default parameters异常。

  所幸,Oracle在其官网有提供无政策限制的policy文件,只需下载并将其中的local_policy.jar和US_export_policy.jar两个jar包替换到%JAVA_HOME%\jre\lib\security\ 目录下,即可解决问题。不放心的同学可以先做好那两个jar包的备份。当然,你得找对你所用版本的java所在的目录,如果你的服务器上只有JRE环境,那就放到 %JRE_HOME%\lib\security\ 目录下。

 

官网下载地址:

  • JDK8:http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html
  • JDK7:http://www.oracle.com/technetwork/java/embedded/embedded-se/downloads/jce-7-download-432124.html
  • JDK6:http://www.oracle.com/technetwork/java/javase/downloads/jce-6-download-429243.html
  • JDK5:http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-java-plat-419418.html#jce_policy-1.5.0-oth-JPR
  • JDK4:http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-java-plat-419418.html#7503-jce-1.4.2-oth-JPR
 
 

 

你可能感兴趣的:(JAVA,AES,JCE,Illegal,key,size)