AttestationSpec

@Serializable
data class AttestationSpec(val keyDescription: @Serializable(with = KeyDescriptionAsSchema::class) AttestationKeyDescription = DefaultKeyDescription, val createdAt: @Serializable(with = InstantAsIso8601::class) Instant = Clock.System.now(), val leafCanSignCertificates: Boolean = false)(source)

One attestation to issue: the KeyMint statement itself, plus when the certificates start being valid.

keyDescription is the parser's own type, so anything the parser can represent can be issued — including mangled, structurally invalid properties for negative test vectors.

Constructors

Link copied to clipboard
constructor(keyDescription: @Serializable(with = KeyDescriptionAsSchema::class) AttestationKeyDescription = DefaultKeyDescription, createdAt: @Serializable(with = InstantAsIso8601::class) Instant = Clock.System.now(), leafCanSignCertificates: Boolean = false)

Properties

Link copied to clipboard
val createdAt: @Serializable(with = InstantAsIso8601::class) Instant
Link copied to clipboard
Link copied to clipboard

Issues the attested leaf as a CA that may sign certificates. Real attested keys never can; this exists to build chain-extension attack vectors, where a leaf signs a certificate of its own.