KeyBindingJws

@Serializable
data class KeyBindingJws(val issuedAt: Instant? = null, val audience: String, val challenge: String, val sdHash: ByteArray, val transactionData: List<TransactionDataBase64Url>? = null, val transactionDataHashes: List<@Serializable(with = ByteArrayBase64UrlSerializer::class) ByteArray>? = null, val transactionDataHashesAlgorithm: String? = null)(source)

Key Binding JWT for SD-JWT, per spec draft-ietf-oauth-selective-disclosure-jwt-08

Constructors

Link copied to clipboard
constructor(issuedAt: Instant? = null, audience: String, challenge: String, sdHash: ByteArray, transactionData: List<TransactionDataBase64Url>? = null, transactionDataHashes: List<@Serializable(with = ByteArrayBase64UrlSerializer::class) ByteArray>? = null, transactionDataHashesAlgorithm: String? = null)

Properties

Link copied to clipboard
@SerialName(value = "aud")
val audience: String
Link copied to clipboard
@SerialName(value = "nonce")
val challenge: String
Link copied to clipboard
@SerialName(value = "iat")
@Serializable(with = InstantLongSerializer::class)
val issuedAt: Instant? = null
Link copied to clipboard
@SerialName(value = "sd_hash")
@Serializable(with = ByteArrayBase64UrlSerializer::class)
val sdHash: ByteArray
Link copied to clipboard
@SerialName(value = "transaction_data")
val transactionData: List<TransactionDataBase64Url>? = null

Used to link transaction data to Authentication request according to UC5 spec Base64 Encoded JsonObject

Link copied to clipboard
@SerialName(value = "transaction_data_hashes")
val transactionDataHashes: List<@Serializable(with = ByteArrayBase64UrlSerializer::class) ByteArray>? = null

OID4VP: Array of hashes, where each hash is calculated using a hash function over the strings received in the transaction_data request parameter (see SignatureRequestParameters). Each hash value ensures the integrity of, and maps to, the respective transaction data object.

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

OID4VP: REQUIRED when this parameter was present in the transaction_data request parameter. String representing the hash algorithm identifier used to calculate hashes in transactionDataHashes response parameter.

Functions

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