2015-06-12 48 views
3

使-DuseSunHttpHandler我開發正在通過代理向第三方服務的請求的應用程序的風險。影響/上Weblogic10.3.0

我的應用程序在運行Weblogic10.3.0,我遇到了一個問題,BAD_CERTIFICATE例外如下。

javax.net.ssl.SSLKeyException: FATAL Alert:BAD_CERTIFICATE - A corrupt or unuseable certificate was received. 
    at com.certicom.tls.interfaceimpl.TLSConnectionImpl.fireException(Unknown Source) 
    at com.certicom.tls.interfaceimpl.TLSConnectionImpl.fireAlertSent(Unknown Source) 
    at com.certicom.tls.record.handshake.HandshakeHandler.fireAlert(Unknown Source) 
    at com.certicom.tls.record.handshake.HandshakeHandler.handleHandshakeMessages(Unknown Source) 
    at com.certicom.tls.record.MessageInterpreter.interpretContent(Unknown Source) 
    at com.certicom.tls.record.MessageInterpreter.decryptMessage(Unknown Source) 
    at com.certicom.tls.record.ReadHandler.processRecord(Unknown Source) 
    at com.certicom.tls.record.ReadHandler.readRecord(Unknown Source) 
    at com.certicom.tls.record.ReadHandler.readUntilHandshakeComplete(Unknown Source) 
    at com.certicom.tls.interfaceimpl.TLSConnectionImpl.completeHandshake(Unknown Source) 
    at com.certicom.tls.record.WriteHandler.write(Unknown Source) 
    at com.certicom.io.OutputSSLIOStreamWrapper.write(Unknown Source) 

有很多意見在網上說,通過增加-DuseSunHttpHandler = true,將有助於解決這個問題,因爲第三方已經升級了他們的證書(128位到256位)。該解決方案工作正常,但是,現在的問題是,我無法找到一個明確表示Certicom僅支持128位的官方文章,爲了解決這個問題,我們需要啓用JSSE,據我瞭解,它是由SunHttpHandler使用。

這裏的另一個值得關注的是,「有沒有使用SunHttpHandler已知的影響?」 據我所知,從10.3.3或10.3.5以後,Certicom公司將被棄用,並默認使用JSSE但升級weblogic的不是目前的選項。

+1

我需要的影響分析和參考的官方信息,使這件事情可以去現場。謝謝。 –

+0

我們在WebLogic 10.3.6。我得到了與上面相同的錯誤。我得到了建議使用-DuseSunHttpHandler = true,但我檢查了這裏講的兩個應用程序都有256位的證書。只是想知道這是否適合使用SunHTTPHandler – Abhi

回答

2

微軟和谷歌宣佈了SHA-1的棄用計劃,可能會影響到網站與SHA-1證書,早在12月31日到期後,2015年

證書可以用不同的「的哈希算法」來創建,其中包括

1)SHA1:一個160位散列

2)SHA2:用不同的塊大小,被稱爲SHA-256和SHA-512兩個類似的散列函數族(這是一個較新的算法)

直到最近y,WebLogic只支持SHA1算法。但從WebLogic 10.3.3開始,也支持SHA2算法。

如果您希望使用的證書具有SHA2哈希算法,那麼你將需要啓用JSSE SSL(其信任更強證書如SHA2)

Oracle強烈建議您升級到最新的WebLogic Maintenence包而最新的JDK的補丁,因爲有與JSSE SSL和較低的WebLogic維護包和Java補丁一些已知問題。 您應該至少使用WebLogic 10.3.6

從weblogic 11g(10.3.6)開始支持SHA2(SHA256等),但證書只能與JSSE實現(-Dweblogic.security)一起使用。 SSL.enableJSSE = TRUE)。

您可以檢查有關的常見SSL證書問題在WebLogic上的上述官方文件Oracle Metalink上(support.oracle.com)