diff --git a/internal/credential/issuer.go b/internal/credential/issuer.go
index 7f81064022e63ba4d52cddb9a9205e661ee56744..84d96bd3892493fd36dd3be92198f5a46c58d5ee 100644
--- a/internal/credential/issuer.go
+++ b/internal/credential/issuer.go
@@ -8,9 +8,9 @@ import (
 	"github.com/hyperledger/aries-framework-go/pkg/doc/signature/suite/jsonwebsignature2020"
 	"github.com/hyperledger/aries-framework-go/pkg/doc/util"
 	"github.com/hyperledger/aries-framework-go/pkg/doc/verifiable"
+	"github.com/hyperledger/aries-framework-go/pkg/vdr"
+	"github.com/hyperledger/aries-framework-go/pkg/vdr/web"
 	"github.com/piprate/json-gold/ld"
-
-	"code.vereign.com/gaiax/tsa/infohub/internal/credential/keyfetcher"
 )
 
 var defaultContexts = []string{
@@ -68,11 +68,13 @@ func (i *Issuer) NewPresentation(contexts []string, vc ...*verifiable.Credential
 }
 
 func (i *Issuer) ParsePresentation(vpBytes []byte) (*verifiable.Presentation, error) {
-	fetcher := keyfetcher.NewWebKeyFetcher(i.httpClient)
+	webvdr := web.New()
+	registry := vdr.New(vdr.WithVDR(webvdr))
+	fetcher := verifiable.NewVDRKeyResolver(registry)
 
 	return verifiable.ParsePresentation(
 		vpBytes,
-		verifiable.WithPresPublicKeyFetcher(fetcher),
+		verifiable.WithPresPublicKeyFetcher(fetcher.PublicKeyFetcher()),
 		verifiable.WithPresEmbeddedSignatureSuites(
 			jsonwebsignature2020.New(suite.WithVerifier(jsonwebsignature2020.NewPublicKeyVerifier())),
 		),