Table of Contents

Class ResponseEncryptionKeyProvider

Namespace
Tessio.Verifier.AspNetCore
Assembly
Tessio.Verifier.AspNetCore.dll

Holds the verifier's response-encryption key pair. The public half is advertised to wallets via client_metadata.jwks; the private half decrypts direct_post.jwt (ECDH-ES) responses. The default registration generates an ephemeral EC P-256 key at startup, which is fine for a single process. Multi-instance deployments must register an instance built from a shared, persisted key so every instance can decrypt responses encrypted against the advertised JWK.

public sealed class ResponseEncryptionKeyProvider : IDisposable
Inheritance
ResponseEncryptionKeyProvider
Implements
Inherited Members

Constructors

ResponseEncryptionKeyProvider()

Creates a provider with a fresh ephemeral P-256 key (the single-process default).

public ResponseEncryptionKeyProvider()

ResponseEncryptionKeyProvider(ECDsa)

Creates a provider from a caller-supplied EC P-256 private key, e.g. one loaded from a key store so all instances share it. The provider takes ownership and disposes the key.

public ResponseEncryptionKeyProvider(ECDsa privateKey)

Parameters

privateKey ECDsa

Properties

DecryptionKey

Private key for decrypting wallet responses.

public ECDsaSecurityKey DecryptionKey { get; }

Property Value

ECDsaSecurityKey

KeyId

Key identifier (RFC 7638 JWK thumbprint).

public string KeyId { get; }

Property Value

string

PublicJwk

Public JWK for client_metadata.jwks. Clone before embedding in a JsonObject.

public JsonObject PublicJwk { get; }

Property Value

JsonObject

ThumbprintBytes

The raw thumbprint bytes, as bound into the mdoc session transcript.

public byte[] ThumbprintBytes { get; }

Property Value

byte[]

Methods

Dispose()

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

public void Dispose()