Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AttestationService ¶
type AttestationService interface {
GetAttestation(ctx context.Context, req attestation.GetAttestationRequest) (string, error)
}
type IDTokenClaims ¶
type IDTokenClaims struct { // ScopeAdditionalClaims stores claims retrieved using custom scope. ScopeAdditionalClaims map[string]Claims `json:"_scope,omitempty"` //custom scope -> additional claims VPToken IDTokenVPToken `json:"_vp_token"` AttestationVP string `json:"_attestation_vp"` Nonce string `json:"nonce"` Exp int64 `json:"exp"` Iss string `json:"iss"` Aud string `json:"aud"` Sub string `json:"sub"` Nbf int64 `json:"nbf"` Iat int64 `json:"iat"` Jti string `json:"jti"` }
type IDTokenVPToken ¶
type IDTokenVPToken struct {
PresentationSubmission *presexch.PresentationSubmission `json:"presentation_submission"`
}
type Opt ¶
type Opt func(opts *options)
func WithDomainMatchingDisabled ¶
func WithDomainMatchingDisabled() Opt
func WithLinkedDomainVerification ¶
func WithLinkedDomainVerification() Opt
func WithRequestURI ¶
func WithSchemaValidationDisabled ¶
func WithSchemaValidationDisabled() Opt
func WithWalletDIDIndex ¶
type PerfInfo ¶
type PerfInfo struct { FetchRequestObject time.Duration `json:"vp_fetch_request_object"` VerifyAuthorizationRequest time.Duration `json:"vp_verify_authorization_request"` QueryCredentialFromWallet time.Duration `json:"vp_query_credential_from_wallet"` CreateAuthorizedResponse time.Duration `json:"vp_create_authorized_response"` SendAuthorizedResponse time.Duration `json:"vp_send_authorized_response"` VcsVPFlowDuration time.Duration `json:"_vcs_vp_flow_duration"` }
type RequestObject ¶
type RequestObject struct { JTI string `json:"jti"` IAT int64 `json:"iat"` ResponseType string `json:"response_type"` ResponseMode string `json:"response_mode"` Scope string `json:"scope"` Nonce string `json:"nonce"` ClientID string `json:"client_id"` RedirectURI string `json:"redirect_uri"` State string `json:"state"` Exp int64 `json:"exp"` Registration RequestObjectRegistration `json:"registration"` Claims RequestObjectClaims `json:"claims"` }
type RequestObjectClaims ¶
type RequestObjectClaims struct {
VPToken VPToken `json:"vp_token"`
}
type TrustRegistry ¶
type TrustRegistry interface { ValidateVerifier( ctx context.Context, verifierDID, verifierDomain string, credentials []*verifiable.Credential, ) (bool, error) }
type VPToken ¶
type VPToken struct {
PresentationDefinition *presexch.PresentationDefinition `json:"presentation_definition"`
}
type VPTokenClaims ¶
type VPTokenClaims struct { VP *verifiable.Presentation `json:"vp"` Nonce string `json:"nonce"` Exp int64 `json:"exp"` Iss string `json:"iss"` Aud string `json:"aud"` Nbf int64 `json:"nbf"` Iat int64 `json:"iat"` Jti string `json:"jti"` }
Click to show internal directories.
Click to hide internal directories.