最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

解讀JDK8踩坑JCE加密限制版本問題

 更新時(shí)間:2023年05月30日 09:17:12   作者:gblfy  
這篇文章主要介紹了JDK8踩坑JCE加密限制版本問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

一、解決方案1

聲明:jdk1.8已經(jīng)經(jīng)過線上環(huán)境使用

1. 調(diào)研

JDK8的加密策略存在限制版本和無限制版本,隨著越來越多的第三方工具只支持 JDK8,業(yè)務(wù)環(huán)境中,發(fā)現(xiàn)有些方法會(huì)報(bào)異常。

2. 常見的異常

1、使用AES加解密

  • 異常1:

java.security.InvalidKeyException: Illegal key size or default parameters

  • 異常2:

java.lang.SecurityException: JCE cannot authenticate the provider BC

3. 安全性機(jī)制導(dǎo)致的訪問https會(huì)報(bào)錯(cuò)

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

這是因?yàn)槟承﹪业倪M(jìn)口管制限制,JDK默認(rèn)的加解密有一定的限制。

4. 解決方案

比如默認(rèn)不允許 256 位密鑰的 AES 加解密,解決方法就下載官方JCE無限制強(qiáng)度加密策略文件,覆蓋即可。

官方網(wǎng)站提供了JCE無限制權(quán)限策略文件的下載:

  • 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

5. 操作流程

從官網(wǎng)下載jce策略文件(補(bǔ)丁包),進(jìn)入到j(luò)dkjre\lib\security目錄 ,覆蓋原有策略文件

注:如果測試通過下面的第6步可以跳過,如果不行請(qǐng)繼續(xù)操作

6. 移動(dòng)jar配置策略

第1步:

把包bcprov-jdk15on-1.56.jar復(fù)制一個(gè),放到linux的$JAVA_HOME/jre\lib\ext下面


第2步:

配置我的安全屬性文件

vim /$JAVA_HOME/jre/lib/security/java.security
security.provider.1=sun.security.provider.Sun
security.provider.2=sun.security.rsa.SunRsaSign
security.provider.3=sun.security.ec.SunEC
security.provider.4=com.sun.net.ssl.internal.ssl.Provider
security.provider.5=com.sun.crypto.provider.SunJCE
security.provider.6=sun.security.jgss.SunProvider
security.provider.7=com.sun.security.sasl.Provider
security.provider.8=org.jcp.xml.dsig.internal.dom.XMLDSigRI
security.provider.9=sun.security.smartcardio.SunPCSC
#下面這一行是我新添加的
security.provider.10=org.bouncycastle.jce.provider.BouncyCastleProvider

重啟服務(wù)再次測試

二、解決方案2

2.1. 聲明

官網(wǎng)說從jdk的某個(gè)版本以后,只需簡單配置策略文件配置即可

從Java 1.8.0_151和1.8.0_152開始,為JVM啟用無限制強(qiáng)度管轄策略 有了一種新的更簡單的方法。

如果不啟用此功能,則不能使用AES-256:

2.2. 編輯策略文件

vim /$JAVA_HOME/jre/lib/security/java.security

2.3. 修改默認(rèn)屬性

在 jre/lib/security 文件夾中查找文件 java.security,現(xiàn)在用文本編輯器打開java.security,并找到定義java安全性屬性crypto.policy的行,它可以有兩個(gè)值limited或unlimited - 默認(rèn)值是limited。

將其設(shè)置為:

crypto.policy=unlimited

現(xiàn)在重新啟動(dòng)指向JVM的Java應(yīng)用程序即可。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java Integer.ValueOf()的一些了解

    Java Integer.ValueOf()的一些了解

    這篇文章主要介紹了Java Integer.ValueOf()的一些了解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • Java集合遍歷實(shí)現(xiàn)方法及泛型通配

    Java集合遍歷實(shí)現(xiàn)方法及泛型通配

    這篇文章主要介紹了Java集合遍歷實(shí)現(xiàn)方法及泛型通配,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-07-07
  • Springboot 集成 lombok.jar過程解析

    Springboot 集成 lombok.jar過程解析

    這篇文章主要介紹了Springboot 集成 lombok.jar過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-11-11
  • dubbo環(huán)境搭建ZooKeeper注冊(cè)中心全過程

    dubbo環(huán)境搭建ZooKeeper注冊(cè)中心全過程

    文章介紹Dubbo環(huán)境搭建,包含ZooKeeper注冊(cè)中心的安裝配置(修改數(shù)據(jù)存儲(chǔ)路徑、啟動(dòng)服務(wù)并驗(yàn)證節(jié)點(diǎn))和dubbo-admin監(jiān)控中心的部署流程(解壓、打包、運(yùn)行jar包,需注意Maven版本及zkServer狀態(tài))
    2025-07-07
  • 推薦兩款java開發(fā)實(shí)用工具 hutool 和 lombok

    推薦兩款java開發(fā)實(shí)用工具 hutool 和 lombok

    通過本文給大家推薦兩款java開發(fā)實(shí)用工具 hutool 和 lombok,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧
    2021-04-04
  • SpringBoot測試WebMVC的4種實(shí)現(xiàn)方案

    SpringBoot測試WebMVC的4種實(shí)現(xiàn)方案

    在項(xiàng)目開發(fā)中,測試是確保應(yīng)用質(zhì)量的關(guān)鍵環(huán)節(jié),對(duì)于基于SpringBoot構(gòu)建的Web應(yīng)用,高效測試MVC層可以極大提高開發(fā)及聯(lián)調(diào)效率,下面我們來看看SpringBoot中測試WebMVC的4種實(shí)現(xiàn)方案吧
    2025-04-04
  • Java中的IO流之字符流Reader和Writer

    Java中的IO流之字符流Reader和Writer

    這篇文章主要介紹了Java中的IO流之字符流Reader和Writer,Reader : 和InputStream的唯一的區(qū)別就在于讀的數(shù)據(jù)單位不同,繼承自Reader的流都是用于向程序中輸入數(shù)據(jù),且數(shù)據(jù)的單位為字符16bit,需要的朋友可以參考下
    2023-10-10
  • 新建springboot項(xiàng)目時(shí),entityManagerFactory報(bào)錯(cuò)的解決

    新建springboot項(xiàng)目時(shí),entityManagerFactory報(bào)錯(cuò)的解決

    這篇文章主要介紹了新建springboot項(xiàng)目時(shí),entityManagerFactory報(bào)錯(cuò)的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • 深入了解Java 腳本化api編程

    深入了解Java 腳本化api編程

    Java 腳本 API 是一種獨(dú)立于框架的腳本語言,使用來自于Java代碼的腳本引擎 ??梢允褂肑ava語言編寫定制/可擴(kuò)展的應(yīng)用程序并將自定義腳本語言選擇留給最終用戶 。下面我們來詳細(xì)了解一下吧
    2019-06-06
  • java刪除指定目錄下所有空文件夾的方法

    java刪除指定目錄下所有空文件夾的方法

    這篇文章主要介紹了java刪除指定目錄下所有空文件夾的方法,涉及java針對(duì)文件與目錄的遍歷及目錄刪除相關(guān)操作技巧,需要的朋友可以參考下
    2016-08-08

最新評(píng)論

望谟县| 萨嘎县| 南木林县| 平果县| 商水县| 泸定县| 唐山市| 枝江市| 慈利县| 罗甸县| 永和县| 绥滨县| 木兰县| 惠安县| 社旗县| 西华县| 新余市| 临颍县| 永川市| 永城市| 遂溪县| 屏边| 门源| 景宁| 柞水县| 泽库县| 萨迦县| 云安县| 开阳县| 聊城市| 双鸭山市| 景东| 胶南市| 宜丰县| 尼勒克县| 静宁县| 大冶市| 台东县| 陆丰市| 北辰区| 枝江市|