码迷,mamicode.com
首页 > 其他好文 > 详细

关于JDK8采坑JCE加密限制版本问题

时间:2020-02-11 18:51:13      阅读:233      评论:0      收藏:0      [点我收藏+]

标签:nes   view   illegal   define   fat   bsp   默认值   问题   policy   

关于JDK8采坑JCE加密限制版本问题

技术图片
0.3392019.04.28 14:55:21字数 375阅读 1,866

JDK8的加密策略存在限制版本和无限制版本,随着越来越多的第三方工具只支持 JDK8,业务环境中,发现有些方法会报异常:
1、使用AES加解密

java.security.InvalidKeyException: Illegal key size

2、安全性机制导致的访问https会报错:

Received fatal alert: handshake_failure; nested exception is javax.net.ssl.SSLHandshakeException:
Received fatal alert: handshake_failure,accessUrl

这是因为某些国家的进口管制限制,JDK默认的加解密有一定的限制。
比如默认不允许 256 位密钥的 AES 加解密,解决方法就下载官方JCE无限制强度加密策略文件,覆盖即可。
官方网站提供了JCE无限制权限策略文件的下载:
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

但从Java 1.8.0_151和1.8.0_152开始,为JVM启用无限制强度管辖策略 有了一种新的更简单的方法。如果不启用此功能,则不能使用AES-256:
在 jre/lib/security 文件夹中查找文件 java.security,现在用文本编辑器打开java.security,并找到定义java安全性属性crypto.policy的行,它可以有两个值limited或unlimited - 默认值是limited。将其设置为:

crypto.policy=unlimited

现在重新启动指向JVM的Java应用程序即可。

 

关于JDK8采坑JCE加密限制版本问题

标签:nes   view   illegal   define   fat   bsp   默认值   问题   policy   

原文地址:https://www.cnblogs.com/qlsty/p/12296116.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!