@nmshd/consumption 7.0.0-openid4vc.1 → 7.0.0-openid4vc.3

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.
Files changed (42) hide show
  1. package/dist/buildInformation.js +5 -5
  2. package/dist/modules/openid4vc/OpenId4VcController.d.ts +5 -0
  3. package/dist/modules/openid4vc/OpenId4VcController.d.ts.map +1 -1
  4. package/dist/modules/openid4vc/OpenId4VcController.js +61 -27
  5. package/dist/modules/openid4vc/OpenId4VcController.js.map +1 -1
  6. package/dist/modules/openid4vc/index.d.ts +3 -3
  7. package/dist/modules/openid4vc/index.d.ts.map +1 -1
  8. package/dist/modules/openid4vc/index.js +3 -3
  9. package/dist/modules/openid4vc/index.js.map +1 -1
  10. package/dist/modules/openid4vc/local/BaseAgent.d.ts +8 -8
  11. package/dist/modules/openid4vc/local/BaseAgent.d.ts.map +1 -1
  12. package/dist/modules/openid4vc/local/BaseAgent.js +13 -17
  13. package/dist/modules/openid4vc/local/BaseAgent.js.map +1 -1
  14. package/dist/modules/openid4vc/local/{FakeFileSystem.d.ts → EnmeshedHolderFileSystem.d.ts} +3 -2
  15. package/dist/modules/openid4vc/local/EnmeshedHolderFileSystem.d.ts.map +1 -0
  16. package/dist/modules/openid4vc/local/EnmeshedHolderFileSystem.js +94 -0
  17. package/dist/modules/openid4vc/local/EnmeshedHolderFileSystem.js.map +1 -0
  18. package/dist/modules/openid4vc/local/{FakeKeyManagmentService.d.ts → EnmeshedHolderKeyManagmentService.d.ts} +13 -2
  19. package/dist/modules/openid4vc/local/EnmeshedHolderKeyManagmentService.d.ts.map +1 -0
  20. package/dist/modules/openid4vc/local/EnmeshedHolderKeyManagmentService.js +364 -0
  21. package/dist/modules/openid4vc/local/EnmeshedHolderKeyManagmentService.js.map +1 -0
  22. package/dist/modules/openid4vc/local/{FakeStorageService.d.ts → EnmeshedStorageService.d.ts} +10 -3
  23. package/dist/modules/openid4vc/local/EnmeshedStorageService.d.ts.map +1 -0
  24. package/dist/modules/openid4vc/local/EnmeshedStorageService.js +218 -0
  25. package/dist/modules/openid4vc/local/EnmeshedStorageService.js.map +1 -0
  26. package/dist/modules/openid4vc/local/Holder.d.ts +6 -4
  27. package/dist/modules/openid4vc/local/Holder.d.ts.map +1 -1
  28. package/dist/modules/openid4vc/local/Holder.js +82 -30
  29. package/dist/modules/openid4vc/local/Holder.js.map +1 -1
  30. package/dist/modules/openid4vc/local/LocalAgentDependencies.d.ts.map +1 -1
  31. package/dist/modules/openid4vc/local/LocalAgentDependencies.js +2 -4
  32. package/dist/modules/openid4vc/local/LocalAgentDependencies.js.map +1 -1
  33. package/package.json +10 -7
  34. package/dist/modules/openid4vc/local/FakeFileSystem.d.ts.map +0 -1
  35. package/dist/modules/openid4vc/local/FakeFileSystem.js +0 -67
  36. package/dist/modules/openid4vc/local/FakeFileSystem.js.map +0 -1
  37. package/dist/modules/openid4vc/local/FakeKeyManagmentService.d.ts.map +0 -1
  38. package/dist/modules/openid4vc/local/FakeKeyManagmentService.js +0 -127
  39. package/dist/modules/openid4vc/local/FakeKeyManagmentService.js.map +0 -1
  40. package/dist/modules/openid4vc/local/FakeStorageService.d.ts.map +0 -1
  41. package/dist/modules/openid4vc/local/FakeStorageService.js +0 -72
  42. package/dist/modules/openid4vc/local/FakeStorageService.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnmeshedStorageService.js","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/EnmeshedStorageService.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,10 @@
1
1
  import { X509Module } from "@credo-ts/core";
2
- import { OpenId4VcHolderModule, type OpenId4VciMetadata, type OpenId4VciResolvedCredentialOffer, type OpenId4VpResolvedAuthorizationRequest } from "@credo-ts/openid4vc";
2
+ import { OpenId4VcModule, type OpenId4VciMetadata, type OpenId4VciResolvedCredentialOffer, type OpenId4VpResolvedAuthorizationRequest } from "@credo-ts/openid4vc";
3
+ import { AccountController } from "@nmshd/transport";
4
+ import { AttributesController } from "../../attributes";
3
5
  import { BaseAgent } from "./BaseAgent";
4
6
  declare function getOpenIdHolderModules(): {
5
- readonly openId4VcHolder: OpenId4VcHolderModule;
7
+ readonly openid4vc: OpenId4VcModule<null, null>;
6
8
  readonly x509: X509Module;
7
9
  };
8
10
  export declare class Holder extends BaseAgent<ReturnType<typeof getOpenIdHolderModules>> {
@@ -10,8 +12,8 @@ export declare class Holder extends BaseAgent<ReturnType<typeof getOpenIdHolderM
10
12
  clientId: string;
11
13
  redirectUri: string;
12
14
  };
13
- constructor(port: number, name: string);
14
- static build(): Promise<Holder>;
15
+ constructor(accountController: AccountController, attributeController: AttributesController);
16
+ getVerifiableCredentials(ids: string[] | undefined): Promise<any[]>;
15
17
  resolveCredentialOffer(credentialOffer: string): Promise<any>;
16
18
  resolveIssuerMetadata(credentialIssuer: string): Promise<OpenId4VciMetadata>;
17
19
  initiateAuthorization(resolvedCredentialOffer: OpenId4VciResolvedCredentialOffer, credentialsToRequest: string[]): Promise<any>;
@@ -1 +1 @@
1
- {"version":3,"file":"Holder.d.ts","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/Holder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5K,OAAO,EACH,qBAAqB,EAIrB,KAAK,kBAAkB,EACvB,KAAK,iCAAiC,EACtC,KAAK,qCAAqC,EAC7C,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,iBAAS,sBAAsB;;;EAU9B;AAED,qBAAa,MAAO,SAAQ,SAAS,CAAC,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC;IACrE,MAAM;;;MAGX;gBAEiB,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;WAQzB,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IAS/B,sBAAsB,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAI7D,qBAAqB,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAI5E,qBAAqB,CAAC,uBAAuB,EAAE,iCAAiC,EAAE,oBAAoB,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IAiC/H,0BAA0B,CACnC,uBAAuB,EAAE,iCAAiC,EAC1D,OAAO,EAAE;QACL,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,oBAAoB,EAAE,MAAM,EAAE,CAAC;QAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,CAAC,EAAE,MAAM,CAAC;KACnB,GACF,OAAO,CAAC,GAAG,CAAC;IAiFF,mBAAmB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAMvD,yBAAyB,CAAC,2BAA2B,EAAE,qCAAqC,GAAG,OAAO,CAAC,GAAG,CAAC;IAuB3G,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC;IAKpB,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC;CAGvC"}
1
+ {"version":3,"file":"Holder.d.ts","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/Holder.ts"],"names":[],"mappings":"AAAA,OAAO,EAYH,UAAU,EACb,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACH,eAAe,EAIf,KAAK,kBAAkB,EACvB,KAAK,iCAAiC,EACtC,KAAK,qCAAqC,EAC7C,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,iBAAS,sBAAsB;;;EAW9B;AAED,qBAAa,MAAO,SAAQ,SAAS,CAAC,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC;IACrE,MAAM;;;MAGX;gBAEiB,iBAAiB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,oBAAoB;IAIrF,wBAAwB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IASnE,sBAAsB,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAI7D,qBAAqB,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAI5E,qBAAqB,CAAC,uBAAuB,EAAE,iCAAiC,EAAE,oBAAoB,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IAgC/H,0BAA0B,CACnC,uBAAuB,EAAE,iCAAiC,EAC1D,OAAO,EAAE;QACL,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,oBAAoB,EAAE,MAAM,EAAE,CAAC;QAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,CAAC,EAAE,MAAM,CAAC;KACnB,GACF,OAAO,CAAC,GAAG,CAAC;IA2HF,mBAAmB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAMvD,yBAAyB,CAAC,2BAA2B,EAAE,qCAAqC,GAAG,OAAO,CAAC,GAAG,CAAC;IAuD3G,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC;IAKpB,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC;CAGvC"}
@@ -6,42 +6,40 @@ const openid4vc_1 = require("@credo-ts/openid4vc");
6
6
  const BaseAgent_1 = require("./BaseAgent");
7
7
  function getOpenIdHolderModules() {
8
8
  return {
9
- openId4VcHolder: new openid4vc_1.OpenId4VcHolderModule(),
9
+ openid4vc: new openid4vc_1.OpenId4VcModule(),
10
10
  x509: new core_1.X509Module({
11
- getTrustedCertificatesForVerification: (_agentContext, { certificateChain }) => {
12
- // console.log(greenText(`dyncamically trusting certificate ${certificateChain[0].getIssuerNameField("C")} for verification of ${verification.type}`, true));
11
+ getTrustedCertificatesForVerification: (_agentContext, { certificateChain, verification }) => {
12
+ // eslint-disable-next-line no-console
13
+ console.log(`dyncamically trusting certificate ${certificateChain[0].getIssuerNameField("C")} for verification of ${verification.type}`);
13
14
  return [certificateChain[0].toString("pem")];
14
15
  }
15
16
  })
16
17
  };
17
18
  }
18
19
  class Holder extends BaseAgent_1.BaseAgent {
19
- constructor(port, name) {
20
- super({
21
- port,
22
- name,
23
- modules: getOpenIdHolderModules()
24
- });
20
+ constructor(accountController, attributeController) {
21
+ super(3000, `OpenId4VcHolder ${Math.random().toString()}`, getOpenIdHolderModules(), accountController, attributeController);
25
22
  this.client = {
26
23
  clientId: "wallet",
27
24
  redirectUri: "http://localhost:3000/redirect"
28
25
  };
29
26
  }
30
- static async build() {
31
- // the faked storrage service needs to be dependency injected before the agent is initialized
32
- const holder = new Holder(3000, `OpenId4VcHolder ${Math.random().toString()}`);
33
- await holder.initializeAgent("96213c3d7fc8d4d6754c7a0fd969598e");
34
- return holder;
27
+ async getVerifiableCredentials(ids) {
28
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion
29
+ const storageService = this.agent.dependencyManager.resolve(core_1.InjectionSymbols.StorageService);
30
+ const allCredentials = await storageService.getAllAsAttributes(this.agent.context, core_1.SdJwtVcRecord);
31
+ if (!ids)
32
+ return allCredentials;
33
+ return allCredentials.filter((vc) => ids.includes(vc.id.toString()));
35
34
  }
36
35
  async resolveCredentialOffer(credentialOffer) {
37
- return await this.agent.modules.openId4VcHolder.resolveCredentialOffer(credentialOffer);
36
+ return await this.agent.openid4vc.holder.resolveCredentialOffer(credentialOffer);
38
37
  }
39
38
  async resolveIssuerMetadata(credentialIssuer) {
40
- return await this.agent.modules.openId4VcHolder.resolveIssuerMetadata(credentialIssuer);
39
+ return await this.agent.openid4vc.holder.resolveIssuerMetadata(credentialIssuer);
41
40
  }
42
41
  async initiateAuthorization(resolvedCredentialOffer, credentialsToRequest) {
43
42
  const grants = resolvedCredentialOffer.credentialOfferPayload.grants;
44
- // TODO: extend iniateAuthorization in oid4vci lib? Or not?
45
43
  if (grants?.[openid4vc_1.preAuthorizedCodeGrantIdentifier]) {
46
44
  return {
47
45
  authorizationFlow: "PreAuthorized",
@@ -49,7 +47,7 @@ class Holder extends BaseAgent_1.BaseAgent {
49
47
  };
50
48
  }
51
49
  if (resolvedCredentialOffer.credentialOfferPayload.grants?.[openid4vc_1.authorizationCodeGrantIdentifier]) {
52
- const resolvedAuthorizationRequest = await this.agent.modules.openId4VcHolder.resolveOpenId4VciAuthorizationRequest(resolvedCredentialOffer, {
50
+ const resolvedAuthorizationRequest = await this.agent.openid4vc.holder.resolveOpenId4VciAuthorizationRequest(resolvedCredentialOffer, {
53
51
  clientId: this.client.clientId,
54
52
  redirectUri: this.client.redirectUri,
55
53
  scope: Object.entries(resolvedCredentialOffer.offeredCredentialConfigurations)
@@ -70,7 +68,7 @@ class Holder extends BaseAgent_1.BaseAgent {
70
68
  throw new Error("Unsupported grant type");
71
69
  }
72
70
  async requestAndStoreCredentials(resolvedCredentialOffer, options) {
73
- const tokenResponse = await this.agent.modules.openId4VcHolder.requestToken(options.code && options.clientId
71
+ const tokenResponse = await this.agent.openid4vc.holder.requestToken(options.code && options.clientId
74
72
  ? {
75
73
  resolvedCredentialOffer,
76
74
  clientId: options.clientId,
@@ -82,7 +80,7 @@ class Holder extends BaseAgent_1.BaseAgent {
82
80
  resolvedCredentialOffer,
83
81
  txCode: options.txCode
84
82
  });
85
- const credentialResponse = await this.agent.modules.openId4VcHolder.requestCredentials({
83
+ const credentialResponse = await this.agent.openid4vc.holder.requestCredentials({
86
84
  resolvedCredentialOffer,
87
85
  clientId: options.clientId,
88
86
  credentialConfigurationIds: options.credentialsToRequest,
@@ -125,37 +123,91 @@ class Holder extends BaseAgent_1.BaseAgent {
125
123
  },
126
124
  ...tokenResponse
127
125
  });
126
+ this.agent.config.logger.info("Credential response:", credentialResponse);
128
127
  const storedCredentials = await Promise.all(credentialResponse.credentials.map((response) => {
129
- // TODO: handle batch issuance
128
+ // TODO: batch issuance not yet supported
130
129
  const credential = response.credentials[0];
131
- if (credential instanceof core_1.W3cJwtVerifiableCredential || credential instanceof core_1.W3cJsonLdVerifiableCredential) {
132
- return this.agent.w3cCredentials.storeCredential({ credential });
130
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion
131
+ const enmeshedStorageService = this.agent.dependencyManager.resolve(core_1.InjectionSymbols.StorageService);
132
+ let credentialKey = "";
133
+ for (const resolved in resolvedCredentialOffer.offeredCredentialConfigurations) {
134
+ credentialKey = resolved;
135
+ }
136
+ const displayInfo = resolvedCredentialOffer.offeredCredentialConfigurations[credentialKey].display;
137
+ // if the displayInfo does not provide a logo - we try to load a logo from the issuers attributes
138
+ if (displayInfo !== undefined &&
139
+ displayInfo[0]?.logo === undefined &&
140
+ resolvedCredentialOffer.metadata.credentialIssuer.display !== undefined &&
141
+ resolvedCredentialOffer.metadata.credentialIssuer.display?.[0] !== undefined &&
142
+ resolvedCredentialOffer.metadata.credentialIssuer.display?.[0]?.["logo"] !== undefined) {
143
+ const logoInformation = resolvedCredentialOffer.metadata.credentialIssuer.display?.[0]?.["logo"];
144
+ displayInfo[0]["logo"] = logoInformation;
145
+ }
146
+ if (credential.claimFormat === core_1.ClaimFormat.MsoMdoc) {
147
+ return enmeshedStorageService.saveWithDisplay(this.agent.context, credential.base64Url, credential.claimFormat.toString(), JSON.stringify(displayInfo), credentialKey);
133
148
  }
134
- if (credential instanceof core_1.Mdoc) {
135
- return this.agent.mdoc.store(credential);
149
+ else if (credential.claimFormat === core_1.ClaimFormat.SdJwtDc) {
150
+ return enmeshedStorageService.saveWithDisplay(this.agent.context, credential.compact, credential.claimFormat.toString(), JSON.stringify(displayInfo), credentialKey);
136
151
  }
137
- return this.agent.sdJwtVc.store(credential.compact);
152
+ else if (credential.claimFormat === core_1.ClaimFormat.SdJwtW3cVc) {
153
+ return enmeshedStorageService.saveWithDisplay(this.agent.context, credential.encoded, credential.claimFormat.toString(), JSON.stringify(displayInfo), credentialKey);
154
+ }
155
+ throw new Error("Unsupported credential format");
138
156
  }));
157
+ this.agent.config.logger.info(`Stored credentials: ${JSON.stringify(storedCredentials)}`);
139
158
  return storedCredentials;
140
159
  }
141
160
  async resolveProofRequest(proofRequest) {
142
- const resolvedProofRequest = await this.agent.modules.openId4VcHolder.resolveOpenId4VpAuthorizationRequest(proofRequest);
161
+ const resolvedProofRequest = await this.agent.openid4vc.holder.resolveOpenId4VpAuthorizationRequest(proofRequest);
143
162
  return resolvedProofRequest;
144
163
  }
145
164
  async acceptPresentationRequest(resolvedPresentationRequest) {
146
165
  if (!resolvedPresentationRequest.presentationExchange && !resolvedPresentationRequest.dcql) {
147
166
  throw new Error("Missing presentation exchange or dcql on resolved authorization request");
148
167
  }
149
- const submissionResult = await this.agent.modules.openId4VcHolder.acceptOpenId4VpAuthorizationRequest({
168
+ // This fix ensures that the credential records which have been loaded here actually do provide the encoded() method
169
+ // this issue arises as the records are loaded and then communicated to the app as a json object, losing the class prototype
170
+ if (resolvedPresentationRequest.presentationExchange) {
171
+ for (const requirementKey in resolvedPresentationRequest.presentationExchange.credentialsForRequest.requirements) {
172
+ const requirement = resolvedPresentationRequest.presentationExchange.credentialsForRequest.requirements[requirementKey];
173
+ for (const submissionEntry of requirement.submissionEntry) {
174
+ for (const vc of submissionEntry.verifiableCredentials) {
175
+ if (vc.claimFormat === core_1.ClaimFormat.SdJwtDc) {
176
+ const recordUncast = vc.credentialRecord;
177
+ const record = new core_1.SdJwtVcRecord({
178
+ id: recordUncast.id,
179
+ createdAt: recordUncast.createdAt,
180
+ compactSdJwtVc: recordUncast.compactSdJwtVc
181
+ });
182
+ vc.credentialRecord = record;
183
+ }
184
+ else if (vc.claimFormat === core_1.ClaimFormat.MsoMdoc) {
185
+ const recordUncast = vc.credentialRecord;
186
+ const record = new core_1.MdocRecord({
187
+ id: recordUncast.id,
188
+ createdAt: recordUncast.createdAt,
189
+ mdoc: core_1.Mdoc.fromBase64Url(recordUncast.base64Url)
190
+ });
191
+ vc.credentialRecord = record;
192
+ }
193
+ else {
194
+ // eslint-disable-next-line no-console
195
+ console.log("Unsupported credential format in demo app, only sd-jwt-vc is supported at the moment");
196
+ }
197
+ }
198
+ }
199
+ }
200
+ }
201
+ const submissionResult = await this.agent.openid4vc.holder.acceptOpenId4VpAuthorizationRequest({
150
202
  authorizationRequestPayload: resolvedPresentationRequest.authorizationRequestPayload,
151
203
  presentationExchange: resolvedPresentationRequest.presentationExchange
152
204
  ? {
153
- credentials: this.agent.modules.openId4VcHolder.selectCredentialsForPresentationExchangeRequest(resolvedPresentationRequest.presentationExchange.credentialsForRequest)
205
+ credentials: this.agent.openid4vc.holder.selectCredentialsForPresentationExchangeRequest(resolvedPresentationRequest.presentationExchange.credentialsForRequest)
154
206
  }
155
207
  : undefined,
156
208
  dcql: resolvedPresentationRequest.dcql
157
209
  ? {
158
- credentials: this.agent.modules.openId4VcHolder.selectCredentialsForDcqlRequest(resolvedPresentationRequest.dcql.queryResult)
210
+ credentials: this.agent.openid4vc.holder.selectCredentialsForDcqlRequest(resolvedPresentationRequest.dcql.queryResult)
159
211
  }
160
212
  : undefined
161
213
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Holder.js","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/Holder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Holder.js","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/Holder.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"LocalAgentDependencies.d.ts","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/LocalAgentDependencies.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAUnD,eAAO,MAAM,iBAAiB,EAAE,iBAK/B,CAAC"}
1
+ {"version":3,"file":"LocalAgentDependencies.d.ts","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/LocalAgentDependencies.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAQnD,eAAO,MAAM,iBAAiB,EAAE,iBAK/B,CAAC"}
@@ -6,13 +6,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.agentDependencies = void 0;
7
7
  const events_1 = require("events");
8
8
  const ws_1 = __importDefault(require("ws"));
9
- const FakeFileSystem_1 = require("./FakeFileSystem");
10
- // Example fetch implementation (using node-fetch or global fetch)
9
+ const EnmeshedHolderFileSystem_1 = require("./EnmeshedHolderFileSystem");
11
10
  const fetchImpl = globalThis.fetch;
12
- // Example WebSocket implementation (using ws)
13
11
  const webSocketImpl = ws_1.default;
14
12
  exports.agentDependencies = {
15
- FileSystem: FakeFileSystem_1.FakeFileSystem,
13
+ FileSystem: EnmeshedHolderFileSystem_1.EnmeshedHolderFileSystem,
16
14
  EventEmitterClass: events_1.EventEmitter,
17
15
  fetch: fetchImpl,
18
16
  WebSocketClass: webSocketImpl
@@ -1 +1 @@
1
- {"version":3,"file":"LocalAgentDependencies.js","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/LocalAgentDependencies.ts"],"names":[],"mappings":";;;;;;AAEA,mCAAsC;AACtC,4CAA2B;AAC3B,qDAAkD;AAClD,kEAAkE;AAClE,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC;AAEnC,8CAA8C;AAC9C,MAAM,aAAa,GAAG,YAAS,CAAC;AAEnB,QAAA,iBAAiB,GAAsB;IAChD,UAAU,EAAE,+BAAc;IAC1B,iBAAiB,EAAE,qBAAY;IAC/B,KAAK,EAAE,SAAS;IAChB,cAAc,EAAE,aAAa;CAChC,CAAC"}
1
+ {"version":3,"file":"LocalAgentDependencies.js","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/LocalAgentDependencies.ts"],"names":[],"mappings":";;;;;;AAEA,mCAAsC;AACtC,4CAA2B;AAC3B,yEAAsE;AAEtE,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC;AACnC,MAAM,aAAa,GAAG,YAAS,CAAC;AAEnB,QAAA,iBAAiB,GAAsB;IAChD,UAAU,EAAE,mDAAwB;IACpC,iBAAiB,EAAE,qBAAY;IAC/B,KAAK,EAAE,SAAS;IAChB,cAAc,EAAE,aAAa;CAChC,CAAC"}
package/package.json CHANGED
@@ -59,18 +59,20 @@
59
59
  }
60
60
  },
61
61
  "dependencies": {
62
- "@credo-ts/askar": "v0.6.0-alpha-20250704130724",
63
- "@credo-ts/core": "v0.6.0-alpha-20250704130724",
64
- "@credo-ts/openid4vc": "v0.6.0-alpha-20250704130724",
62
+ "@credo-ts/core": "v0.6.0-alpha-20250919145226",
63
+ "@credo-ts/openid4vc": "v0.6.0-alpha-20250919145226",
65
64
  "@js-soft/docdb-querytranslator": "^1.1.5",
66
65
  "@js-soft/ts-serval": "2.0.13",
67
66
  "@js-soft/ts-utils": "2.3.4",
68
- "@nmshd/content": "7.0.0-openid4vc.1",
69
- "@nmshd/core-types": "7.0.0-openid4vc.1",
67
+ "@nmshd/content": "7.0.0-openid4vc.3",
68
+ "@nmshd/core-types": "7.0.0-openid4vc.3",
70
69
  "@nmshd/iql": "^1.0.3",
71
- "@nmshd/transport": "7.0.0-openid4vc.1",
70
+ "@nmshd/transport": "7.0.0-openid4vc.3",
71
+ "@noble/ciphers": "^0.2.0",
72
72
  "jose": "^6.0.13",
73
+ "libsodium-wrappers": "^0.7.15",
73
74
  "lodash": "^4.17.21",
75
+ "sjcl": "^1.0.8",
74
76
  "ts-simple-nameof": "^1.3.3",
75
77
  "ws": "^8.18.3"
76
78
  },
@@ -80,11 +82,12 @@
80
82
  "@js-soft/node-logger": "1.2.0",
81
83
  "@nmshd/crypto": "2.1.2",
82
84
  "@types/lodash": "^4.17.20",
85
+ "@types/sjcl": "^1.0.34",
83
86
  "ts-mockito": "^2.6.1"
84
87
  },
85
88
  "publishConfig": {
86
89
  "access": "public",
87
90
  "provenance": true
88
91
  },
89
- "version": "7.0.0-openid4vc.1"
92
+ "version": "7.0.0-openid4vc.3"
90
93
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"FakeFileSystem.d.ts","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/FakeFileSystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEnE,qBAAa,cAAe,YAAW,UAAU;IAC7C,SAAgB,QAAQ,EAAE,MAAM,CAAC;IAEjC,SAAgB,SAAS,EAAE,MAAM,CAAC;IAElC,SAAgB,QAAQ,EAAE,MAAM,CAAC;IAEjC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkC;IAE7D,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAmC;;IAaxD,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQtC,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5C,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUpE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUhD,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAQnC,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQnC,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;CAgBnG"}
@@ -1,67 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FakeFileSystem = void 0;
4
- class FakeFileSystem {
5
- constructor() {
6
- this.fileSystem = new Map();
7
- this.directories = new Map();
8
- this.dataPath = "/data";
9
- this.cachePath = "/cache";
10
- this.tempPath = "/temp";
11
- // initialize the directories map with the known paths
12
- this.directories.set(this.dataPath, true);
13
- this.directories.set(this.cachePath, true);
14
- this.directories.set(this.tempPath, true);
15
- }
16
- exists(path) {
17
- if (this.directories.has(path) || this.fileSystem.has(path)) {
18
- return Promise.resolve(true);
19
- }
20
- return Promise.resolve(false);
21
- }
22
- createDirectory(path) {
23
- this.directories.set(path, true);
24
- return Promise.resolve();
25
- }
26
- copyFile(sourcePath, destinationPath) {
27
- if (this.fileSystem.has(sourcePath)) {
28
- this.fileSystem.set(destinationPath, this.fileSystem.get(sourcePath));
29
- return Promise.resolve();
30
- }
31
- return Promise.reject(new Error(`Source file ${sourcePath} does not exist`));
32
- }
33
- write(path, data) {
34
- this.fileSystem.set(path, data);
35
- if (!this.directories.has(path)) {
36
- this.directories.set(path, false); // mark as file
37
- }
38
- return Promise.resolve();
39
- }
40
- read(path) {
41
- if (!this.fileSystem.has(path)) {
42
- return Promise.reject(new Error(`File ${path} does not exist`));
43
- }
44
- return Promise.resolve(this.fileSystem.get(path) ?? "");
45
- }
46
- delete(path) {
47
- if (this.fileSystem.has(path)) {
48
- this.fileSystem.delete(path);
49
- }
50
- return Promise.resolve();
51
- }
52
- downloadToFile(url, path, options) {
53
- // Simulate a download by writing a placeholder content
54
- let content = `Downloaded content from ${url}`;
55
- if (options) {
56
- if (options.verifyHash) {
57
- // Here you would implement hash verification logic if needed
58
- // eslint-disable-next-line prefer-template
59
- content = content + ` with hash verification: ${options.verifyHash}`;
60
- }
61
- }
62
- this.fileSystem.set(path, content);
63
- return Promise.resolve();
64
- }
65
- }
66
- exports.FakeFileSystem = FakeFileSystem;
67
- //# sourceMappingURL=FakeFileSystem.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FakeFileSystem.js","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/FakeFileSystem.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"FakeKeyManagmentService.d.ts","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/FakeKeyManagmentService.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EACH,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,eAAe,EAClB,MAAM,kCAAkC,CAAC;AAE1C,MAAM,WAAW,UAAU;IACvB,SAAS,EAAE,UAAU,CAAC;IACtB,UAAU,EAAE,UAAU,CAAC;CAC1B;AAED,qBAAa,uBAAwB,YAAW,oBAAoB;IAChE,gBAAuB,OAAO,8BAA8B;IAC5D,SAAgB,OAAO,8BAAmC;IAGnD,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;IAU9B,oBAAoB,CAAC,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,GAAG,OAAO;IAYlF,YAAY,CAAC,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAQxE,SAAS,CAAC,IAAI,SAAS,gBAAgB,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,mBAAmB,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;IA+BjJ,SAAS,CAAC,GAAG,SAAS,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,mBAAmB,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;IAGrI,SAAS,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;IAG/E,IAAI,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;IA8BjF,MAAM,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC;IA8B7F,OAAO,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAG1F,OAAO,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAG1F,WAAW,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,qBAAqB,GAAG,oBAAoB;CAGvG"}
@@ -1,127 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FakeKeyManagmentService = void 0;
4
- class FakeKeyManagmentService {
5
- static { this.backend = "fakeKeyManagementService"; }
6
- constructor() {
7
- this.backend = FakeKeyManagmentService.backend;
8
- if (global.fakeKmsKeystore) {
9
- this.keystore = global.fakeKmsKeystore;
10
- }
11
- else {
12
- this.keystore = new Map();
13
- global.fakeKmsKeystore = this.keystore;
14
- }
15
- }
16
- isOperationSupported(agentContext, operation) {
17
- if (operation.operation === "createKey") {
18
- return true;
19
- }
20
- if (operation.operation === "verify") {
21
- return true;
22
- }
23
- if (operation.operation === "sign" && operation.algorithm === "ES256") {
24
- return true;
25
- }
26
- return false;
27
- }
28
- getPublicKey(agentContext, keyId) {
29
- const keyPair = this.keystore.get(keyId);
30
- if (!keyPair) {
31
- throw new Error(`Key with id ${keyId} not found`);
32
- }
33
- return Promise.resolve(JSON.parse(keyPair).publicKey);
34
- }
35
- async createKey(agentContext, options) {
36
- // check if a key-id is provided
37
- options.keyId ??= crypto.randomUUID();
38
- // we want to create a key pair using the web-crypto api and store the private key in our keystore
39
- const keyPair = await crypto.subtle.generateKey({
40
- name: "ECDSA",
41
- namedCurve: "P-256" // ES256
42
- }, true, ["sign", "verify"]);
43
- // and return the public key as jwk
44
- const publicKeyJwk = await crypto.subtle.exportKey("jwk", keyPair.publicKey);
45
- const privateKeyJwk = await crypto.subtle.exportKey("jwk", keyPair.privateKey);
46
- const jwkKeyPair = {
47
- publicKey: publicKeyJwk,
48
- privateKey: privateKeyJwk
49
- };
50
- // store the key pair in the keystore
51
- this.keystore.set(options.keyId, JSON.stringify(jwkKeyPair));
52
- return await Promise.resolve({
53
- keyId: options.keyId,
54
- publicJwk: publicKeyJwk
55
- });
56
- }
57
- importKey(agentContext, options) {
58
- throw new Error("Method not implemented.");
59
- }
60
- deleteKey(agentContext, options) {
61
- throw new Error("Method not implemented.");
62
- }
63
- async sign(agentContext, options) {
64
- // load key from keystore
65
- const stringifiedKeyPair = this.keystore.get(options.keyId);
66
- if (!stringifiedKeyPair) {
67
- throw new Error(`Key with id ${options.keyId} not found`);
68
- }
69
- const privateKeyJwk = JSON.parse(stringifiedKeyPair).privateKey;
70
- const privateKey = await crypto.subtle.importKey("jwk", // format
71
- privateKeyJwk, // the exported JWK object
72
- { name: "ECDSA", namedCurve: "P-256" }, // algorithm
73
- true, // extractable
74
- ["sign"] // key usages
75
- );
76
- // load data from options
77
- const data = options.data;
78
- // check if method is ES256
79
- if (options.algorithm !== "ES256") {
80
- throw new Error(`Algorithm ${options.algorithm} not supported`);
81
- }
82
- // transform the private key to a jwk
83
- const signatureBuffer = await crypto.subtle.sign({ name: "ECDSA", hash: { name: "SHA-256" } }, privateKey, data);
84
- return {
85
- signature: new Uint8Array(signatureBuffer)
86
- };
87
- }
88
- async verify(agentContext, options) {
89
- // load key from keystore
90
- let publicKeyJwk;
91
- if (!options.key.publicJwk) {
92
- if (!options.key.keyId) {
93
- throw new Error("Either publicJwk or keyId must be provided");
94
- }
95
- const stringifiedKeyPair = this.keystore.get(options.key.keyId);
96
- if (!stringifiedKeyPair) {
97
- throw new Error(`Key with id ${options.key.keyId} not found`);
98
- }
99
- publicKeyJwk = JSON.parse(stringifiedKeyPair).publicKey;
100
- }
101
- else {
102
- publicKeyJwk = options.key.publicJwk;
103
- }
104
- // check algorithm
105
- if (options.algorithm !== "ES256") {
106
- throw new Error(`Algorithm ${options.algorithm} not supported`);
107
- }
108
- // import the public key
109
- const publicKey = await crypto.subtle.importKey("jwk", publicKeyJwk, { name: "ECDSA", namedCurve: "P-256" }, true, ["verify"]);
110
- // verify signature against data
111
- const isValid = await crypto.subtle.verify({ name: "ECDSA", hash: { name: "SHA-256" } }, publicKey, options.signature, options.data);
112
- return {
113
- verified: isValid
114
- };
115
- }
116
- encrypt(agentContext, options) {
117
- throw new Error("Method not implemented.");
118
- }
119
- decrypt(agentContext, options) {
120
- throw new Error("Method not implemented.");
121
- }
122
- randomBytes(agentContext, options) {
123
- throw new Error("Method not implemented.");
124
- }
125
- }
126
- exports.FakeKeyManagmentService = FakeKeyManagmentService;
127
- //# sourceMappingURL=FakeKeyManagmentService.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FakeKeyManagmentService.js","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/FakeKeyManagmentService.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"FakeStorageService.d.ts","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/FakeStorageService.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,qBAAqB,EAA+B,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEnJ,qBACa,kBAAkB,CAAC,CAAC,SAAS,UAAU,CAAE,YAAW,cAAc,CAAC,CAAC,CAAC;IACvE,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAa;IAEpC,IAAI,CAAC,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAO1D,MAAM,CAAC,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAMlE,MAAM,CAAC,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5D,UAAU,CAAC,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,qBAAqB,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxG,OAAO,CAAC,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,qBAAqB,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAOlG,MAAM,CAAC,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAOvF,WAAW,CAAC,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,qBAAqB,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;CAiBpJ"}