Makoto
Default, functional Android and Apple App and Key Attestation in all its glory.
Once configured, this class provides a streamlined interface for mobile client attestation
Parameters
Configuration for Android key attestation. See AndroidAttestationConfiguration for details.
IOS AppAttest configuration. See IosAttestationConfiguration for details.
a clock to set the time of verification (used for certificate validity checks)
allows for fine-grained clock drift compensation (this offsets the certificate validity duration checks and attestation statement validity checks); can be negative. Note that this is a real offset, shifting the time window of validity, not extending it!
Constructors
Java-friendly constructor with java.time types
Properties
Exposes Android-specific API to reduce toplevel clutter
Groups iOS-specific API to reduce toplevel clutter.
The shortest attestation validity duration over Android and iOS configuration. Useful to get the longest sensible nonce validity duration
Functions
Collects a debug dump of an attestation call. Use this if you called ``verifyKeyAttestation( attestationProof: Attestation, challenge: ByteArray ): KeyAttestation<PublicKey>``
Collects a debug dump of an attestation call. Use this if you called `` <T : PublicKey> verifyKeyAttestation( attestationProof: List<ByteArray>, expectedChallenge: ByteArray, keyToBeAttested: T )``
Collects a debug dump of an attestation call. Use this if you called ``verifyKeyAttestation( attestationProof: List<ByteArray>, challenge: ByteArray, encodedPublicKey: ByteArray ): KeyAttestation<PublicKey>``
Collects a debug dump of an attestation call. Use this if you called ``verifyAttestation( attestationProof: List<ByteArray>, challenge: ByteArray, clientData: ByteArray? ): AttestationResult``
Verifies key attestation for both Android and Apple devices.
Same as verifyKeyAttestation, but taking an encoded (either ANSI X9.63 or DER) publix key as a byte array