# CertPathValidatorException.BasicReason

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

# BasicReason

```
class BasicReason : CertPathValidatorException.Reason
```

|---|---|------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [kotlin.Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)                                                                                            |||
| ↳ | [kotlin.Enum](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-enum/index.html)\<[java.security.cert.CertPathValidatorException.BasicReason](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.BasicReason#)\> ||
|   | ↳ | [java.security.cert.CertPathValidatorException.BasicReason](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.BasicReason#) |

|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Known Direct 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) |-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------| | [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.                                               | |

The BasicReason enumerates the potential reasons that a certification path of any type may be invalid.

## Summary

|                                                                                                                        Enum values                                                                                                                        ||
|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---|
| [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.                     |
| [EXPIRED](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.BasicReason#ENUM_VALUE:EXPIRED) The certificate is expired.                                                                                     |
| [INVALID_SIGNATURE](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.BasicReason#ENUM_VALUE:INVALID_SIGNATURE) The signature is invalid.                                                                   |
| [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.                                                                   |
| [REVOKED](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.BasicReason#ENUM_VALUE:REVOKED) The certificate is revoked.                                                                                     |
| [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. |
| [UNSPECIFIED](https://developer.android.com/reference/kotlin/java/security/cert/CertPathValidatorException.BasicReason#ENUM_VALUE:UNSPECIFIED) Unspecified reason.                                                                                     |

## Enum values

### ALGORITHM_CONSTRAINED

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

```
enum val ALGORITHM_CONSTRAINED : CertPathValidatorException.BasicReason
```

The public key or the signature algorithm has been constrained.  

### EXPIRED

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

```
enum val EXPIRED : CertPathValidatorException.BasicReason
```

The certificate is expired.  

### INVALID_SIGNATURE

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

```
enum val INVALID_SIGNATURE : CertPathValidatorException.BasicReason
```

The signature is invalid.  

### NOT_YET_VALID

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

```
enum val NOT_YET_VALID : CertPathValidatorException.BasicReason
```

The certificate is not yet valid.  

### REVOKED

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

```
enum val REVOKED : CertPathValidatorException.BasicReason
```

The certificate is revoked.  

### UNDETERMINED_REVOCATION_STATUS

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

```
enum val UNDETERMINED_REVOCATION_STATUS : CertPathValidatorException.BasicReason
```

The revocation status of the certificate could not be determined.  

### UNSPECIFIED

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

```
enum val UNSPECIFIED : CertPathValidatorException.BasicReason
```

Unspecified reason.