使用Cipher进行解密时报错

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/whquery_36/article/details/50888546
			String result="一段加密的字符串";
                        byte[] textBytes = Base64.decodeBase64(result);
			AlgorithmParameterSpec ivSpec = new IvParameterSpec(ivBytes);
			SecretKeySpec newKey = new SecretKeySpec(key.getBytes("UTF-8"), "AES");
			Cipher cipher = null;
			cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");
			cipher.init(Cipher.DECRYPT_MODE, newKey, ivSpec);
			String string2 = new String(cipher.doFinal(textBytes), "UTF-8");//机密完的字符串

今天对接一个客户的接口,使用的解密方式之前没遇到过,用Cipher这个进行加解密,几行代码中就碰到了两次报错,而且是比较少见的,百度上面好不容易才搜到两个,特此记录仪一下。

1、如果报错:java.security.InvalidKeyException: Illegal key size
     请更换   JDK路径\jre\lib\security 文件底下的local_policy.jar和US_export_policy.jar
     详情请参考:http://bbs.csdn.net/topics/340263760
2、如果报错:java.lang.SecurityException: Cannot set up certs for trusted CAs
     请更换  jce.jar 包 或者使用更高版本的JDK
     详情请参考:http://blog.csdn.net/tomy_xu_1981/article/details/539323

展开阅读全文

没有更多推荐了,返回首页