@veramo/credential-ld 3.1.1-next.10 → 3.1.1-next.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -115,14 +115,14 @@ class CredentialIssuerLD {
115
115
  verifyCredentialLD(args, context) {
116
116
  return __awaiter(this, void 0, void 0, function* () {
117
117
  const credential = args.credential;
118
- return this.ldCredentialModule.verifyCredential(credential, context);
118
+ return this.ldCredentialModule.verifyCredential(credential, args.fetchRemoteContexts || false, context);
119
119
  });
120
120
  }
121
121
  /** {@inheritdoc ICredentialIssuerLD.verifyPresentationLD} */
122
122
  verifyPresentationLD(args, context) {
123
123
  return __awaiter(this, void 0, void 0, function* () {
124
124
  const presentation = args.presentation;
125
- return this.ldCredentialModule.verifyPresentation(presentation, args.challenge, args.domain, context);
125
+ return this.ldCredentialModule.verifyPresentation(presentation, args.challenge, args.domain, args.fetchRemoteContexts || false, context);
126
126
  });
127
127
  }
128
128
  findSigningKeyWithId(context, identifier, keyRef) {
@@ -1 +1 @@
1
- {"version":3,"file":"action-handler.js","sourceRoot":"","sources":["../src/action-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"action-handler.js","sourceRoot":"","sources":["../src/action-handler.ts"],"names":[],"mappings":"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"}
@@ -16,10 +16,10 @@ export declare class LdCredentialModule {
16
16
  ldContextLoader: LdContextLoader;
17
17
  ldSuiteLoader: LdSuiteLoader;
18
18
  });
19
- getDocumentLoader(context: IAgentContext<IResolver>): any;
19
+ getDocumentLoader(context: IAgentContext<IResolver>, attemptToFetchContexts?: boolean): any;
20
20
  issueLDVerifiableCredential(credential: CredentialPayload, issuerDid: string, key: IKey, verificationMethodId: string, context: IAgentContext<RequiredAgentMethods>): Promise<VerifiableCredential>;
21
21
  signLDVerifiablePresentation(presentation: PresentationPayload, holderDid: string, key: IKey, verificationMethodId: string, challenge: string | undefined, domain: string | undefined, context: IAgentContext<RequiredAgentMethods>): Promise<VerifiablePresentation>;
22
- verifyCredential(credential: VerifiableCredential, context: IAgentContext<IResolver>): Promise<boolean>;
23
- verifyPresentation(presentation: VerifiablePresentation, challenge: string | undefined, domain: string | undefined, context: IAgentContext<IResolver>): Promise<boolean>;
22
+ verifyCredential(credential: VerifiableCredential, fetchRemoteContexts: boolean | undefined, context: IAgentContext<IResolver>): Promise<boolean>;
23
+ verifyPresentation(presentation: VerifiablePresentation, challenge: string | undefined, domain: string | undefined, fetchRemoteContexts: boolean | undefined, context: IAgentContext<IResolver>): Promise<boolean>;
24
24
  }
25
25
  //# sourceMappingURL=ld-credential-module.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ld-credential-module.d.ts","sourceRoot":"","sources":["../src/ld-credential-module.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,IAAI,EACJ,SAAS,EACT,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACvB,MAAM,cAAc,CAAA;AAIrB,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAMlD,qBAAa,kBAAkB;IAC7B;;;;;;OAMG;IAEH,OAAO,CAAC,eAAe,CAAiB;IACxC,aAAa,EAAE,aAAa,CAAA;gBAChB,OAAO,EAAE;QAAE,eAAe,EAAE,eAAe,CAAC;QAAC,aAAa,EAAE,aAAa,CAAA;KAAE;IAKvF,iBAAiB,CAAC,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC;IAwC7C,2BAA2B,CAC/B,UAAU,EAAE,iBAAiB,EAC7B,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,IAAI,EACT,oBAAoB,EAAE,MAAM,EAC5B,OAAO,EAAE,aAAa,CAAC,oBAAoB,CAAC,GAC3C,OAAO,CAAC,oBAAoB,CAAC;IAe1B,4BAA4B,CAChC,YAAY,EAAE,mBAAmB,EACjC,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,IAAI,EACT,oBAAoB,EAAE,MAAM,EAC5B,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,OAAO,EAAE,aAAa,CAAC,oBAAoB,CAAC,GAC3C,OAAO,CAAC,sBAAsB,CAAC;IAiB5B,gBAAgB,CACpB,UAAU,EAAE,oBAAoB,EAChC,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC,GAChC,OAAO,CAAC,OAAO,CAAC;IAmBb,kBAAkB,CACtB,YAAY,EAAE,sBAAsB,EACpC,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC,GAChC,OAAO,CAAC,OAAO,CAAC;CAoBpB"}
1
+ {"version":3,"file":"ld-credential-module.d.ts","sourceRoot":"","sources":["../src/ld-credential-module.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,IAAI,EACJ,SAAS,EACT,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACvB,MAAM,cAAc,CAAA;AAKrB,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAMlD,qBAAa,kBAAkB;IAC7B;;;;;;OAMG;IAEH,OAAO,CAAC,eAAe,CAAiB;IACxC,aAAa,EAAE,aAAa,CAAA;gBAChB,OAAO,EAAE;QAAE,eAAe,EAAE,eAAe,CAAC;QAAC,aAAa,EAAE,aAAa,CAAA;KAAE;IAKvF,iBAAiB,CAAC,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC,EAAE,sBAAsB,GAAE,OAAe;IAyDtF,2BAA2B,CAC/B,UAAU,EAAE,iBAAiB,EAC7B,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,IAAI,EACT,oBAAoB,EAAE,MAAM,EAC5B,OAAO,EAAE,aAAa,CAAC,oBAAoB,CAAC,GAC3C,OAAO,CAAC,oBAAoB,CAAC;IAe1B,4BAA4B,CAChC,YAAY,EAAE,mBAAmB,EACjC,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,IAAI,EACT,oBAAoB,EAAE,MAAM,EAC5B,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,OAAO,EAAE,aAAa,CAAC,oBAAoB,CAAC,GAC3C,OAAO,CAAC,sBAAsB,CAAC;IAiB5B,gBAAgB,CACpB,UAAU,EAAE,oBAAoB,EAChC,mBAAmB,qBAAiB,EACpC,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC,GAChC,OAAO,CAAC,OAAO,CAAC;IAmBb,kBAAkB,CACtB,YAAY,EAAE,sBAAsB,EACpC,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,mBAAmB,qBAAiB,EACpC,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC,GAChC,OAAO,CAAC,OAAO,CAAC;CAoBpB"}
@@ -32,6 +32,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
32
32
  };
33
33
  Object.defineProperty(exports, "__esModule", { value: true });
34
34
  exports.LdCredentialModule = void 0;
35
+ const cross_fetch_1 = __importDefault(require("cross-fetch"));
35
36
  const debug_1 = __importDefault(require("debug"));
36
37
  const jsonld_signatures_1 = require("jsonld-signatures");
37
38
  const vc = __importStar(require("vc-js"));
@@ -42,7 +43,7 @@ class LdCredentialModule {
42
43
  this.ldContextLoader = options.ldContextLoader;
43
44
  this.ldSuiteLoader = options.ldSuiteLoader;
44
45
  }
45
- getDocumentLoader(context) {
46
+ getDocumentLoader(context, attemptToFetchContexts = false) {
46
47
  return (0, jsonld_signatures_1.extendContextLoader)((url) => __awaiter(this, void 0, void 0, function* () {
47
48
  // console.log(`resolving context for: ${url}`)
48
49
  // did resolution
@@ -70,8 +71,27 @@ class LdCredentialModule {
70
71
  document: contextDoc,
71
72
  };
72
73
  }
73
- debug('WARNING: Possible unknown context/identifier for', url);
74
- console.log(`WARNING: Possible unknown context/identifier for: ${url}`);
74
+ else {
75
+ if (attemptToFetchContexts) {
76
+ // attempt to fetch the remote context!!!! MEGA FAIL for JSON-LD.
77
+ debug("WARNING: attempting to fetch the doc directly for ", url);
78
+ try {
79
+ const response = yield (0, cross_fetch_1.default)(url);
80
+ if (response.status === 200) {
81
+ const document = yield response.json();
82
+ return {
83
+ contextUrl: null,
84
+ documentUrl: url,
85
+ document
86
+ };
87
+ }
88
+ }
89
+ catch (e) {
90
+ debug("WARNING: unable to fetch the doc or interpret it as JSON", e);
91
+ }
92
+ }
93
+ }
94
+ debug(`WARNING: Possible unknown context/identifier for ${url} \n falling back to default documentLoader`);
75
95
  return vc.defaultDocumentLoader(url);
76
96
  }));
77
97
  }
@@ -105,12 +125,12 @@ class LdCredentialModule {
105
125
  });
106
126
  });
107
127
  }
108
- verifyCredential(credential, context) {
128
+ verifyCredential(credential, fetchRemoteContexts = false, context) {
109
129
  return __awaiter(this, void 0, void 0, function* () {
110
130
  const result = yield vc.verifyCredential({
111
131
  credential,
112
132
  suite: this.ldSuiteLoader.getAllSignatureSuites().map((x) => x.getSuiteForVerification()),
113
- documentLoader: this.getDocumentLoader(context),
133
+ documentLoader: this.getDocumentLoader(context, fetchRemoteContexts),
114
134
  purpose: new AssertionProofPurpose(),
115
135
  compactProof: false,
116
136
  });
@@ -123,12 +143,12 @@ class LdCredentialModule {
123
143
  throw Error('Error verifying LD Verifiable Credential');
124
144
  });
125
145
  }
126
- verifyPresentation(presentation, challenge, domain, context) {
146
+ verifyPresentation(presentation, challenge, domain, fetchRemoteContexts = false, context) {
127
147
  return __awaiter(this, void 0, void 0, function* () {
128
148
  const result = yield vc.verify({
129
149
  presentation,
130
150
  suite: this.ldSuiteLoader.getAllSignatureSuites().map((x) => x.getSuiteForVerification()),
131
- documentLoader: this.getDocumentLoader(context),
151
+ documentLoader: this.getDocumentLoader(context, fetchRemoteContexts),
132
152
  challenge,
133
153
  domain,
134
154
  purpose: new AssertionProofPurpose(),
@@ -1 +1 @@
1
- {"version":3,"file":"ld-credential-module.js","sourceRoot":"","sources":["../src/ld-credential-module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ld-credential-module.js","sourceRoot":"","sources":["../src/ld-credential-module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,8DAA+B;AAC/B,kDAAyB;AACzB,yDAAiE;AACjE,0CAA2B;AAK3B,MAAM,qBAAqB,GAAG,4BAAQ,CAAC,qBAAqB,CAAA;AAE5D,MAAM,KAAK,GAAG,IAAA,eAAK,EAAC,iCAAiC,CAAC,CAAA;AAEtD,MAAa,kBAAkB;IAW7B,YAAY,OAA2E;QACrF,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAA;QAC9C,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAA;IAC5C,CAAC;IAED,iBAAiB,CAAC,OAAiC,EAAE,yBAAkC,KAAK;QAC1F,OAAO,IAAA,uCAAmB,EAAC,CAAO,GAAW,EAAE,EAAE;YAC/C,+CAA+C;YAE/C,iBAAiB;YACjB,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;gBACxC,MAAM,gBAAgB,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAA;gBACxE,MAAM,MAAM,GAAG,gBAAgB,CAAC,WAAW,CAAA;gBAE3C,IAAI,CAAC,MAAM;oBAAE,OAAM;gBAEnB,8EAA8E;gBAC9E,kFAAkF;gBAClF,gFAAgF;gBAChF,IAAI,CAAC,aAAa,CAAC,qBAAqB,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,4BAA4B,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAA;gBAEtG,kFAAkF;gBAClF,OAAO;oBACL,UAAU,EAAE,IAAI;oBAChB,WAAW,EAAE,GAAG;oBAChB,QAAQ,EAAE,MAAM;iBACjB,CAAA;aACF;YAED,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBACjC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;gBACtD,OAAO;oBACL,UAAU,EAAE,IAAI;oBAChB,WAAW,EAAE,GAAG;oBAChB,QAAQ,EAAE,UAAU;iBACrB,CAAA;aACF;iBAAM;gBACL,IAAI,sBAAsB,EAAE;oBAC1B,iEAAiE;oBACjE,KAAK,CAAC,oDAAoD,EAAE,GAAG,CAAC,CAAA;oBAChE,IAAI;wBACF,MAAM,QAAQ,GAAG,MAAM,IAAA,qBAAK,EAAC,GAAG,CAAC,CAAA;wBACjC,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE;4BAC3B,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;4BACtC,OAAO;gCACL,UAAU,EAAE,IAAI;gCAChB,WAAW,EAAE,GAAG;gCAChB,QAAQ;6BACT,CAAA;yBACF;qBACF;oBAAC,OAAO,CAAC,EAAE;wBACV,KAAK,CAAC,0DAA0D,EAAE,CAAC,CAAC,CAAA;qBACrE;iBACF;aACF;YAED,KAAK,CAAC,oDAAoD,GAAG,4CAA4C,CAAC,CAAA;YAE1G,OAAO,EAAE,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAA;QACtC,CAAC,CAAA,CAAC,CAAA;IACJ,CAAC;IAEK,2BAA2B,CAC/B,UAA6B,EAC7B,SAAiB,EACjB,GAAS,EACT,oBAA4B,EAC5B,OAA4C;;YAE5C,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,2BAA2B,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACtE,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAA;YAEtD,+EAA+E;YAC/E,KAAK,CAAC,0BAA0B,CAAC,UAAU,CAAC,CAAA;YAE5C,OAAO,MAAM,EAAE,CAAC,KAAK,CAAC;gBACpB,UAAU;gBACV,KAAK,EAAE,KAAK,CAAC,kBAAkB,CAAC,GAAG,EAAE,SAAS,EAAE,oBAAoB,EAAE,OAAO,CAAC;gBAC9E,cAAc;gBACd,YAAY,EAAE,KAAK;aACpB,CAAC,CAAA;QACJ,CAAC;KAAA;IAEK,4BAA4B,CAChC,YAAiC,EACjC,SAAiB,EACjB,GAAS,EACT,oBAA4B,EAC5B,SAA6B,EAC7B,MAA0B,EAC1B,OAA4C;;YAE5C,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,2BAA2B,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACtE,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAA;YAEtD,KAAK,CAAC,0BAA0B,CAAC,YAAY,CAAC,CAAA;YAE9C,OAAO,MAAM,EAAE,CAAC,gBAAgB,CAAC;gBAC/B,YAAY;gBACZ,KAAK,EAAE,KAAK,CAAC,kBAAkB,CAAC,GAAG,EAAE,SAAS,EAAE,oBAAoB,EAAE,OAAO,CAAC;gBAC9E,SAAS;gBACT,MAAM;gBACN,cAAc;gBACd,OAAO,EAAE,IAAI,qBAAqB,EAAE;gBACpC,YAAY,EAAE,KAAK;aACpB,CAAC,CAAA;QACJ,CAAC;KAAA;IAEK,gBAAgB,CACpB,UAAgC,EAChC,sBAA+B,KAAK,EACpC,OAAiC;;YAEjC,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,gBAAgB,CAAC;gBACvC,UAAU;gBACV,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,qBAAqB,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,uBAAuB,EAAE,CAAC;gBACzF,cAAc,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,mBAAmB,CAAC;gBACpE,OAAO,EAAE,IAAI,qBAAqB,EAAE;gBACpC,YAAY,EAAE,KAAK;aACpB,CAAC,CAAA;YAEF,IAAI,MAAM,CAAC,QAAQ;gBAAE,OAAO,IAAI,CAAA;YAEhC,gBAAgB;YAEhB,+BAA+B;YAC/B,KAAK,CAAC,6CAA6C,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;YACrF,gDAAgD;YAChD,MAAM,KAAK,CAAC,0CAA0C,CAAC,CAAA;QACzD,CAAC;KAAA;IAEK,kBAAkB,CACtB,YAAoC,EACpC,SAA6B,EAC7B,MAA0B,EAC1B,sBAA+B,KAAK,EACpC,OAAiC;;YAEjC,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC;gBAC7B,YAAY;gBACZ,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,qBAAqB,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,uBAAuB,EAAE,CAAC;gBACzF,cAAc,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,mBAAmB,CAAC;gBACpE,SAAS;gBACT,MAAM;gBACN,OAAO,EAAE,IAAI,qBAAqB,EAAE;gBACpC,YAAY,EAAE,KAAK;aACpB,CAAC,CAAA;YAEF,IAAI,MAAM,CAAC,QAAQ;gBAAE,OAAO,IAAI,CAAA;YAEhC,gBAAgB;YAEhB,+BAA+B;YAC/B,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAA;YACzD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;YAC5C,MAAM,KAAK,CAAC,4CAA4C,CAAC,CAAA;QAC3D,CAAC;KAAA;CACF;AAxKD,gDAwKC"}
package/build/types.d.ts CHANGED
@@ -133,6 +133,12 @@ export interface IVerifyCredentialLDArgs {
133
133
  *
134
134
  */
135
135
  credential: VerifiableCredential;
136
+ /**
137
+ * Set this to true if you want the '@context' URLs to be fetched in case they are not pre-loaded.
138
+ *
139
+ * @default false
140
+ */
141
+ fetchRemoteContexts?: boolean;
136
142
  }
137
143
  /**
138
144
  * Encapsulates the parameters required to verify a
@@ -158,6 +164,12 @@ export interface IVerifyPresentationLDArgs {
158
164
  * Optional (only for JWT) string domain parameter to verify the verifiable presentation against
159
165
  */
160
166
  domain?: string;
167
+ /**
168
+ * Set this to true if you want the '@context' URLs to be fetched in case they are not pre-loaded.
169
+ *
170
+ * @default false
171
+ */
172
+ fetchRemoteContexts?: boolean;
161
173
  }
162
174
  /**
163
175
  * Represents the requirements that this plugin has.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,WAAW,EAEX,WAAW,EACX,gBAAgB,EAChB,SAAS,EACT,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACvB,MAAM,cAAc,CAAA;AAErB;;;;;;;GAOG;AACH,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;IAC3D;;;;;;;;;;;;;OAaG;IACH,8BAA8B,CAC5B,IAAI,EAAE,mCAAmC,EACzC,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,sBAAsB,CAAC,CAAA;IAElC;;;;;;;;;;;;;OAaG;IACH,4BAA4B,CAC1B,IAAI,EAAE,iCAAiC,EACvC,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,oBAAoB,CAAC,CAAA;IAEhC;;;;;;;;;;;OAWG;IACH,kBAAkB,CAAC,IAAI,EAAE,uBAAuB,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAE9F;;;;;;;;;;;OAWG;IACH,oBAAoB,CAAC,IAAI,EAAE,yBAAyB,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CACnG;AAED;;;;;GAKG;AACH,MAAM,WAAW,mCAAmC;IAClD;;;;;;;;OAQG;IACH,YAAY,EAAE,mBAAmB,CAAA;IAEjC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED;;;;;GAKG;AACH,MAAM,WAAW,iCAAiC;IAChD;;;;;;;;OAQG;IACH,UAAU,EAAE,iBAAiB,CAAA;IAE7B;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED;;;;;GAKG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;;;;;OAOG;IACH,UAAU,EAAE,oBAAoB,CAAA;CACjC;AAED;;;;;GAKG;AACH,MAAM,WAAW,yBAAyB;IACxC;;;;;;;OAOG;IACH,YAAY,EAAE,sBAAsB,CAAA;IAEpC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED;;;;;;;GAOG;AACH,oBAAY,gBAAgB,GAAG,aAAa,CAC1C,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,eAAe,GAAG,gBAAgB,CAAC,CACvG,CAAA;AAED,oBAAY,UAAU,GAAG;IACvB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAChC,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,WAAW,EAEX,WAAW,EACX,gBAAgB,EAChB,SAAS,EACT,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACvB,MAAM,cAAc,CAAA;AAErB;;;;;;;GAOG;AACH,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;IAC3D;;;;;;;;;;;;;OAaG;IACH,8BAA8B,CAC5B,IAAI,EAAE,mCAAmC,EACzC,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,sBAAsB,CAAC,CAAA;IAElC;;;;;;;;;;;;;OAaG;IACH,4BAA4B,CAC1B,IAAI,EAAE,iCAAiC,EACvC,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,oBAAoB,CAAC,CAAA;IAEhC;;;;;;;;;;;OAWG;IACH,kBAAkB,CAAC,IAAI,EAAE,uBAAuB,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAE9F;;;;;;;;;;;OAWG;IACH,oBAAoB,CAAC,IAAI,EAAE,yBAAyB,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CACnG;AAED;;;;;GAKG;AACH,MAAM,WAAW,mCAAmC;IAClD;;;;;;;;OAQG;IACH,YAAY,EAAE,mBAAmB,CAAA;IAEjC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED;;;;;GAKG;AACH,MAAM,WAAW,iCAAiC;IAChD;;;;;;;;OAQG;IACH,UAAU,EAAE,iBAAiB,CAAA;IAE7B;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED;;;;;GAKG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;;;;;OAOG;IACH,UAAU,EAAE,oBAAoB,CAAC;IAEjC;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAC9B;AAED;;;;;GAKG;AACH,MAAM,WAAW,yBAAyB;IACxC;;;;;;;OAOG;IACH,YAAY,EAAE,sBAAsB,CAAA;IAEpC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf;;;;OAIG;IACF,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAC/B;AAED;;;;;;;GAOG;AACH,oBAAY,gBAAgB,GAAG,aAAa,CAC1C,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,eAAe,GAAG,gBAAgB,CAAC,CACvG,CAAA;AAED,oBAAY,UAAU,GAAG;IACvB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAChC,CAAA"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@veramo/credential-ld",
3
3
  "description": "Veramo plugin for working with W3C JSON-LD Verifiable Credentials & Presentations.",
4
- "version": "3.1.1-next.10+ef7797d4",
4
+ "version": "3.1.1-next.14+b4e7db7d",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",
7
7
  "scripts": {
@@ -17,9 +17,9 @@
17
17
  "@transmute/credentials-context": "^0.7.0-unstable.26",
18
18
  "@transmute/ed25519-signature-2018": "^0.7.0-unstable.27",
19
19
  "@transmute/lds-ecdsa-secp256k1-recovery2020": "^0.0.7",
20
- "@veramo/core": "^3.1.1-next.10+ef7797d4",
21
- "@veramo/did-resolver": "^3.1.1-next.10+ef7797d4",
22
- "@veramo/utils": "^3.1.1-next.10+ef7797d4",
20
+ "@veramo/core": "^3.1.1-next.14+b4e7db7d",
21
+ "@veramo/did-resolver": "^3.1.1-next.14+b4e7db7d",
22
+ "@veramo/utils": "^3.1.1-next.14+b4e7db7d",
23
23
  "debug": "^4.1.1",
24
24
  "did-resolver": "3.1.3",
25
25
  "jsonld": "^5.2.0",
@@ -29,8 +29,8 @@
29
29
  },
30
30
  "devDependencies": {
31
31
  "@types/debug": "4.1.7",
32
- "borc": "^3.0.0",
33
- "typescript": "4.4.4"
32
+ "borc": "3.0.0",
33
+ "typescript": "4.5.2"
34
34
  },
35
35
  "files": [
36
36
  "build/**/*",
@@ -47,5 +47,5 @@
47
47
  "author": "Mircea Nistor <mircea.nistor@mesh.xyz>",
48
48
  "license": "Apache-2.0",
49
49
  "keywords": [],
50
- "gitHead": "ef7797d4c5f20b22e4e39a5ad60a851fa1c4f2ed"
50
+ "gitHead": "b4e7db7df4e22bbd703d680dcac5970d84c72bfc"
51
51
  }
@@ -326,6 +326,11 @@
326
326
  "credential": {
327
327
  "$ref": "#/components/schemas/VerifiableCredential",
328
328
  "description": "The json payload of the Credential according to the\n {@link https://www.w3.org/TR/vc-data-model/#credentials | canonical model } \n\nThe signer of the Credential is chosen based on the `issuer.id` property of the `credential`"
329
+ },
330
+ "fetchRemoteContexts": {
331
+ "type": "boolean",
332
+ "description": "Set this to true if you want the '@context' URLs to be fetched in case they are not pre-loaded.",
333
+ "default": false
329
334
  }
330
335
  },
331
336
  "required": [
@@ -347,6 +352,11 @@
347
352
  "domain": {
348
353
  "type": "string",
349
354
  "description": "Optional (only for JWT) string domain parameter to verify the verifiable presentation against"
355
+ },
356
+ "fetchRemoteContexts": {
357
+ "type": "boolean",
358
+ "description": "Set this to true if you want the '@context' URLs to be fetched in case they are not pre-loaded.",
359
+ "default": false
350
360
  }
351
361
  },
352
362
  "required": [
@@ -183,7 +183,7 @@ export class CredentialIssuerLD implements IAgentPlugin {
183
183
  context: IRequiredContext,
184
184
  ): Promise<boolean> {
185
185
  const credential = args.credential
186
- return this.ldCredentialModule.verifyCredential(credential, context)
186
+ return this.ldCredentialModule.verifyCredential(credential, args.fetchRemoteContexts || false, context)
187
187
  }
188
188
 
189
189
  /** {@inheritdoc ICredentialIssuerLD.verifyPresentationLD} */
@@ -192,7 +192,7 @@ export class CredentialIssuerLD implements IAgentPlugin {
192
192
  context: IRequiredContext,
193
193
  ): Promise<boolean> {
194
194
  const presentation = args.presentation
195
- return this.ldCredentialModule.verifyPresentation(presentation, args.challenge, args.domain, context)
195
+ return this.ldCredentialModule.verifyPresentation(presentation, args.challenge, args.domain, args.fetchRemoteContexts || false, context)
196
196
  }
197
197
 
198
198
  private async findSigningKeyWithId(
@@ -7,6 +7,7 @@ import {
7
7
  VerifiableCredential,
8
8
  VerifiablePresentation,
9
9
  } from '@veramo/core'
10
+ import fetch from 'cross-fetch'
10
11
  import Debug from 'debug'
11
12
  import { extendContextLoader, purposes } from 'jsonld-signatures'
12
13
  import * as vc from 'vc-js'
@@ -34,7 +35,7 @@ export class LdCredentialModule {
34
35
  this.ldSuiteLoader = options.ldSuiteLoader
35
36
  }
36
37
 
37
- getDocumentLoader(context: IAgentContext<IResolver>) {
38
+ getDocumentLoader(context: IAgentContext<IResolver>, attemptToFetchContexts: boolean = false) {
38
39
  return extendContextLoader(async (url: string) => {
39
40
  // console.log(`resolving context for: ${url}`)
40
41
 
@@ -65,10 +66,27 @@ export class LdCredentialModule {
65
66
  documentUrl: url,
66
67
  document: contextDoc,
67
68
  }
69
+ } else {
70
+ if (attemptToFetchContexts) {
71
+ // attempt to fetch the remote context!!!! MEGA FAIL for JSON-LD.
72
+ debug("WARNING: attempting to fetch the doc directly for ", url)
73
+ try {
74
+ const response = await fetch(url)
75
+ if (response.status === 200) {
76
+ const document = await response.json()
77
+ return {
78
+ contextUrl: null,
79
+ documentUrl: url,
80
+ document
81
+ }
82
+ }
83
+ } catch (e) {
84
+ debug("WARNING: unable to fetch the doc or interpret it as JSON", e)
85
+ }
86
+ }
68
87
  }
69
88
 
70
- debug('WARNING: Possible unknown context/identifier for', url)
71
- console.log(`WARNING: Possible unknown context/identifier for: ${url}`)
89
+ debug(`WARNING: Possible unknown context/identifier for ${url} \n falling back to default documentLoader`)
72
90
 
73
91
  return vc.defaultDocumentLoader(url)
74
92
  })
@@ -122,12 +140,13 @@ export class LdCredentialModule {
122
140
 
123
141
  async verifyCredential(
124
142
  credential: VerifiableCredential,
143
+ fetchRemoteContexts: boolean = false,
125
144
  context: IAgentContext<IResolver>,
126
145
  ): Promise<boolean> {
127
146
  const result = await vc.verifyCredential({
128
147
  credential,
129
148
  suite: this.ldSuiteLoader.getAllSignatureSuites().map((x) => x.getSuiteForVerification()),
130
- documentLoader: this.getDocumentLoader(context),
149
+ documentLoader: this.getDocumentLoader(context, fetchRemoteContexts),
131
150
  purpose: new AssertionProofPurpose(),
132
151
  compactProof: false,
133
152
  })
@@ -146,12 +165,13 @@ export class LdCredentialModule {
146
165
  presentation: VerifiablePresentation,
147
166
  challenge: string | undefined,
148
167
  domain: string | undefined,
168
+ fetchRemoteContexts: boolean = false,
149
169
  context: IAgentContext<IResolver>,
150
170
  ): Promise<boolean> {
151
171
  const result = await vc.verify({
152
172
  presentation,
153
173
  suite: this.ldSuiteLoader.getAllSignatureSuites().map((x) => x.getSuiteForVerification()),
154
- documentLoader: this.getDocumentLoader(context),
174
+ documentLoader: this.getDocumentLoader(context, fetchRemoteContexts),
155
175
  challenge,
156
176
  domain,
157
177
  purpose: new AssertionProofPurpose(),
package/src/types.ts CHANGED
@@ -160,7 +160,14 @@ export interface IVerifyCredentialLDArgs {
160
160
  * of the `credential`
161
161
  *
162
162
  */
163
- credential: VerifiableCredential
163
+ credential: VerifiableCredential,
164
+
165
+ /**
166
+ * Set this to true if you want the '@context' URLs to be fetched in case they are not pre-loaded.
167
+ *
168
+ * @default false
169
+ */
170
+ fetchRemoteContexts?: boolean
164
171
  }
165
172
 
166
173
  /**
@@ -189,6 +196,13 @@ export interface IVerifyPresentationLDArgs {
189
196
  * Optional (only for JWT) string domain parameter to verify the verifiable presentation against
190
197
  */
191
198
  domain?: string
199
+
200
+ /**
201
+ * Set this to true if you want the '@context' URLs to be fetched in case they are not pre-loaded.
202
+ *
203
+ * @default false
204
+ */
205
+ fetchRemoteContexts?: boolean
192
206
  }
193
207
 
194
208
  /**