@sphereon/ssi-sdk-ext.identifier-resolution 0.25.1-next.46 → 0.26.1-feature.SPRIND.116.7
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/dist/functions/externalOIDFIdentifier.d.ts.map +1 -1
- package/dist/functions/externalOIDFIdentifier.js +4 -1
- package/dist/functions/externalOIDFIdentifier.js.map +1 -1
- package/dist/types/externalIdentifierTypes.d.ts +1 -0
- package/dist/types/externalIdentifierTypes.d.ts.map +1 -1
- package/package.json +9 -9
- package/plugin.schema.json +6 -0
- package/src/functions/externalOIDFIdentifier.ts +5 -1
- package/src/types/externalIdentifierTypes.ts +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"externalOIDFIdentifier.d.ts","sourceRoot":"","sources":["../../src/functions/externalOIDFIdentifier.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,kCAAkC,EAClC,oCAAoC,EAGrC,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAA;
|
|
1
|
+
{"version":3,"file":"externalOIDFIdentifier.d.ts","sourceRoot":"","sources":["../../src/functions/externalOIDFIdentifier.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,kCAAkC,EAClC,oCAAoC,EAGrC,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAK3D;;;;;;;;;;;;;GAaG;AACH,wBAAsB,qCAAqC,CACzD,IAAI,EAAE,kCAAkC,EACxC,OAAO,EAAE,aAAa,CAAC,WAAW,CAAC,GAClC,OAAO,CAAC,oCAAoC,CAAC,CAkE/C"}
|
|
@@ -11,6 +11,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.resolveExternalOIDFEntityIdIdentifier = resolveExternalOIDFEntityIdIdentifier;
|
|
13
13
|
const ssi_sdk_agent_config_1 = require("@sphereon/ssi-sdk.agent-config");
|
|
14
|
+
const utils_1 = require("@veramo/utils");
|
|
14
15
|
/**
|
|
15
16
|
* Resolves an OIDF Entity ID against multiple trust anchors to establish trusted relationships
|
|
16
17
|
*
|
|
@@ -38,6 +39,7 @@ function resolveExternalOIDFEntityIdIdentifier(opts, context) {
|
|
|
38
39
|
const trustedAnchors = new Set();
|
|
39
40
|
const errorList = {};
|
|
40
41
|
const jwkInfos = [];
|
|
42
|
+
let payload;
|
|
41
43
|
for (const trustAnchor of trustAnchors) {
|
|
42
44
|
const resolveResult = yield context.agent.resolveTrustChain({
|
|
43
45
|
entityIdentifier: identifier,
|
|
@@ -62,6 +64,7 @@ function resolveExternalOIDFEntityIdIdentifier(opts, context) {
|
|
|
62
64
|
errorList[trustAnchor] = 'No signature was present in the trust anchor JWS';
|
|
63
65
|
continue;
|
|
64
66
|
}
|
|
67
|
+
payload = JSON.parse((0, utils_1.decodeBase64url)(jwtVerifyResult.jws.payload));
|
|
65
68
|
const signature = jwtVerifyResult.jws.signatures[0];
|
|
66
69
|
if (signature.identifier.jwks.length === 0) {
|
|
67
70
|
errorList[trustAnchor] = 'No JWK was present in the trust anchor signature';
|
|
@@ -73,7 +76,7 @@ function resolveExternalOIDFEntityIdIdentifier(opts, context) {
|
|
|
73
76
|
trustedAnchors.add(trustAnchor);
|
|
74
77
|
}
|
|
75
78
|
}
|
|
76
|
-
return Object.assign(Object.assign({ method: 'entity_id', trustedAnchors: Array.from(trustedAnchors) }, (Object.keys(errorList).length > 0 && { errorList })), { jwks: jwkInfos, trustEstablished: trustedAnchors.size > 0 });
|
|
79
|
+
return Object.assign(Object.assign({ method: 'entity_id', trustedAnchors: Array.from(trustedAnchors) }, (Object.keys(errorList).length > 0 && { errorList })), { jwks: jwkInfos, jwtPayload: payload, trustEstablished: trustedAnchors.size > 0 });
|
|
77
80
|
});
|
|
78
81
|
}
|
|
79
82
|
//# sourceMappingURL=externalOIDFIdentifier.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"externalOIDFIdentifier.js","sourceRoot":"","sources":["../../src/functions/externalOIDFIdentifier.ts"],"names":[],"mappings":";;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"externalOIDFIdentifier.js","sourceRoot":"","sources":["../../src/functions/externalOIDFIdentifier.ts"],"names":[],"mappings":"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"}
|
|
@@ -95,6 +95,7 @@ export interface ExternalIdentifierOIDFEntityIdResult extends IExternalIdentifie
|
|
|
95
95
|
method: 'entity_id';
|
|
96
96
|
trustedAnchors: Array<TrustedAnchor>;
|
|
97
97
|
errorList?: Record<TrustedAnchor, ErrorMessage>;
|
|
98
|
+
jwtPayload?: string;
|
|
98
99
|
trustEstablished: boolean;
|
|
99
100
|
}
|
|
100
101
|
export interface ExternalJwkInfo extends JwkInfo {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"externalIdentifierTypes.d.ts","sourceRoot":"","sources":["../../src/types/externalIdentifierTypes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"externalIdentifierTypes.d.ts","sourceRoot":"","sources":["../../src/types/externalIdentifierTypes.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sphereon/ssi-sdk-ext.identifier-resolution",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.26.1-feature.SPRIND.116.7+8c2ba79",
|
|
4
4
|
"source": "src/index.ts",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -15,9 +15,9 @@
|
|
|
15
15
|
"generate-plugin-schema": "sphereon dev generate-plugin-schema"
|
|
16
16
|
},
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"@sphereon/ssi-sdk-ext.did-utils": "0.
|
|
19
|
-
"@sphereon/ssi-sdk-ext.key-utils": "0.
|
|
20
|
-
"@sphereon/ssi-sdk-ext.x509-utils": "0.
|
|
18
|
+
"@sphereon/ssi-sdk-ext.did-utils": "0.26.1-feature.SPRIND.116.7+8c2ba79",
|
|
19
|
+
"@sphereon/ssi-sdk-ext.key-utils": "0.26.1-feature.SPRIND.116.7+8c2ba79",
|
|
20
|
+
"@sphereon/ssi-sdk-ext.x509-utils": "0.26.1-feature.SPRIND.116.7+8c2ba79",
|
|
21
21
|
"@sphereon/ssi-sdk.agent-config": "0.30.2-feature.SDK.41.oidf.support.286",
|
|
22
22
|
"@sphereon/ssi-sdk.oidf-client": " 0.30.2-feature.SDK.41.oidf.support.286",
|
|
23
23
|
"@sphereon/ssi-types": "0.30.2-feature.SDK.41.oidf.support.286",
|
|
@@ -28,10 +28,10 @@
|
|
|
28
28
|
"uint8arrays": "^3.1.1"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
|
-
"@sphereon/ssi-sdk-ext.did-provider-jwk": "0.
|
|
32
|
-
"@sphereon/ssi-sdk-ext.did-resolver-jwk": "0.
|
|
33
|
-
"@sphereon/ssi-sdk-ext.key-manager": "0.
|
|
34
|
-
"@sphereon/ssi-sdk-ext.kms-local": "0.
|
|
31
|
+
"@sphereon/ssi-sdk-ext.did-provider-jwk": "0.26.1-feature.SPRIND.116.7+8c2ba79",
|
|
32
|
+
"@sphereon/ssi-sdk-ext.did-resolver-jwk": "0.26.1-feature.SPRIND.116.7+8c2ba79",
|
|
33
|
+
"@sphereon/ssi-sdk-ext.key-manager": "0.26.1-feature.SPRIND.116.7+8c2ba79",
|
|
34
|
+
"@sphereon/ssi-sdk-ext.kms-local": "0.26.1-feature.SPRIND.116.7+8c2ba79",
|
|
35
35
|
"@sphereon/ssi-sdk.dev": "0.30.2-feature.SDK.41.oidf.support.286",
|
|
36
36
|
"@veramo/data-store": "4.2.0",
|
|
37
37
|
"@veramo/did-manager": "4.2.0",
|
|
@@ -65,5 +65,5 @@
|
|
|
65
65
|
"X.509 Certificates",
|
|
66
66
|
"ARF"
|
|
67
67
|
],
|
|
68
|
-
"gitHead": "
|
|
68
|
+
"gitHead": "8c2ba7951e23650a8b2df0a20db13109357fc284"
|
|
69
69
|
}
|
package/plugin.schema.json
CHANGED
|
@@ -651,6 +651,9 @@
|
|
|
651
651
|
"$ref": "#/components/schemas/ErrorMessage"
|
|
652
652
|
}
|
|
653
653
|
},
|
|
654
|
+
"jwtPayload": {
|
|
655
|
+
"type": "string"
|
|
656
|
+
},
|
|
654
657
|
"trustEstablished": {
|
|
655
658
|
"type": "boolean"
|
|
656
659
|
}
|
|
@@ -1686,6 +1689,9 @@
|
|
|
1686
1689
|
"$ref": "#/components/schemas/ErrorMessage"
|
|
1687
1690
|
}
|
|
1688
1691
|
},
|
|
1692
|
+
"jwtPayload": {
|
|
1693
|
+
"type": "string"
|
|
1694
|
+
},
|
|
1689
1695
|
"trustEstablished": {
|
|
1690
1696
|
"type": "boolean"
|
|
1691
1697
|
}
|
|
@@ -9,6 +9,7 @@ import { IAgentContext } from '@veramo/core'
|
|
|
9
9
|
import { IOIDFClient } from '@sphereon/ssi-sdk.oidf-client'
|
|
10
10
|
import { contextHasPlugin } from '@sphereon/ssi-sdk.agent-config'
|
|
11
11
|
import { IJwsValidationResult } from '../types/IJwtService'
|
|
12
|
+
import {decodeBase64url} from "@veramo/utils";
|
|
12
13
|
|
|
13
14
|
/**
|
|
14
15
|
* Resolves an OIDF Entity ID against multiple trust anchors to establish trusted relationships
|
|
@@ -42,6 +43,7 @@ export async function resolveExternalOIDFEntityIdIdentifier(
|
|
|
42
43
|
const errorList: Record<TrustedAnchor, ErrorMessage> = {}
|
|
43
44
|
const jwkInfos: Array<ExternalJwkInfo> = []
|
|
44
45
|
|
|
46
|
+
let payload: string | undefined
|
|
45
47
|
for (const trustAnchor of trustAnchors) {
|
|
46
48
|
const resolveResult = await context.agent.resolveTrustChain({
|
|
47
49
|
entityIdentifier: identifier,
|
|
@@ -70,6 +72,7 @@ export async function resolveExternalOIDFEntityIdIdentifier(
|
|
|
70
72
|
continue
|
|
71
73
|
}
|
|
72
74
|
|
|
75
|
+
payload = JSON.parse(decodeBase64url(jwtVerifyResult.jws.payload))
|
|
73
76
|
const signature = jwtVerifyResult.jws.signatures[0]
|
|
74
77
|
if (signature.identifier.jwks.length === 0) {
|
|
75
78
|
errorList[trustAnchor] = 'No JWK was present in the trust anchor signature'
|
|
@@ -88,6 +91,7 @@ export async function resolveExternalOIDFEntityIdIdentifier(
|
|
|
88
91
|
trustedAnchors: Array.from(trustedAnchors),
|
|
89
92
|
...(Object.keys(errorList).length > 0 && { errorList }),
|
|
90
93
|
jwks: jwkInfos,
|
|
91
|
-
|
|
94
|
+
jwtPayload: payload,
|
|
95
|
+
trustEstablished: trustedAnchors.size > 0,
|
|
92
96
|
}
|
|
93
97
|
}
|
|
@@ -165,6 +165,7 @@ export interface ExternalIdentifierOIDFEntityIdResult extends IExternalIdentifie
|
|
|
165
165
|
method: 'entity_id'
|
|
166
166
|
trustedAnchors: Array<TrustedAnchor>
|
|
167
167
|
errorList?: Record<TrustedAnchor, ErrorMessage>
|
|
168
|
+
jwtPayload?: string
|
|
168
169
|
trustEstablished: boolean
|
|
169
170
|
}
|
|
170
171
|
|