AES算法报 Cannot find any provider supporting AES/CBC/PKCS7Padding

环境:jdk1.6
在使用AES算法对数据进行加密时遇到如下报错

java.security.NoSuchAlgorithmException: Cannot find any provider supporting AES/CBC/PKCS7Padding

把填充模式改为PKCS5Padding可以正常加密
在使用jdk1.8填充模式为PKCS7Padding可以正常运行,但是jdk1.6不能正常运行
解决方案
在使用AES时需下载两个jar包
bcprov-jdk15on-162.jar
commons-codec-1.7.jar
把bcprov-jdk15on-162.jar 改为bcprov-ext-jdk16-1.45.jar在jdk1.6的环境中也可正常运行

在jdk1.8使用AES时需要在jdk官网下载:jce_policy-8.zip
按照压缩包中的说明文档把jce_policy-8.zip解压后的文件放到指定文件中。

参考文章:https://www.cnblogs.com/demingblog/p/6803236.html

你可能感兴趣的:(java)