# CertPathValidatorException.Reason

Added in[API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)

# Reason

```
interface Reason : Serializable
```

|--------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [java.security.cert.CertPathValidatorException.Reason](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.Reason#) |

|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Known Direct Subclasses [CertPathValidatorException.BasicReason](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.BasicReason),[PKIXReason](https://developer.android.com/reference/kotlin/java/security/cert/PKIXReason) |----------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------| | [CertPathValidatorException.BasicReason](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.BasicReason) | The BasicReason enumerates the potential reasons that a certification path of any type may be invalid. | | [PKIXReason](https://developer.android.com/reference/kotlin/java/security/cert/PKIXReason)                                                         | The`PKIXReason`enumerates the potential PKIX-specific reasons that an X.                               | |

|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Known Indirect Subclasses [CertPathValidatorException.BasicReason.ALGORITHM_CONSTRAINED](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.BasicReason#ENUM_VALUE:ALGORITHM_CONSTRAINED),[CertPathValidatorException.BasicReason.EXPIRED](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.BasicReason#ENUM_VALUE:EXPIRED),[CertPathValidatorException.BasicReason.INVALID_SIGNATURE](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.BasicReason#ENUM_VALUE:INVALID_SIGNATURE),[CertPathValidatorException.BasicReason.NOT_YET_VALID](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.BasicReason#ENUM_VALUE:NOT_YET_VALID),[CertPathValidatorException.BasicReason.REVOKED](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.BasicReason#ENUM_VALUE:REVOKED),[CertPathValidatorException.BasicReason.UNDETERMINED_REVOCATION_STATUS](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.BasicReason#ENUM_VALUE:UNDETERMINED_REVOCATION_STATUS),[CertPathValidatorException.BasicReason.UNSPECIFIED](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.BasicReason#ENUM_VALUE:UNSPECIFIED),[PKIXReason.INVALID_KEY_USAGE](https://developer.android.com/reference/kotlin/java/security/cert/PKIXReason#ENUM_VALUE:INVALID_KEY_USAGE),[PKIXReason.INVALID_NAME](https://developer.android.com/reference/kotlin/java/security/cert/PKIXReason#ENUM_VALUE:INVALID_NAME),[PKIXReason.INVALID_POLICY](https://developer.android.com/reference/kotlin/java/security/cert/PKIXReason#ENUM_VALUE:INVALID_POLICY),[PKIXReason.NAME_CHAINING](https://developer.android.com/reference/kotlin/java/security/cert/PKIXReason#ENUM_VALUE:NAME_CHAINING),[PKIXReason.NOT_CA_CERT](https://developer.android.com/reference/kotlin/java/security/cert/PKIXReason#ENUM_VALUE:NOT_CA_CERT), and 3 others. |-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------| | [CertPathValidatorException.BasicReason.ALGORITHM_CONSTRAINED](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.BasicReason#ENUM_VALUE:ALGORITHM_CONSTRAINED)                   | The public key or the signature algorithm has been constrained.        | | [CertPathValidatorException.BasicReason.EXPIRED](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.BasicReason#ENUM_VALUE:EXPIRED)                                               | The certificate is expired.                                            | | [CertPathValidatorException.BasicReason.INVALID_SIGNATURE](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.BasicReason#ENUM_VALUE:INVALID_SIGNATURE)                           | The signature is invalid.                                              | | [CertPathValidatorException.BasicReason.NOT_YET_VALID](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.BasicReason#ENUM_VALUE:NOT_YET_VALID)                                   | The certificate is not yet valid.                                      | | [CertPathValidatorException.BasicReason.REVOKED](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.BasicReason#ENUM_VALUE:REVOKED)                                               | The certificate is revoked.                                            | | [CertPathValidatorException.BasicReason.UNDETERMINED_REVOCATION_STATUS](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.BasicReason#ENUM_VALUE:UNDETERMINED_REVOCATION_STATUS) | The revocation status of the certificate could not be determined.      | | [CertPathValidatorException.BasicReason.UNSPECIFIED](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.BasicReason#ENUM_VALUE:UNSPECIFIED)                                       | Unspecified reason.                                                    | | [PKIXReason.INVALID_KEY_USAGE](https://developer.android.com/reference/kotlin/java/security/cert/PKIXReason#ENUM_VALUE:INVALID_KEY_USAGE)                                                                                   | The certificate's key usage is invalid.                                | | [PKIXReason.INVALID_NAME](https://developer.android.com/reference/kotlin/java/security/cert/PKIXReason#ENUM_VALUE:INVALID_NAME)                                                                                             | The name constraints have been violated.                               | | [PKIXReason.INVALID_POLICY](https://developer.android.com/reference/kotlin/java/security/cert/PKIXReason#ENUM_VALUE:INVALID_POLICY)                                                                                         | The policy constraints have been violated.                             | | [PKIXReason.NAME_CHAINING](https://developer.android.com/reference/kotlin/java/security/cert/PKIXReason#ENUM_VALUE:NAME_CHAINING)                                                                                           | The certificate does not chain correctly.                              | | [PKIXReason.NOT_CA_CERT](https://developer.android.com/reference/kotlin/java/security/cert/PKIXReason#ENUM_VALUE:NOT_CA_CERT)                                                                                               | The certificate is not a CA certificate.                               | | [PKIXReason.NO_TRUST_ANCHOR](https://developer.android.com/reference/kotlin/java/security/cert/PKIXReason#ENUM_VALUE:NO_TRUST_ANCHOR)                                                                                       | No acceptable trust anchor found.                                      | | [PKIXReason.PATH_TOO_LONG](https://developer.android.com/reference/kotlin/java/security/cert/PKIXReason#ENUM_VALUE:PATH_TOO_LONG)                                                                                           | The path length constraint has been violated.                          | | [PKIXReason.UNRECOGNIZED_CRIT_EXT](https://developer.android.com/reference/kotlin/java/security/cert/PKIXReason#ENUM_VALUE:UNRECOGNIZED_CRIT_EXT)                                                                           | The certificate contains one or more unrecognized critical extensions. | |

The reason the validation algorithm failed.

## Summary