jdk8的加密 jdk11不支持
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jdk8的加密 jdk11不支持相关的知识,希望对你有一定的参考价值。
参考技术A JDK8的加密策略存在限制版本和无限制版本,越来越多的第三方工具只支持 JDK8。可以使用AES加解密,或者下载官方JCE无限制强度加密策略文件,覆盖即可。
在将应用程序迁移到JDK 11之前,应熟悉从JDK 8迁移到以后的JDK版本中描述的JDK 8和更高版本之间的差异。
JDK8安装JCE解决加密限制问题
一、背景介绍
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
这里提供一键安装脚本
# yum -y curl unzip
curl -q -L -C - -b "oraclelicense=accept-securebackup-cookie" -o /tmp/jce_policy-8.zip -O http://download.oracle.com/otn-pub/java/jce/8/jce_policy-8.zip && unzip -oj -d ${JAVA_HOME}/jre/lib/security /tmp/jce_policy-8.zip */*.jar && rm /tmp/jce_policy-8.zip
三、参考
【1】关于JDK8采坑JCE加密限制版本问题
【2】Docker Java8安装JCE
以上是关于jdk8的加密 jdk11不支持的主要内容,如果未能解决你的问题,请参考以下文章
57 mac 中 SIGINFO 信号, jdk8 支持, 但是 jdk9 不支持?
57 mac 中 SIGINFO 信号, jdk8 支持, 但是 jdk9 不支持?
57 mac 中 SIGINFO 信号, jdk8 支持, 但是 jdk9 不支持?