JAVA“無(wú)法驗(yàn)證證書(shū)。將不執(zhí)行該應(yīng)用程序?!碧崾窘鉀Q辦法
筆者的一臺(tái)電腦安裝了Java 8 update 361。
需要使用UBNT網(wǎng)橋上的AirView應(yīng)用(JAVA),但運(yùn)行時(shí)提示:
應(yīng)用程序出于安全原因被阻止
無(wú)法驗(yàn)證證書(shū)。
將不執(zhí)行該應(yīng)用程序。
名稱(chēng):AirView
發(fā)行者:Ubiquiti Inc.
位置:http://172.16.x.x:80
筆者先前已經(jīng)在控制面板——Java——安全——“例外站點(diǎn)”列表中加入了上述地址,在以前的舊版Java上是可以正常運(yùn)行的。
但自從Java更新到某個(gè)版本后(具體無(wú)從考證了),就出現(xiàn)了這個(gè)“無(wú)法驗(yàn)證證書(shū)”的問(wèn)題。
筆者又嘗試在控制面板——Java——高級(jí)中,將幾個(gè)證書(shū)撤銷(xiāo)檢查設(shè)置為“不檢查”。但仍然沒(méi)有效果,依舊報(bào)告相同的錯(cuò)誤信息。
既然是證書(shū)有問(wèn)題,那就在彈出提示時(shí),查看一下JAVA應(yīng)用的證書(shū)。
發(fā)現(xiàn)應(yīng)用的證書(shū)是SHA256算法。但在證書(shū)路徑中,有父(根)證書(shū)在使用SHA1算法。
那么會(huì)不會(huì)是SHA1算法被JAVA所禁止了?
答案就在C:\Program Files\Java\jre1.8.0_361\lib\security\java.security文件中。
發(fā)現(xiàn)這么幾行:
jdk.certpath.disabledAlgorithms=MD2, MD5, SHA1 jdkCA & usage TLSServer, \
RSA keySize < 1024, DSA keySize < 1024, EC keySize < 224, \
include jdk.disabled.namedCurves, \
SHA1 usage SignedJAR & denyAfter 2019-01-01
又上網(wǎng)查詢(xún)了一下,官方講得很清楚:
JARs signed with SHA-1 algorithms are now restricted by default and treated as if they were unsigned.
Any JAR signed with SHA-1 algorithms and timestamped prior to January 01, 2019 will NOT be restricted.
Users can, at their own risk, remove these restrictions by modifying the
java.security
configuration file (or override it by using thejava.security.properties
system property) and removing "SHA1 usage SignedJAR & denyAfter 2019-01-01" from thejdk.certpath.disabledAlgorithms
security property and "SHA1 denyAfter 2019-01-01" from thejdk.jar.disabledAlgorithms
security property.
Java™ SE Development Kit 11, 11.0.17 Release Notes
也就是說(shuō),JRE從某個(gè)版本開(kāi)始(大約是2021年的第三季度),默認(rèn)阻止簽名證書(shū)使用SHA1算法的應(yīng)用。但也有例外,就是簽名時(shí)間戳早于2019年1月1日的,不受此限制。
因此,只需要在java.security文件中找到兩行帶有“denyAfter 2019-01-01”的代碼,用#將其注釋掉即可。
保存文件,之后就可以運(yùn)行先前的java應(yīng)用了。
總結(jié)
到此這篇關(guān)于JAVA“無(wú)法驗(yàn)證證書(shū)。將不執(zhí)行該應(yīng)用程序。”提示解決辦法的文章就介紹到這了,更多相關(guān)JAVA 無(wú)法驗(yàn)證證書(shū)。將不執(zhí)行該應(yīng)用程序內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Spring Boot整合elasticsearch的詳細(xì)步驟
這篇文章主要介紹了Spring Boot整合elasticsearch的詳細(xì)步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04Java+opencv3.2.0實(shí)現(xiàn)hough圓檢測(cè)功能
這篇文章主要為大家詳細(xì)介紹了Java+opencv3.2.0實(shí)現(xiàn)hough圓檢測(cè),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-02-02在springboot中對(duì)kafka進(jìn)行讀寫(xiě)的示例代碼
本篇文章主要介紹了在springboot中對(duì)kafka進(jìn)行讀寫(xiě)的示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-09-09基于Spring Security的Oauth2授權(quán)實(shí)現(xiàn)方法
這篇文章主要介紹了基于Spring Security的Oauth2授權(quán)實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09詳解spring boot實(shí)現(xiàn)websocket
這篇文章主要介紹了詳解spring boot實(shí)現(xiàn)websocket,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-06-06Mybatis環(huán)境搭建及文件配置過(guò)程解析
這篇文章主要介紹了Mybatis環(huán)境搭建及文件配置過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08