AES加密时的 java.security.InvalidKeyException: Illegal key size 异常
来源:互联网 发布:网络服务器配置与管理 编辑:程序博客网 时间:2024/05/20 15:40
转自:http://www.cnblogs.com/milton/p/5058566.html
程序代码
// 设置加密模式为AES的CBC模式 Cipher cipher = Cipher.getInstance("AES/CBC/NoPadding"); SecretKeySpec keySpec = new SecretKeySpec(aesKey, "AES"); IvParameterSpec iv = new IvParameterSpec(aesKey, 0, 16); cipher.init(Cipher.ENCRYPT_MODE, keySpec, iv); // 加密 byte[] encrypted = cipher.doFinal(unencrypted);...
当执行到
cipher.init(Cipher.ENCRYPT_MODE, keySpec, iv);
时, 如果密钥大于128, 会抛出Java.security.InvalidKeyException: Illegal key size 异常. 因为密钥长度是受限制的, java运行时环境读到的是受限的policy文件. 文件位于${java_home}/jre/lib/security, 这种限制是因为美国对软件出口的控制.
处理办法: 在官方网站下载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目录下覆盖原来文件
- AES加密时的 java.security.InvalidKeyException: Illegal key size 异常
- AES加密时的 java.security.InvalidKeyException: Illegal key size 异常
- Java实现AES加密,异常java.security.InvalidKeyException: Illegal key size 的解决
- Java实现AES加密,异常java.security.InvalidKeyException: Illegal key size 的解决
- Java实现AES加密,异常java.security.InvalidKeyException: Illegal key size 的解决
- Java实现AES加密,异常java.security.InvalidKeyException: Illegal key size 的解决
- AES加密 java.security.InvalidKeyException: Illegal key size
- AES加解密时的 java.security.InvalidKeyException: Illegal key size 异常
- AES加密时抛出java.security.InvalidKeyException: Illegal key size or default parameters
- AES加密时抛出java.security.InvalidKeyException: Illegal key size or default parameters .
- AES加密时抛出java.security.InvalidKeyException: Illegal key size or default parameter
- AES加密时抛出java.security.InvalidKeyException: Illegal key size or default parameters
- 异常:java.security.InvalidKeyException: Illegal key size
- 加密解密时报错:java.security.InvalidKeyException: Illegal key size(加密时遇到的错误)
- AES加密java.security.InvalidKeyException: Illegal key size or default parameters
- AES加密java.security.InvalidKeyException: Illegal key size or default parameters
- 异常:java.security.InvalidKeyException: Illegal key size or default parameters
- java.security.InvalidKeyException: Illegal key size or default parameters 异常
- WebService
- POJ 3087 Shuffle'm Up(神之模拟)
- 为什么volley只适合数据量小,并发高的请求
- 【Android界面实现】关于Android中9patch图的一点小解释
- nagios 安装
- AES加密时的 java.security.InvalidKeyException: Illegal key size 异常
- HTML5本地存储Localstorage实现注册登录以及验证
- 选课(动态规划与DFS在多叉树中的应用)
- Word中如何使公式与文字对齐
- 结构语句
- LeetCode
- java对象序列化
- MyBatis的foreach语句详解
- hdu3265Posters(线段树+离散化+扫描线详解 )