@sphereon/ssi-sdk.mdl-mdoc 0.34.1-feature.FIDES.1.274 → 0.34.1-feature.IDK.11.48

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sphereon/ssi-sdk.mdl-mdoc",
3
- "version": "0.34.1-feature.FIDES.1.274+3d1f4edd",
3
+ "version": "0.34.1-feature.IDK.11.48+640da718",
4
4
  "source": "src/index.ts",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
@@ -26,19 +26,19 @@
26
26
  "build": "tsup --config ../../tsup.config.ts --tsconfig ../../tsconfig.tsup.json"
27
27
  },
28
28
  "dependencies": {
29
- "@sphereon/did-auth-siop-adapter": "0.19.1-feature.DIIPv4.219",
29
+ "@sphereon/did-auth-siop-adapter": "0.19.1-next.2",
30
30
  "@sphereon/kmp-mdoc-core": "0.2.0-SNAPSHOT.26",
31
31
  "@sphereon/pex": "5.0.0-unstable.28",
32
32
  "@sphereon/pex-models": "^2.3.2",
33
- "@sphereon/ssi-sdk-ext.did-utils": "0.34.1-feature.FIDES.1.274+3d1f4edd",
34
- "@sphereon/ssi-sdk-ext.key-utils": "0.34.1-feature.FIDES.1.274+3d1f4edd",
35
- "@sphereon/ssi-sdk-ext.x509-utils": "0.34.1-feature.FIDES.1.274+3d1f4edd",
36
- "@sphereon/ssi-sdk.core": "0.34.1-feature.FIDES.1.274+3d1f4edd",
37
- "@sphereon/ssi-types": "0.34.1-feature.FIDES.1.274+3d1f4edd",
33
+ "@sphereon/ssi-sdk-ext.did-utils": "0.34.1-feature.IDK.11.48+640da718",
34
+ "@sphereon/ssi-sdk-ext.key-utils": "0.34.1-feature.IDK.11.48+640da718",
35
+ "@sphereon/ssi-sdk-ext.x509-utils": "0.34.1-feature.IDK.11.48+640da718",
36
+ "@sphereon/ssi-sdk.core": "0.34.1-feature.IDK.11.48+640da718",
37
+ "@sphereon/ssi-types": "0.34.1-feature.IDK.11.48+640da718",
38
38
  "@veramo/core": "4.2.0",
39
39
  "@veramo/did-manager": "4.2.0",
40
40
  "@veramo/utils": "4.2.0",
41
- "cross-fetch": "^4.1.0",
41
+ "cross-fetch": "^3.1.8",
42
42
  "debug": "^4.3.5",
43
43
  "did-resolver": "^4.1.0",
44
44
  "multiformats": "9.9.0",
@@ -47,13 +47,14 @@
47
47
  "uuid": "^9.0.1"
48
48
  },
49
49
  "devDependencies": {
50
- "@sphereon/oid4vci-client": "0.19.1-feature.DIIPv4.219",
51
- "@sphereon/oid4vci-common": "0.19.1-feature.DIIPv4.219",
52
- "@sphereon/ssi-express-support": "0.34.1-feature.FIDES.1.274+3d1f4edd",
53
- "@sphereon/ssi-sdk-ext.key-manager": "0.34.1-feature.FIDES.1.274+3d1f4edd",
54
- "@sphereon/ssi-sdk-ext.kms-local": "0.34.1-feature.FIDES.1.274+3d1f4edd",
55
- "@sphereon/ssi-sdk.agent-config": "0.34.1-feature.FIDES.1.274+3d1f4edd",
56
- "@sphereon/ssi-sdk.public-key-hosting": "0.34.1-feature.FIDES.1.274+3d1f4edd",
50
+ "@sphereon/oid4vci-client": "0.19.1-next.2",
51
+ "@sphereon/oid4vci-common": "0.19.1-next.2",
52
+ "@sphereon/ssi-express-support": "0.34.1-feature.IDK.11.48+640da718",
53
+ "@sphereon/ssi-sdk-ext.key-manager": "0.34.1-feature.IDK.11.48+640da718",
54
+ "@sphereon/ssi-sdk-ext.kms-local": "0.34.1-feature.IDK.11.48+640da718",
55
+ "@sphereon/ssi-sdk.agent-config": "0.34.1-feature.IDK.11.48+640da718",
56
+ "@sphereon/ssi-sdk.data-store": "0.34.1-feature.IDK.11.48+640da718",
57
+ "@sphereon/ssi-sdk.public-key-hosting": "0.34.1-feature.IDK.11.48+640da718",
57
58
  "@transmute/json-web-signature": "0.7.0-unstable.81",
58
59
  "@types/cors": "^2.8.17",
59
60
  "@types/express": "^4.17.21",
@@ -88,5 +89,5 @@
88
89
  "EBSI",
89
90
  "EBSI Authorization Client"
90
91
  ],
91
- "gitHead": "3d1f4edd13301b5e8ae524e80249b5e25f99eeac"
92
+ "gitHead": "640da718d6ce394653ae6ef0276b584b2b7456df"
92
93
  }
@@ -346,7 +346,7 @@
346
346
  "di_vp": {
347
347
  "$ref": "#/components/schemas/DiObject"
348
348
  },
349
- "dc+sd-jwt": {
349
+ "vc+sd-jwt": {
350
350
  "$ref": "#/components/schemas/SdJwtObject"
351
351
  }
352
352
  }
@@ -1,5 +1,4 @@
1
- import mdocPkg from '@sphereon/kmp-mdoc-core'
2
- const { com } = mdocPkg
1
+ import { com } from '@sphereon/kmp-mdoc-core'
3
2
  import { calculateJwkThumbprint } from '@sphereon/ssi-sdk-ext.key-utils'
4
3
  import { CertificateInfo, getCertificateInfo, pemOrDerToX509Certificate, X509ValidationResult } from '@sphereon/ssi-sdk-ext.x509-utils'
5
4
  import { JWK } from '@sphereon/ssi-types'
@@ -122,7 +121,7 @@ export class MDLMdoc implements IAgentPlugin {
122
121
  presentationDefinition as IOid4VPPresentationDefinition,
123
122
  )
124
123
  const docsAndDescriptors: DocumentDescriptorMatchResult[] = []
125
- let lastError: mdocPkg.com.sphereon.crypto.generic.IVerifyResults<mdocPkg.com.sphereon.crypto.cose.ICoseKeyCbor> | undefined = undefined
124
+ let lastError: com.sphereon.crypto.generic.IVerifyResults<com.sphereon.crypto.cose.ICoseKeyCbor> | undefined = undefined
126
125
  for (let match of allMatches) {
127
126
  if (match.document) {
128
127
  const result = await validate(match.document)
@@ -1,7 +1,4 @@
1
- import mdocPkg from '@sphereon/kmp-mdoc-core'
2
- const { com } = mdocPkg
3
- import { Nullable } from '@sphereon/kmp-mdoc-core'
4
-
1
+ import { com, Nullable } from '@sphereon/kmp-mdoc-core'
5
2
  import { calculateJwkThumbprint, globalCrypto, verifyRawSignature } from '@sphereon/ssi-sdk-ext.key-utils'
6
3
  import {
7
4
  CertificateInfo,
@@ -19,24 +16,24 @@ import { Certificate, CryptoEngine, setEngine } from 'pkijs'
19
16
  import { fromString } from 'uint8arrays/from-string'
20
17
  import { IRequiredContext, VerifyCertificateChainArgs } from '../types/ImDLMdoc'
21
18
 
22
- type CoseKeyCbor = mdocPkg.com.sphereon.crypto.cose.CoseKeyCbor
23
- type ICoseKeyCbor = mdocPkg.com.sphereon.crypto.cose.ICoseKeyCbor
24
- type ToBeSignedCbor = mdocPkg.com.sphereon.crypto.cose.ToBeSignedCbor
19
+ type CoseKeyCbor = com.sphereon.crypto.cose.CoseKeyCbor
20
+ type ICoseKeyCbor = com.sphereon.crypto.cose.ICoseKeyCbor
21
+ type ToBeSignedCbor = com.sphereon.crypto.cose.ToBeSignedCbor
25
22
  const CoseJoseKeyMappingService = com.sphereon.crypto.CoseJoseKeyMappingService
26
- type SignatureAlgorithm = mdocPkg.com.sphereon.crypto.generic.SignatureAlgorithm
27
- type ICoseCryptoCallbackJS = mdocPkg.com.sphereon.crypto.ICoseCryptoCallbackJS
28
- type IKey = mdocPkg.com.sphereon.crypto.IKey
29
- type IX509ServiceJS = mdocPkg.com.sphereon.crypto.IX509ServiceJS
30
- type Jwk = mdocPkg.com.sphereon.crypto.jose.Jwk
31
- const KeyInfo = mdocPkg.com.sphereon.crypto.KeyInfo
32
- type X509VerificationProfile = mdocPkg.com.sphereon.crypto.X509VerificationProfile
33
- const DateTimeUtils = mdocPkg.com.sphereon.kmp.DateTimeUtils
34
- const decodeFrom = mdocPkg.com.sphereon.kmp.decodeFrom
35
- const encodeTo = mdocPkg.com.sphereon.kmp.encodeTo
36
- const Encoding = mdocPkg.com.sphereon.kmp.Encoding
37
- type LocalDateTimeKMP = mdocPkg.com.sphereon.kmp.LocalDateTimeKMP
38
- const SignatureAlgorithm = mdocPkg.com.sphereon.crypto.generic.SignatureAlgorithm
39
- const DefaultCallbacks = mdocPkg.com.sphereon.crypto.DefaultCallbacks
23
+ type SignatureAlgorithm = com.sphereon.crypto.generic.SignatureAlgorithm
24
+ type ICoseCryptoCallbackJS = com.sphereon.crypto.ICoseCryptoCallbackJS
25
+ type IKey = com.sphereon.crypto.IKey
26
+ type IX509ServiceJS = com.sphereon.crypto.IX509ServiceJS
27
+ type Jwk = com.sphereon.crypto.jose.Jwk
28
+ const KeyInfo = com.sphereon.crypto.KeyInfo
29
+ type X509VerificationProfile = com.sphereon.crypto.X509VerificationProfile
30
+ const DateTimeUtils = com.sphereon.kmp.DateTimeUtils
31
+ const decodeFrom = com.sphereon.kmp.decodeFrom
32
+ const encodeTo = com.sphereon.kmp.encodeTo
33
+ const Encoding = com.sphereon.kmp.Encoding
34
+ type LocalDateTimeKMP = com.sphereon.kmp.LocalDateTimeKMP
35
+ const SignatureAlgorithm = com.sphereon.crypto.generic.SignatureAlgorithm
36
+ const DefaultCallbacks = com.sphereon.crypto.DefaultCallbacks
40
37
 
41
38
  export class CoseCryptoService implements ICoseCryptoCallbackJS {
42
39
  constructor(private context?: IRequiredContext) {}
@@ -57,7 +54,7 @@ export class CoseCryptoService implements ICoseCryptoCallbackJS {
57
54
  return Promise.reject(Error('No key present in keyInfo. This implementation cannot sign without a key!'))
58
55
  }
59
56
  const resolvedKeyInfo = com.sphereon.crypto.ResolvedKeyInfo.Static.fromKeyInfo(keyInfo, key)
60
- const jwkKeyInfo: mdocPkg.com.sphereon.crypto.ResolvedKeyInfo<Jwk> = CoseJoseKeyMappingService.toResolvedJwkKeyInfo(resolvedKeyInfo)
57
+ const jwkKeyInfo: com.sphereon.crypto.ResolvedKeyInfo<Jwk> = CoseJoseKeyMappingService.toResolvedJwkKeyInfo(resolvedKeyInfo)
61
58
 
62
59
  const kid = jwkKeyInfo.kid ?? calculateJwkThumbprint({ jwk: jwkKeyInfo.key.toJsonDTO() }) ?? jwkKeyInfo.key.getKidAsString(true)
63
60
  if (!kid) {
@@ -75,10 +72,10 @@ export class CoseCryptoService implements ICoseCryptoCallbackJS {
75
72
  }
76
73
 
77
74
  async verify1Async<CborType>(
78
- input: mdocPkg.com.sphereon.crypto.cose.CoseSign1Cbor<CborType>,
79
- keyInfo: mdocPkg.com.sphereon.crypto.IKeyInfo<ICoseKeyCbor>,
75
+ input: com.sphereon.crypto.cose.CoseSign1Cbor<CborType>,
76
+ keyInfo: com.sphereon.crypto.IKeyInfo<ICoseKeyCbor>,
80
77
  requireX5Chain: Nullable<boolean>,
81
- ): Promise<mdocPkg.com.sphereon.crypto.generic.IVerifySignatureResult<ICoseKeyCbor>> {
78
+ ): Promise<com.sphereon.crypto.generic.IVerifySignatureResult<ICoseKeyCbor>> {
82
79
  const getCertAndKey = async (
83
80
  x5c: Nullable<Array<string>>,
84
81
  ): Promise<{
@@ -157,12 +154,12 @@ export class CoseCryptoService implements ICoseCryptoCallbackJS {
157
154
  error: !valid,
158
155
  message: `Signature of '${issuerCert ? getSubjectDN(issuerCert).DN : kid}' was ${valid ? '' : 'in'}valid`,
159
156
  keyInfo: issuerCoseKeyInfo,
160
- } satisfies mdocPkg.com.sphereon.crypto.generic.IVerifySignatureResult<ICoseKeyCbor>
157
+ } satisfies com.sphereon.crypto.generic.IVerifySignatureResult<ICoseKeyCbor>
161
158
  }
162
159
 
163
- resolvePublicKeyAsync<KT extends mdocPkg.com.sphereon.crypto.IKey>(
164
- keyInfo: mdocPkg.com.sphereon.crypto.IKeyInfo<KT>,
165
- ): Promise<mdocPkg.com.sphereon.crypto.IResolvedKeyInfo<KT>> {
160
+ resolvePublicKeyAsync<KT extends com.sphereon.crypto.IKey>(
161
+ keyInfo: com.sphereon.crypto.IKeyInfo<KT>,
162
+ ): Promise<com.sphereon.crypto.IResolvedKeyInfo<KT>> {
166
163
  if (keyInfo.key) {
167
164
  return Promise.resolve(CoseJoseKeyMappingService.toResolvedKeyInfo(keyInfo, keyInfo.key))
168
165
  }
@@ -213,7 +210,7 @@ export class X509CallbackService implements IX509ServiceJS {
213
210
  trustedCerts: Nullable<string[]>,
214
211
  verificationProfile?: X509VerificationProfile | undefined,
215
212
  verificationTime?: Nullable<LocalDateTimeKMP>,
216
- ): Promise<mdocPkg.com.sphereon.crypto.IX509VerificationResult<KeyType>> {
213
+ ): Promise<com.sphereon.crypto.IX509VerificationResult<KeyType>> {
217
214
  const verificationAt = verificationTime ?? DateTimeUtils.Static.DEFAULT.dateTimeLocal()
218
215
  let chain: Array<string | Uint8Array> = []
219
216
  if (chainDER && chainDER.length > 0) {
@@ -239,7 +236,7 @@ export class X509CallbackService implements IX509ServiceJS {
239
236
  message: result.message,
240
237
  error: result.error,
241
238
  verificationTime: verificationAt,
242
- } satisfies mdocPkg.com.sphereon.crypto.IX509VerificationResult<KeyType>
239
+ } satisfies com.sphereon.crypto.IX509VerificationResult<KeyType>
243
240
  }
244
241
 
245
242
  setTrustedCerts = (trustedCertsInPEM?: Array<string>) => {
@@ -1,19 +1,18 @@
1
- import mdocPkg from '@sphereon/kmp-mdoc-core'
2
- const { com } = mdocPkg
1
+ import { com } from '@sphereon/kmp-mdoc-core'
3
2
  import { PresentationDefinitionV2, PresentationSubmission } from '@sphereon/pex-models'
4
3
  import { ISphereonKeyManager } from '@sphereon/ssi-sdk-ext.key-manager'
5
4
  import { CertificateInfo, SubjectAlternativeGeneralName, X509ValidationResult } from '@sphereon/ssi-sdk-ext.x509-utils'
6
5
  import { IAgentContext, IDIDManager, IPluginMethodMap, IResolver } from '@veramo/core'
7
- export type IKey = mdocPkg.com.sphereon.crypto.IKey
8
- export type CoseSign1Json = mdocPkg.com.sphereon.crypto.cose.CoseSign1Json
9
- export type CoseSign1Cbor<Any> = mdocPkg.com.sphereon.crypto.cose.CoseSign1Cbor<Any>
10
- export type ICoseKeyCbor = mdocPkg.com.sphereon.crypto.cose.ICoseKeyCbor
11
- export type ICoseKeyJson = mdocPkg.com.sphereon.crypto.cose.ICoseKeyJson
12
- export type IKeyInfo<KT extends IKey = IKey> = mdocPkg.com.sphereon.crypto.IKeyInfo<KT>
13
- export type IVerifyResults<KT extends IKey> = mdocPkg.com.sphereon.crypto.generic.IVerifyResults<KT>
14
- export type IVerifySignatureResult<KT extends IKey> = mdocPkg.com.sphereon.crypto.generic.IVerifySignatureResult<KT>
15
- export type DocumentJson = mdocPkg.com.sphereon.mdoc.data.device.DocumentJson
16
- export type DocumentCbor = mdocPkg.com.sphereon.mdoc.data.device.DocumentCbor
6
+ export type IKey = com.sphereon.crypto.IKey
7
+ export type CoseSign1Json = com.sphereon.crypto.cose.CoseSign1Json
8
+ export type CoseSign1Cbor<Any> = com.sphereon.crypto.cose.CoseSign1Cbor<Any>
9
+ export type ICoseKeyCbor = com.sphereon.crypto.cose.ICoseKeyCbor
10
+ export type ICoseKeyJson = com.sphereon.crypto.cose.ICoseKeyJson
11
+ export type IKeyInfo<KT extends IKey = IKey> = com.sphereon.crypto.IKeyInfo<KT>
12
+ export type IVerifyResults<KT extends IKey> = com.sphereon.crypto.generic.IVerifyResults<KT>
13
+ export type IVerifySignatureResult<KT extends IKey> = com.sphereon.crypto.generic.IVerifySignatureResult<KT>
14
+ export type DocumentJson = com.sphereon.mdoc.data.device.DocumentJson
15
+ export type DocumentCbor = com.sphereon.mdoc.data.device.DocumentCbor
17
16
  export const CborByteString = com.sphereon.cbor.CborByteString
18
17
  export const CoseKeyCbor = com.sphereon.crypto.cose.CoseKeyCbor
19
18
  export const CoseCryptoServiceJS = com.sphereon.crypto.CoseCryptoServiceJS
@@ -26,8 +25,8 @@ export const Encoding = com.sphereon.kmp.Encoding
26
25
  export const MdocValidations = com.sphereon.mdoc.data.MdocValidations
27
26
  export const MdocOid4vpService = com.sphereon.mdoc.oid4vp.MdocOid4vpServiceJs
28
27
  export const Jwk = com.sphereon.crypto.jose.Jwk
29
- export type DocumentDescriptorMatchResult = mdocPkg.com.sphereon.mdoc.oid4vp.DocumentDescriptorMatchResult
30
- export type IOid4VPPresentationDefinition = mdocPkg.com.sphereon.mdoc.oid4vp.IOid4VPPresentationDefinition
28
+ export type DocumentDescriptorMatchResult = com.sphereon.mdoc.oid4vp.DocumentDescriptorMatchResult
29
+ export type IOid4VPPresentationDefinition = com.sphereon.mdoc.oid4vp.IOid4VPPresentationDefinition
31
30
  export const Oid4VPPresentationSubmission = com.sphereon.mdoc.oid4vp.Oid4VPPresentationSubmission
32
31
 
33
32
  export interface ImDLMdoc extends IPluginMethodMap {