SupportedCredentialFormatSdJwt

@Serializable
data class SupportedCredentialFormatSdJwt(val sdJwtVcType: String, val scope: String? = null, val supportedBindingMethods: Set<String>? = null, val supportedSigningAlgorithmsJson: Set<JsonElement>? = null, val supportedProofTypes: Map<String, CredentialRequestProofSupported>? = null, val credentialMetadata: CredentialMetadata? = null, val format: CredentialFormatEnum = FORMAT) : SupportedCredentialFormat(source)

Constructors

Link copied to clipboard
constructor(sdJwtVcType: String, scope: String? = null, supportedBindingMethods: Set<String>? = null, supportedSigningAlgorithmsJson: Set<JsonElement>? = null, supportedProofTypes: Map<String, CredentialRequestProofSupported>? = null, credentialMetadata: CredentialMetadata? = null, format: CredentialFormatEnum = FORMAT)

Types

Link copied to clipboard
object Companion
Link copied to clipboard
data object SerialNames

Properties

Link copied to clipboard
@SerialName(value = "credential_metadata")
open override val credentialMetadata: CredentialMetadata?

OID4VCI: OPTIONAL. Object containing information relevant to the usage and display of issued Credentials. Credential Format-specific mechanisms can overwrite the information in this object to convey Credential metadata. Format-specific mechanisms, such as SD-JWT VC display metadata are always preferred by the Wallet over the information in this object, which serves as the default fallback.

Link copied to clipboard
@SerialName(value = "format")
@EncodeDefault(mode = EncodeDefault.Mode.ALWAYS)
open override val format: CredentialFormatEnum

OID4VCI: REQUIRED. A JSON string identifying the format of this credential, e.g. jwt_vc_json or ldp_vc. Depending on the format value, the object contains further elements defining the type and (optionally) particular claims the credential MAY contain, and information how to display the credential.

Link copied to clipboard
@SerialName(value = "scope")
open override val scope: String?

OID4VCI: OPTIONAL. A JSON string identifying the scope value that this Credential Issuer supports for this particular Credential. The value can be the same across multiple credential_configurations_supported objects. The Authorization Server MUST be able to uniquely identify the Credential Issuer based on the scope value. The Wallet can use this value in the Authorization Request. Scope values in this Credential Issuer metadata MAY duplicate those in the scopes_supported parameter of the Authorization Server.

Link copied to clipboard
@SerialName(value = "vct")
val sdJwtVcType: String

OID4VCI: IETF SD-JWT VC: REQUIRED. String designating the type of a Credential, as defined in (I-D.ietf-oauth-sd-jwt-vc).

Link copied to clipboard
@SerialName(value = "cryptographic_binding_methods_supported")
open override val supportedBindingMethods: Set<String>?

OID4VCI: OPTIONAL. Array of case-sensitive strings that identify how the Credential is bound to the identifier of the End-User who possesses the Credential as defined in Section 7.1. Support for keys in JWK format (RFC7517) is indicated by the value jwk. Support for keys expressed as a COSE Key object (RFC8152) (for example, used in ISO.18013-5) is indicated by the value cose_key. When Cryptographic Binding Method is a DID, valid values MUST be a did: prefix followed by a method-name using a syntax as defined in Section 3.1 of DID-Core, but without a : and method-specific-id. For example, support for the DID method with a method-name "example" would be represented by did:example.

Link copied to clipboard
@SerialName(value = "proof_types_supported")
open override val supportedProofTypes: Map<String, CredentialRequestProofSupported>?

OID4VCI: OPTIONAL. Object that describes specifics of the key proof(s) that the Credential Issuer supports. This object contains a list of name/value pairs, where each name is a unique identifier of the supported proof type(s).

Link copied to clipboard
open val supportedSigningAlgorithms: Set<SignatureAlgorithm>?

OID4VCI: OPTIONAL. Array of case sensitive strings that identify the algorithms that the Issuer uses to sign the issued Credential. Algorithm names used are determined by the Credential format and are defined in Appendix A.

Link copied to clipboard
@SerialName(value = "credential_signing_alg_values_supported")
open override val supportedSigningAlgorithmsJson: Set<JsonElement>?

OID4VCI: OPTIONAL. Array of case sensitive strings that identify the algorithms that the Issuer uses to sign the issued Credential. Algorithm names used are determined by the Credential format and are defined in Appendix A.

Functions

Link copied to clipboard
open override fun withSupportedSigningAlgorithms(supportedSigningAlgorithms: Set<SignatureAlgorithm>): SupportedCredentialFormatSdJwt