AttestationValidator
class AttestationValidator(warden: <Error class: unknown class>, val attestationProofOID: <Error class: unknown class>, challengeValidator: ChallengeValidator)(source)
Verifies attestation statements and issues certificates on success. Expects a preconfigured Warden instance and an OID to be used in a CSR to convey an attestation statement. Also requires a challengeValidator, checking challenges validity and invalidating it once used.
Constructors
Link copied to clipboard
constructor(androidAttestationConfiguration: <Error class: unknown class>, iosAttestationConfiguration: <Error class: unknown class>, attestationProofOID: <Error class: unknown class>, clock: <Error class: unknown class> = Clock.System, verificationTimeOffset: <Error class: unknown class> = Duration.ZERO, challengeValidator: ChallengeValidator)
constructor(warden: <Error class: unknown class>, attestationProofOID: <Error class: unknown class>, challengeValidator: ChallengeValidator)
Functions
Link copied to clipboard
fun issueChallenge(nonce: ByteArray, validity: <Error class: unknown class>?, timeZone: <Error class: unknown class>?, postEndpoint: String, timeOffset: <Error class: unknown class> = Duration.ZERO): <Error class: unknown class>
Issues a new attestation challenge, using nonce, valid for a duration of validity, expecting an CSR containing an attestation statement to be HTTP POSTed to postEndpoint. It is recommended, to pass a timeZone.
Link copied to clipboard
suspend fun verifyKeyAttestation(csr: <Error class: unknown class>, onPreAttestationError: PreAttestationError.() -> String? = { null }, onAttestationError: <Error class: unknown class>.(<Error class: unknown class>) -> String? = { null }, onAttestationSuccess: <Error class: unknown class>.(<Error class: unknown class>) -> Unit = { }, certificateIssuer: CertificateIssuer): <Error class: unknown class>
verifies the received CSR: