javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.

Stack Overflow | Nathan H | 9 months ago
tip
Click on the to mark the solution that helps you, Samebug will learn from it.
As a community member, you’ll be rewarded for you help.
  1. 0

    Has Android changed SSL configuration in API 24?

    Stack Overflow | 9 months ago | Nathan H
    javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
  2. 0

    Charles SSL Proxying issues on latest Android SDK and Emulator

    Stack Overflow | 8 months ago | apouche
    java.security.cert.CertificateException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.

Root Cause Analysis

  1. java.security.cert.CertificateException

    java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.

    at com.android.org.conscrypt.TrustManagerImpl.verifyChain()
  2. RoboVM
    TrustManagerImpl.getTrustedChainForServer
    1. com.android.org.conscrypt.TrustManagerImpl.verifyChain(TrustManagerImpl.java:563)
    2. com.android.org.conscrypt.TrustManagerImpl.checkTrustedRecursive(TrustManagerImpl.java:444)
    3. com.android.org.conscrypt.TrustManagerImpl.checkTrustedRecursive(TrustManagerImpl.java:508)
    4. com.android.org.conscrypt.TrustManagerImpl.checkTrustedRecursive(TrustManagerImpl.java:508)
    5. com.android.org.conscrypt.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:401)
    6. com.android.org.conscrypt.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:375)
    7. com.android.org.conscrypt.TrustManagerImpl.getTrustedChainForServer(TrustManagerImpl.java:304)
    7 frames
  3. android.security.net
    RootTrustManager.checkServerTrusted
    1. android.security.net.config.NetworkSecurityTrustManager.checkServerTrusted(NetworkSecurityTrustManager.java:94)
    2. android.security.net.config.RootTrustManager.checkServerTrusted(RootTrustManager.java:88)
    2 frames
  4. RoboVM
    OpenSSLSocketImpl.startHandshake
    1. com.android.org.conscrypt.Platform.checkServerTrusted(Platform.java:178)
    2. com.android.org.conscrypt.OpenSSLSocketImpl.verifyCertificateChain(OpenSSLSocketImpl.java:596)
    3. com.android.org.conscrypt.NativeCrypto.SSL_do_handshake(Native Method)
    4. com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:357)
    4 frames
  5. Android Platform
    SSLCertificateSocketFactory.createSocket
    1. android.net.SSLCertificateSocketFactory.verifyHostname(SSLCertificateSocketFactory.java:198)
    2. android.net.SSLCertificateSocketFactory.createSocket(SSLCertificateSocketFactory.java:443)
    2 frames
  6. Apache HttpClient
    AbstractHttpClient.execute
    1. org.apache.http.conn.ssl.SSLSocketFactory.createSocket(SSLSocketFactory.java:394)
    2. org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:170)
    3. org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:169)
    4. org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:124)
    5. org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:366)
    6. org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:560)
    7. org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:492)
    7 frames
  7. com.worklight.wlclient
    WLRequestSender.run
    1. com.worklight.wlclient.WLRequestSender.run(WLRequestSender.java:47)
    1 frame
  8. Java RT
    Thread.run
    1. java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
    2. java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
    3. java.lang.Thread.run(Thread.java:761)
    3 frames