Makoto

constructor(androidAttestationConfiguration: AndroidAttestationConfiguration, iosAttestationConfiguration: IosAttestationConfiguration, clock: Clock = Clock.System, verificationTimeOffset: Duration = DEFAULT_TIME_OFFSET)(source)

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

androidAttestationConfiguration

Configuration for Android key attestation. See AndroidAttestationConfiguration for details.

iosAttestationConfiguration

IOS AppAttest configuration. See IosAttestationConfiguration for details.

clock

a clock to set the time of verification (used for certificate validity checks)

verificationTimeOffset

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!

Throws

if neither Android nor iOS attestation configuration is provided


constructor(androidAttestationConfiguration: AndroidAttestationConfiguration, clock: Clock = Clock.System, verificationTimeOffset: Duration = DEFAULT_TIME_OFFSET)(source)

Android-only App and Key Attestation

Once configured, this class provides a streamlined interface for mobile client attestation

Parameters

androidAttestationConfiguration

Configuration for Android key attestation. See AndroidAttestationConfiguration for details.

clock

a clock to set the time of verification (used for certificate validity checks)

verificationTimeOffset

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!

Throws

if neither Android nor iOS attestation configuration is provided


constructor(iosAttestationConfiguration: IosAttestationConfiguration, clock: Clock = Clock.System, verificationTimeOffset: Duration = DEFAULT_TIME_OFFSET)(source)

iOS-only and Apple App and Key Attestation.

Once configured, this class provides a streamlined interface for mobile client attestation

Parameters

iosAttestationConfiguration

IOS AppAttest configuration. See IosAttestationConfiguration for details.

clock

a clock to set the time of verification (used for certificate validity checks)

verificationTimeOffset

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!

Throws

if neither Android nor iOS attestation configuration is provided


constructor(iosAttestationConfigurationJ: IosAttestationConfiguration, androidAttestationConfigurationJ: AndroidAttestationConfiguration, verificationTimeOffsetJ: Duration = DEFAULT_TIME_OFFSET.toJavaDuration(), javaClock: Clock = java.time.Clock.systemUTC())(source)

Java-friendly constructor with java.time types

Parameters

androidAttestationConfigurationJ

Configuration for Android key attestation. See AndroidAttestationConfiguration

iosAttestationConfigurationJ

IOS AppAttest configuration. See IosAttestationConfiguration for details.

verificationTimeOffsetJ

allows for fine-grained clock drift compensation (this duration is added to the certificate validity checks); can be negative. Note that androidAttestationConfiguration is the exact same configuration format as used by Roboto, which also supports setting a verification time offset. For the sake of consistency and intelligibility, only set this offset globally and not inside androidAttestationConfigurationJ.

javaClock

a clock to set the time of verification (used for certificate validity checks)

Throws

if neither Android nor iOS attestation configuration is provided


constructor(androidAttestationConfigurationJ: AndroidAttestationConfiguration, verificationTimeOffsetJ: Duration = DEFAULT_TIME_OFFSET.toJavaDuration(), javaClock: Clock = java.time.Clock.systemUTC())(source)

Android-only Java-friendly constructor with java.time types

Parameters

androidAttestationConfigurationJ

Configuration for Android key attestation. See AndroidAttestationConfiguration

verificationTimeOffsetJ

allows for fine-grained clock drift compensation (this duration is added to the certificate validity checks); can be negative. Note that androidAttestationConfiguration is the exact same configuration format as used by Roboto, which also supports setting a verification time offset. For the sake of consistency and intelligibility, only set this offset globally.

javaClock

a clock to set the time of verification (used for certificate validity checks)

Throws

if neither Android nor iOS attestation configuration is provided


constructor(iosAttestationConfigurationJ: IosAttestationConfiguration, verificationTimeOffsetJ: Duration = DEFAULT_TIME_OFFSET.toJavaDuration(), javaClock: Clock = java.time.Clock.systemUTC())(source)

iOS-only Java-friendly constructor with java.time types

Parameters

iosAttestationConfigurationJ

IOS AppAttest configuration. See IosAttestationConfiguration for details.

verificationTimeOffsetJ

allows for fine-grained clock drift compensation (this duration is added to the certificate validity checks); can be negative.

javaClock

a clock to set the time of verification (used for certificate validity checks)

Throws

if neither Android nor iOS attestation configuration is provided