KeyAttestationCertPath

CertPath representing an Android key attestation certificate chain.

The expected input is a full key attestation certificate chain (i.e. the output of KeyStore.getCertificateChain()) in the following order:

  1. Leaf certificate (containing the extension)

  2. Attestation certificate (contains the ProvisioningInfo extension if remotely provisioned)

  3. Intermediate certificate (not present if software-backed attestation)

  4. Intermediate certificate (only present if remotely provisioned)

  5. Root certificate

The last certificate in the chain is the trust anchor and is not included in the resulting CertPath: "By convention, the certificates in a CertPath object of type X.509 are ordered starting with the target certificate and ending with a certificate issued by the trust anchor. That is, the issuer of one certificate is the subject of the following one. The certificate representing the TrustAnchor should not be included in the certification path."

https://docs.oracle.com/en/java/javase/21/security/java-pki-programmers-guide.html#GUID-E47B8A0E-6B3A-4B49-994D-CF185BF441EC

Constructors

Link copied to clipboard
constructor(vararg certificates: X509Certificate)
constructor(certs: List<X509Certificate>)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard

Functions

Link copied to clipboard
Link copied to clipboard
open operator override fun equals(other: Any?): Boolean
Link copied to clipboard
open override fun getCertificates(): List<X509Certificate>
Link copied to clipboard
open override fun getEncoded(): ByteArray
open override fun getEncoded(encoding: String): ByteArray
Link copied to clipboard
open override fun getEncodings(): Iterator<String>
Link copied to clipboard
open override fun hashCode(): Int
Link copied to clipboard
Link copied to clipboard

Returns the leaf certificate from the certificate chain.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open override fun toString(): String