KeyAttestationJwt

@Serializable
data class KeyAttestationJwt(    val issuer: String? = null,     val subject: String? = null,     val audience: String? = null,     val nonce: String? = null,     val notBefore: Instant? = null,     val issuedAt: Instant,     val expiration: Instant? = null,     val attestedKeys: Collection<JsonWebKey>,     val keyStorage: Collection<String>? = null,     val userAuthentication: Collection<String>? = null,     val certification: String? = null,     val status: JsonObject? = null)(source)

Content of a Key Attestation in JWT format, according to OpenID for Verifiable Credential Issuance

Constructors

Link copied to clipboard
constructor(    issuer: String? = null,     subject: String? = null,     audience: String? = null,     nonce: String? = null,     notBefore: Instant? = null,     issuedAt: Instant,     expiration: Instant? = null,     attestedKeys: Collection<JsonWebKey>,     keyStorage: Collection<String>? = null,     userAuthentication: Collection<String>? = null,     certification: String? = null,     status: JsonObject? = null)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
@SerialName(value = "attested_keys")
val attestedKeys: Collection<JsonWebKey>

Array of attested keys from the same key storage component using the syntax of JWK as defined in RFC7517.

Link copied to clipboard
@SerialName(value = "aud")
val audience: String? = null
Link copied to clipboard
@SerialName(value = "certification")
val certification: String? = null

Optional. A String that contains a URL that links to the certification of the key storage component.

Link copied to clipboard
@SerialName(value = "exp")
@Serializable(with = InstantLongSerializer::class)
val expiration: Instant? = null

Integer for the time at which the key attestation and the key(s) it is attesting expire, using the syntax defined in RFC7519. MUST be present if the attestation is used with the JWT proof type.

Link copied to clipboard
@SerialName(value = "iat")
@Serializable(with = InstantLongSerializer::class)
val issuedAt: Instant

Integer for the time at which the key attestation was issued using the syntax defined in RFC7519.

Link copied to clipboard
@SerialName(value = "iss")
val issuer: String? = null
Link copied to clipboard
@SerialName(value = "key_storage")
val keyStorage: Collection<String>? = null

Optional. Array of case sensitive strings that assert the attack potential resistance of the key storage component and its keys attested in the attested_keys parameter. This specification defines initial values in Appendix D.2.

Link copied to clipboard
@SerialName(value = "nonce")
val nonce: String? = null

Optional. String that represents a nonce provided by the Issuer to prove that a key attestation was freshly generated.

Link copied to clipboard
@SerialName(value = "nbf")
@Serializable(with = InstantLongSerializer::class)
val notBefore: Instant? = null
Link copied to clipboard
@SerialName(value = "status")
val status: JsonObject? = null

Optional. JSON Object representing the supported revocation check mechanisms, such as the one defined in ietf-oauth-status-list.

Link copied to clipboard
@SerialName(value = "sub")
val subject: String? = null
Link copied to clipboard
@SerialName(value = "user_authentication")
val userAuthentication: Collection<String>? = null

Optional. Array of case sensitive strings that assert the attack potential resistance of the user authentication methods allowed to access the private keys from the attestedKeys parameter. This specification defines initial values in Appendix D.2.

Functions

Link copied to clipboard
open operator override fun equals(other: Any?): Boolean
Link copied to clipboard
open override fun hashCode(): Int
Link copied to clipboard