ClientAttestation

class ClientAttestation(val keyMaterial: KeyMaterial, val loadInstanceAttestation: suspend (OAuth2ProtocolClient.LoadInstanceAttestationInput) -> KmmResult<JwsCompactTyped<JsonWebToken>>)(source)

How a client authenticates with OAuth 2.0 Attestation-Based Client Authentication: the instance attestation loaded by loadInstanceAttestation, and the keyMaterial it attests. Both belong together, as the attestation MUST reference keyMaterial in its cnf claim, which OAuth2ProtocolClient checks before using it.

Constructors

Link copied to clipboard
constructor(keyMaterial: KeyMaterial, loadInstanceAttestation: suspend (OAuth2ProtocolClient.LoadInstanceAttestationInput) -> KmmResult<JwsCompactTyped<JsonWebToken>>)

Properties

Link copied to clipboard

The key the instance attestation attests, which signs the client attestation PoP (or the DPoP proof).

Link copied to clipboard
val loadInstanceAttestation: suspend (OAuth2ProtocolClient.LoadInstanceAttestationInput) -> KmmResult<JwsCompactTyped<JsonWebToken>>

Returns a new instance attestation, e.g. a Wallet Instance Attestation (WIA), for the authorization server. The returned JWT MUST reference keyMaterial in JsonWebToken.confirmationClaim.