Documentation ¶
Index ¶
- type Claim
- type ClientAttestationCheck
- type CredentialChecks
- type CredentialDefinition
- type CredentialDisplay
- type CredentialMetaData
- type CredentialTemplate
- type CredentialTemplateChecks
- type CredentialsConfigurationSupported
- type ID
- type IssuanceChecks
- type Issuer
- type IssuerDataConfig
- type L10n
- type Logo
- type Method
- type OIDC4VPConfig
- type OIDCConfig
- type PolicyCheck
- type PresentationChecks
- type SelectiveDisclosureTemplate
- type SigningDID
- type StatusConfig
- type TrustList
- type VCConfig
- type VerificationChecks
- type Verifier
- type VerifierDataConfig
- type Version
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ClientAttestationCheck ¶ added in v1.6.0
type ClientAttestationCheck struct {
Enabled bool `json:"enabled"`
}
ClientAttestationCheck stores Client Attestation check configuration.
type CredentialChecks ¶
type CredentialChecks struct { Proof bool `json:"proof,omitempty"` Format []vcsverifiable.Format `json:"format,omitempty"` Status bool `json:"status,omitempty"` CredentialExpiry bool `json:"credentialExpiry,omitempty"` Strict bool `json:"strict,omitempty"` LinkedDomain bool `json:"linkedDomain,omitempty"` IssuerTrustList map[string]TrustList `json:"issuerTrustList,omitempty"` }
CredentialChecks are checks to be performed during credential verification.
type CredentialDefinition ¶ added in v1.8.0
type CredentialDefinition struct { // For ldp_vc only. Array as defined in https://www.w3.org/TR/vc-data-model/#contexts. Context []string `json:"@context"` // An object containing a list of name/value pairs, where each name identifies a claim offered in the Credential. // The value can be another such object (nested data structures), or an array of such objects. CredentialSubject map[string]Claim `json:"credentialSubject"` // Array designating the types a certain credential type supports Type []string `json:"type"` }
CredentialDefinition containing the detailed description of the credential type.
type CredentialDisplay ¶ added in v1.3.0
type CredentialMetaData ¶
type CredentialMetaData struct { CredentialsConfigurationSupported map[string]*CredentialsConfigurationSupported `json:"credential_configurations_supported"` //nolint:lll Display []*CredentialDisplay `json:"display"` }
type CredentialTemplate ¶
type CredentialTemplate struct { Contexts []string `json:"contexts"` ID string `json:"id"` Type string `json:"type"` CredentialSubject json.RawMessage `json:"credentialSubject"` CredentialDefaultExpirationDuration *time.Duration `json:"credentialDefaultExpirationDuration"` Checks CredentialTemplateChecks `json:"checks"` SdJWT *SelectiveDisclosureTemplate `json:"sdJWT"` JSONSchema string `json:"jsonSchema,omitempty"` JSONSchemaID string `json:"jsonSchemaID,omitempty"` }
type CredentialTemplateChecks ¶
type CredentialTemplateChecks struct {
Strict bool `json:"strict,omitempty"`
}
type CredentialsConfigurationSupported ¶ added in v1.8.0
type CredentialsConfigurationSupported struct { // For mso_mdoc and vc+sd-jwt vc only. Object containing a list of name/value pairs, // where each name identifies a claim about the subject offered in the Credential. // The value can be another such object (nested data structures), or an array of such objects. Claims map[string]interface{} `json:"claims"` // Object containing the detailed description of the credential type. CredentialDefinition *CredentialDefinition `json:"credential_definition"` // An array of objects, where each object contains the display properties // of the supported credential for a certain language. Display []*CredentialDisplay `json:"display"` // For mso_mdoc vc only. String identifying the Credential type, as defined in [ISO.18013-5]. Doctype string `json:"doctype"` // A JSON string identifying the format of this credential, i.e., jwt_vc_json or ldp_vc. Format vcsverifiable.OIDCFormat `json:"format"` // Array of the claim name values that lists them in the order they should be displayed by the Wallet. Order []string `json:"order"` // A JSON string identifying the scope value that this Credential Issuer supports for this particular credential. Scope string `json:"scope"` // For vc+sd-jwt vc only. String designating the type of a Credential, // as defined in https://datatracker.ietf.org/doc/html/draft-ietf-oauth-sd-jwt-vc-01 Vct string `json:"vct"` }
CredentialsConfigurationSupported describes specifics of the Credential that the Issuer supports issuance of.
type IssuanceChecks ¶ added in v1.6.0
type IssuanceChecks struct {
Policy PolicyCheck `json:"policy,omitempty"`
}
IssuanceChecks are checks to be performed for issuance credentials and presentations.
type Issuer ¶
type Issuer struct { ID ID `json:"id"` Version Version `json:"version"` GroupID ID `json:"groupID"` Name string `json:"name,omitempty"` URL string `json:"url,omitempty"` Active bool `json:"active"` OIDCConfig *OIDCConfig `json:"oidcConfig"` OrganizationID string `json:"organizationID,omitempty"` VCConfig *VCConfig `json:"vcConfig"` KMSConfig *vcskms.Config `json:"kmsConfig"` SigningDID *SigningDID `json:"signingDID"` CredentialTemplates []*CredentialTemplate `json:"credentialTemplates,omitempty"` WebHook string `json:"webHook,omitempty"` CredentialMetaData *CredentialMetaData `json:"credentialMetadata"` Checks IssuanceChecks `json:"checks"` DataConfig IssuerDataConfig `json:"dataConfig"` }
Issuer profile.
type IssuerDataConfig ¶ added in v1.8.0
type IssuerDataConfig struct { ClaimDataTTL int32 OIDC4CITransactionDataTTL int32 OIDC4CIAuthStateTTL int32 OIDC4CIAckDataTTL int32 }
IssuerDataConfig stores profile specific transient data configuration.
type OIDC4VPConfig ¶
type OIDC4VPConfig struct { ROSigningAlgorithm vcsverifiable.SignatureType `json:"roSigningAlgorithm,omitempty"` DIDMethod Method `json:"didMethod,omitempty"` KeyType kms.KeyType `json:"keyType,omitempty"` }
OIDC4VPConfig store config for verifier did that used to sign request object in oidc4vp process.
type OIDCConfig ¶ added in v1.1.0
type OIDCConfig struct { IssuerWellKnownURL string `json:"issuer_well_known"` ClientID string `json:"client_id"` ClientSecretHandle string `json:"client_secret_handle"` ScopesSupported []string `json:"scopes_supported"` GrantTypesSupported []string `json:"grant_types_supported"` ResponseTypesSupported []string `json:"response_types_supported"` TokenEndpointAuthMethodsSupported []string `json:"token_endpoint_auth_methods_supported"` EnableDynamicClientRegistration bool `json:"enable_dynamic_client_registration"` EnableDiscoverableClientIDScheme bool `json:"enable_discoverable_client_id_scheme"` PreAuthorizedGrantAnonymousAccessSupported bool `json:"pre-authorized_grant_anonymous_access_supported"` WalletInitiatedAuthFlowSupported bool `json:"wallet_initiated_auth_flow_supported"` SignedCredentialOfferSupported bool `json:"signed_credential_offer_supported"` SignedIssuerMetadataSupported bool `json:"signed_issuer_metadata_supported"` CredentialResponseAlgValuesSupported []string `json:"credential_response_alg_values_supported"` CredentialResponseEncValuesSupported []string `json:"credential_response_enc_values_supported"` CredentialResponseEncryptionRequired bool `json:"credential_response_encryption_required"` ClaimsEndpoint string `json:"claims_endpoint"` }
OIDCConfig represents issuer's OIDC configuration.
type PolicyCheck ¶ added in v1.8.0
type PolicyCheck struct {
PolicyURL string `json:"policyUrl"`
}
PolicyCheck stores policy check configuration.
type PresentationChecks ¶
type PresentationChecks struct { Proof bool `json:"proof,omitempty"` VCSubject bool `json:"vcSubject,omitempty"` Format []vcsverifiable.Format `json:"format,omitempty"` }
PresentationChecks are checks to be performed during presentation verification.
type SelectiveDisclosureTemplate ¶ added in v1.2.0
type SelectiveDisclosureTemplate struct { Version common.SDJWTVersion `json:"version"` AlwaysInclude []string `json:"alwaysInclude"` RecursiveClaims []string `json:"recursiveClaims"` NonSelectivelyDisclosable []string `json:"nonSelectivelyDisclosable"` }
type SigningDID ¶
type SigningDID struct { DID string `json:"did,omitempty"` Creator string `json:"creator,omitempty"` KMSKeyID string `json:"kmsKeyID,omitempty"` UpdateKeyURL string `json:"updateKeyURL,omitempty"` RecoveryKeyURL string `json:"recoveryKeyURL,omitempty"` }
SigningDID contains information about profile signing did.
type StatusConfig ¶
type StatusConfig struct { Type vc.StatusType `json:"type"` Disable bool `json:"disable"` }
StatusConfig represents the VC status configuration.
type TrustList ¶ added in v1.5.0
type TrustList struct {
CredentialTypes []string `json:"credentialTypes,omitempty"`
}
TrustList contains list of configuration that verifier is trusted to accept.
type VCConfig ¶
type VCConfig struct { Model vcsverifiable.Model `json:"model,omitempty"` Format vcsverifiable.Format `json:"format,omitempty"` SigningAlgorithm vcsverifiable.SignatureType `json:"signingAlgorithm,omitempty"` KeyType kms.KeyType `json:"keyType,omitempty"` DIDMethod Method `json:"didMethod,omitempty"` SignatureRepresentation verifiable.SignatureRepresentation `json:"signatureRepresentation,omitempty"` Status StatusConfig `json:"status,omitempty"` Context []string `json:"context,omitempty"` SDJWT vc.SDJWT `json:"sdjwt,omitempty"` DataIntegrityProof vc.DataIntegrityProofConfig `json:"dataIntegrityProof,omitempty"` RefreshServiceEnabled bool `json:"refreshServiceEnabled,omitempty"` }
VCConfig describes how to sign verifiable credentials.
type VerificationChecks ¶
type VerificationChecks struct { Credential CredentialChecks `json:"credential,omitempty"` Presentation *PresentationChecks `json:"presentation,omitempty"` Policy PolicyCheck `json:"policy,omitempty"` }
VerificationChecks are checks to be performed for verifying credentials and presentations.
type Verifier ¶
type Verifier struct { ID ID `json:"id,omitempty"` Version Version `json:"version,omitempty"` Name string `json:"name,omitempty"` URL string `json:"url,omitempty"` LogoURL string `json:"logoURL,omitempty"` Active bool `json:"active,omitempty"` OrganizationID string `json:"organizationID,omitempty"` Checks *VerificationChecks `json:"checks,omitempty"` OIDCConfig *OIDC4VPConfig `json:"oidcConfig,omitempty"` KMSConfig *vcskms.Config `json:"kmsConfig,omitempty"` SigningDID *SigningDID `json:"signingDID,omitempty"` PresentationDefinitions []*presexch.PresentationDefinition `json:"presentationDefinitions,omitempty"` WebHook string `json:"webHook,omitempty"` DataConfig VerifierDataConfig `json:"dataConfig"` }
Verifier profile.
type VerifierDataConfig ¶ added in v1.8.0
type VerifierDataConfig struct { OIDC4VPNonceStoreDataTTL int32 OIDC4VPTransactionDataTTL int32 OIDC4VPReceivedClaimsDataTTL int32 }
VerifierDataConfig stores profile specific transient data configuration.