Monday 10 March 2014

javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path validation failed: java.security.cert.CertPathValidatorException: algorithm check failed: MD2withRSA is disabled

Getting below exception while authenticating oauth url in quick book.It's a probably a Jdk issue my version of JDK 1.6.19 release. I m read some java forum or doc find a solution. Problem in some JDK realese (1.6.17 ,18 , 19). When i am upgrade to 20+ release everything goes well.

signedRequestTokenUrl: https://oauth.intuit.com/oauth/v1/get_request_token?oauth_signature=7BbMjH%2FEFPqqYAA6xQwtH%2FIvJXU

%3D&oauth_callback=http%3A%2F%2F127.0.0.1%3A8080%2FAccessTokenServlet

+&oauth_consumer_key=qyprdz8dcN2FN9VXa08cyBFFPV7unk&oauth_version=1.0&oauth_signature_method=HMAC-

SHA1&oauth_timestamp=1394090223&oauth_nonce=1584133679482369323
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path validation failed: 

java.security.cert.CertPathValidatorException: algorithm check failed: MD2withRSA is disabled
 at com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:174)
 at com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1623)
 at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:198)
 at com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:192)
 at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1074)
 at com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:128)
 at com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:529)
 at com.sun.net.ssl.internal.ssl.Handshaker.process_record(Handshaker.java:465)
 at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:884)
 at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1120)
 at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1147)
 at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1131)
 at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:434)
 at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:166)
 at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1049)
 at com.sun.net.ssl.internal.www.protocol.https.HttpsURLConnectionOldImpl.getInputStream(HttpsURLConnectionOldImpl.java:204)
 at com.opnsys.quickbooks.OauthHelper.getRequestToken(OauthHelper.java:169)
 at com.opnsys.servlets.RequestTokenServlet.doPost(RequestTokenServlet.java:48)
 at com.opnsys.servlets.RequestTokenServlet.doGet(RequestTokenServlet.java:40)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
 at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
 at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
 at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
 at java.lang.Thread.run(Thread.java:619)
Caused by: sun.security.validator.ValidatorException: PKIX path validation failed: java.security.cert.CertPathValidatorException: 

algorithm check failed: MD2withRSA is disabled
 at sun.security.validator.PKIXValidator.doValidate(PKIXValidator.java:260)
 at sun.security.validator.PKIXValidator.doValidate(PKIXValidator.java:243)
 at sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:167)
 at sun.security.validator.Validator.validate(Validator.java:218)
 at com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.java:126)
 at com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:209)
 at com.sun.net.ssl.internal.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:249)
 at com.sun.net.ssl.internal.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1053)
 ... 28 more
Caused by: java.security.cert.CertPathValidatorException: algorithm check failed: MD2withRSA is disabled
 at sun.security.provider.certpath.PKIXMasterCertPathValidator.validate(PKIXMasterCertPathValidator.java:139)
 at sun.security.provider.certpath.PKIXCertPathValidator.doValidate(PKIXCertPathValidator.java:328)
 at sun.security.provider.certpath.PKIXCertPathValidator.engineValidate(PKIXCertPathValidator.java:178)
 at java.security.cert.CertPathValidator.validate(CertPathValidator.java:250)
 at sun.security.validator.PKIXValidator.doValidate(PKIXValidator.java:255)
 ... 35 more
Error: Failed to get request token.
Authorize URL: https://appcenter.intuit.com/Connect/Begin?oauth_token=lvprdUC5OD2rVJzFSE8nSMt8BTxILtgrjGLJI7zdl6uj86N9
https://appcenter.intuit.com/Connect/Begin?

:)




2 comments: