Versions in this module Expand all Collapse all v5 v5.4.40 Sep 22, 2026 v5.4.39 Sep 21, 2026 Changes in this version + const BaseURLServiceType + var ErrDIDAlreadyExists = errors.New("DID document already exists in the store") + var ErrDIDNotManagedByThisNode = errors.New("DID document not managed by this node") + var ErrDeactivated = deactivatedError + var ErrDuplicateService = errors.New("service type is duplicate") + var ErrKeyNotFound = errors.New("key not found in DID document") + var ErrNoActiveController = deactivatedError + var ErrNotFound = errors.New("unable to find the DID document") + var ErrServiceNotFound = errors.New("service not found in DID Document") + var ErrServiceReferenceToDeep = errors.New("service references are nested to deeply before resolving to a non-reference") + type CompoundService map[string]string + type DIDCreationOptions struct + Controllers []did.DID + KeyFlags DIDKeyFlags + SelfControl bool + type DIDKeyFlags uint + const AssertionMethodUsage + const AuthenticationUsage + const CapabilityDelegationUsage + const CapabilityInvocationUsage + const KeyAgreementUsage + func (k DIDKeyFlags) Is(other DIDKeyFlags) bool + type DocCreator interface + Create func(ctx context.Context, options DIDCreationOptions) (*did.Document, crypto2.Key, error) + type DocFinder interface + Find func(...Predicate) ([]did.Document, error) + type DocIterator func(doc did.Document, metadata DocumentMetadata) error + type DocManipulator interface + AddVerificationMethod func(ctx context.Context, id did.DID, keyUsage DIDKeyFlags) (*did.VerificationMethod, error) + Deactivate func(ctx context.Context, id did.DID) error + RemoveVerificationMethod func(ctx context.Context, id, keyID did.DID) error + type DocResolver interface + Resolve func(id did.DID, metadata *ResolveMetadata) (*did.Document, *DocumentMetadata, error) + ResolveControllers func(input did.Document, metadata *ResolveMetadata) ([]did.Document, error) + type DocUpdater interface + Update func(ctx context.Context, id did.DID, next did.Document) error + type DocWriter interface + Write func(document did.Document, metadata DocumentMetadata) error + type DocumentMetadata struct + Created time.Time + Deactivated bool + Hash hash.SHA256Hash + PreviousHash *hash.SHA256Hash + SourceTransactions []hash.SHA256Hash + Updated *time.Time + func (m DocumentMetadata) Copy() DocumentMetadata + func (m DocumentMetadata) IsConflicted() bool + type DocumentOwner interface + IsOwner func(context.Context, did.DID) (bool, error) + ListOwned func(ctx context.Context) ([]did.DID, error) + type KeyResolver interface + ResolveAssertionKeyID func(id did.DID) (ssi.URI, error) + ResolveKeyAgreementKey func(id did.DID) (crypto.PublicKey, error) + ResolvePublicKey func(kid string, sourceTransactionsRefs []hash.SHA256Hash) (crypto.PublicKey, error) + ResolveRelationKey func(keyID string, validAt *time.Time, relationType RelationType) (crypto.PublicKey, error) + ResolveRelationKeyID func(id did.DID, relationType RelationType) (ssi.URI, error) + ResolveSigningKey func(keyID string, validAt *time.Time) (crypto.PublicKey, error) + ResolveSigningKeyID func(holder did.DID, validAt *time.Time) (string, error) + type MockDocCreator struct + func NewMockDocCreator(ctrl *gomock.Controller) *MockDocCreator + func (m *MockDocCreator) Create(ctx context.Context, options DIDCreationOptions) (*did.Document, crypto0.Key, error) + func (m *MockDocCreator) EXPECT() *MockDocCreatorMockRecorder + type MockDocCreatorMockRecorder struct + func (mr *MockDocCreatorMockRecorder) Create(ctx, options interface{}) *gomock.Call + type MockDocFinder struct + func NewMockDocFinder(ctrl *gomock.Controller) *MockDocFinder + func (m *MockDocFinder) EXPECT() *MockDocFinderMockRecorder + func (m *MockDocFinder) Find(arg0 ...Predicate) ([]did.Document, error) + type MockDocFinderMockRecorder struct + func (mr *MockDocFinderMockRecorder) Find(arg0 ...interface{}) *gomock.Call + type MockDocManipulator struct + func NewMockDocManipulator(ctrl *gomock.Controller) *MockDocManipulator + func (m *MockDocManipulator) AddVerificationMethod(ctx context.Context, id did.DID, keyUsage DIDKeyFlags) (*did.VerificationMethod, error) + func (m *MockDocManipulator) Deactivate(ctx context.Context, id did.DID) error + func (m *MockDocManipulator) EXPECT() *MockDocManipulatorMockRecorder + func (m *MockDocManipulator) RemoveVerificationMethod(ctx context.Context, id, keyID did.DID) error + type MockDocManipulatorMockRecorder struct + func (mr *MockDocManipulatorMockRecorder) AddVerificationMethod(ctx, id, keyUsage interface{}) *gomock.Call + func (mr *MockDocManipulatorMockRecorder) Deactivate(ctx, id interface{}) *gomock.Call + func (mr *MockDocManipulatorMockRecorder) RemoveVerificationMethod(ctx, id, keyID interface{}) *gomock.Call + type MockDocResolver struct + func NewMockDocResolver(ctrl *gomock.Controller) *MockDocResolver + func (m *MockDocResolver) EXPECT() *MockDocResolverMockRecorder + func (m *MockDocResolver) Resolve(id did.DID, metadata *ResolveMetadata) (*did.Document, *DocumentMetadata, error) + func (m *MockDocResolver) ResolveControllers(input did.Document, metadata *ResolveMetadata) ([]did.Document, error) + type MockDocResolverMockRecorder struct + func (mr *MockDocResolverMockRecorder) Resolve(id, metadata interface{}) *gomock.Call + func (mr *MockDocResolverMockRecorder) ResolveControllers(input, metadata interface{}) *gomock.Call + type MockDocUpdater struct + func NewMockDocUpdater(ctrl *gomock.Controller) *MockDocUpdater + func (m *MockDocUpdater) EXPECT() *MockDocUpdaterMockRecorder + func (m *MockDocUpdater) Update(ctx context.Context, id did.DID, next did.Document) error + type MockDocUpdaterMockRecorder struct + func (mr *MockDocUpdaterMockRecorder) Update(ctx, id, next interface{}) *gomock.Call + type MockDocWriter struct + func NewMockDocWriter(ctrl *gomock.Controller) *MockDocWriter + func (m *MockDocWriter) EXPECT() *MockDocWriterMockRecorder + func (m *MockDocWriter) Write(document did.Document, metadata DocumentMetadata) error + type MockDocWriterMockRecorder struct + func (mr *MockDocWriterMockRecorder) Write(document, metadata interface{}) *gomock.Call + type MockDocumentOwner struct + func NewMockDocumentOwner(ctrl *gomock.Controller) *MockDocumentOwner + func (m *MockDocumentOwner) EXPECT() *MockDocumentOwnerMockRecorder + func (m *MockDocumentOwner) IsOwner(arg0 context.Context, arg1 did.DID) (bool, error) + func (m *MockDocumentOwner) ListOwned(ctx context.Context) ([]did.DID, error) + type MockDocumentOwnerMockRecorder struct + func (mr *MockDocumentOwnerMockRecorder) IsOwner(arg0, arg1 interface{}) *gomock.Call + func (mr *MockDocumentOwnerMockRecorder) ListOwned(ctx interface{}) *gomock.Call + type MockKeyResolver struct + func NewMockKeyResolver(ctrl *gomock.Controller) *MockKeyResolver + func (m *MockKeyResolver) EXPECT() *MockKeyResolverMockRecorder + func (m *MockKeyResolver) ResolveAssertionKeyID(id did.DID) (ssi.URI, error) + func (m *MockKeyResolver) ResolveKeyAgreementKey(id did.DID) (crypto.PublicKey, error) + func (m *MockKeyResolver) ResolvePublicKey(kid string, sourceTransactionsRefs []hash.SHA256Hash) (crypto.PublicKey, error) + func (m *MockKeyResolver) ResolveRelationKey(keyID string, validAt *time.Time, relationType RelationType) (crypto.PublicKey, error) + func (m *MockKeyResolver) ResolveRelationKeyID(id did.DID, relationType RelationType) (ssi.URI, error) + func (m *MockKeyResolver) ResolveSigningKey(keyID string, validAt *time.Time) (crypto.PublicKey, error) + func (m *MockKeyResolver) ResolveSigningKeyID(holder did.DID, validAt *time.Time) (string, error) + type MockKeyResolverMockRecorder struct + func (mr *MockKeyResolverMockRecorder) ResolveAssertionKeyID(id interface{}) *gomock.Call + func (mr *MockKeyResolverMockRecorder) ResolveKeyAgreementKey(id interface{}) *gomock.Call + func (mr *MockKeyResolverMockRecorder) ResolvePublicKey(kid, sourceTransactionsRefs interface{}) *gomock.Call + func (mr *MockKeyResolverMockRecorder) ResolveRelationKey(keyID, validAt, relationType interface{}) *gomock.Call + func (mr *MockKeyResolverMockRecorder) ResolveRelationKeyID(id, relationType interface{}) *gomock.Call + func (mr *MockKeyResolverMockRecorder) ResolveSigningKey(keyID, validAt interface{}) *gomock.Call + func (mr *MockKeyResolverMockRecorder) ResolveSigningKeyID(holder, validAt interface{}) *gomock.Call + type MockPredicate struct + func NewMockPredicate(ctrl *gomock.Controller) *MockPredicate + func (m *MockPredicate) EXPECT() *MockPredicateMockRecorder + func (m *MockPredicate) Match(arg0 did.Document, arg1 DocumentMetadata) bool + type MockPredicateMockRecorder struct + func (mr *MockPredicateMockRecorder) Match(arg0, arg1 interface{}) *gomock.Call + type MockServiceResolver struct + func NewMockServiceResolver(ctrl *gomock.Controller) *MockServiceResolver + func (m *MockServiceResolver) EXPECT() *MockServiceResolverMockRecorder + func (m *MockServiceResolver) Resolve(query ssi.URI, maxDepth int) (did.Service, error) + func (m *MockServiceResolver) ResolveEx(endpoint ssi.URI, depth, maxDepth int, documentCache map[string]*did.Document) (did.Service, error) + type MockServiceResolverMockRecorder struct + func (mr *MockServiceResolverMockRecorder) Resolve(query, maxDepth interface{}) *gomock.Call + func (mr *MockServiceResolverMockRecorder) ResolveEx(endpoint, depth, maxDepth, documentCache interface{}) *gomock.Call + type MockVDR struct + func NewMockVDR(ctrl *gomock.Controller) *MockVDR + func (m *MockVDR) ConflictedDocuments() ([]did.Document, []DocumentMetadata, error) + func (m *MockVDR) Create(ctx context.Context, options DIDCreationOptions) (*did.Document, crypto0.Key, error) + func (m *MockVDR) EXPECT() *MockVDRMockRecorder + func (m *MockVDR) IsOwner(arg0 context.Context, arg1 did.DID) (bool, error) + func (m *MockVDR) ListOwned(ctx context.Context) ([]did.DID, error) + func (m *MockVDR) Update(ctx context.Context, id did.DID, next did.Document) error + type MockVDRMockRecorder struct + func (mr *MockVDRMockRecorder) ConflictedDocuments() *gomock.Call + func (mr *MockVDRMockRecorder) Create(ctx, options interface{}) *gomock.Call + func (mr *MockVDRMockRecorder) IsOwner(arg0, arg1 interface{}) *gomock.Call + func (mr *MockVDRMockRecorder) ListOwned(ctx interface{}) *gomock.Call + func (mr *MockVDRMockRecorder) Update(ctx, id, next interface{}) *gomock.Call + type Predicate interface + Match func(did.Document, DocumentMetadata) bool + type RelationType uint + const AssertionMethod + const Authentication + const CapabilityDelegation + const CapabilityInvocation + const KeyAgreement + type ResolveMetadata struct + AllowDeactivated bool + Hash *hash.SHA256Hash + ResolveTime *time.Time + SourceTransaction *hash.SHA256Hash + type ServiceResolver interface + Resolve func(query ssi.URI, maxDepth int) (did.Service, error) + ResolveEx func(endpoint ssi.URI, depth int, maxDepth int, ...) (did.Service, error) + type VDR interface + ConflictedDocuments func() ([]did.Document, []DocumentMetadata, error) Other modules containing this package github.com/nuts-foundation/nuts-node