@sphereon/ssi-sdk-ext.did-utils 0.22.1-unstable.8 → 0.23.1-next.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.
- package/dist/did-functions.d.ts +41 -8
- package/dist/did-functions.d.ts.map +1 -1
- package/dist/did-functions.js +126 -57
- package/dist/did-functions.js.map +1 -1
- package/dist/types.d.ts +2 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +4 -4
- package/src/did-functions.ts +232 -80
- package/src/types.ts +2 -1
package/dist/did-functions.d.ts
CHANGED
|
@@ -3,20 +3,41 @@ import { DIDDocument, DIDDocumentSection, DIDResolutionResult, IAgentContext, ID
|
|
|
3
3
|
import { _ExtendedIKey, _ExtendedVerificationMethod, _NormalizedVerificationMethod } from '@veramo/utils';
|
|
4
4
|
import { DIDResolutionOptions, Resolvable } from 'did-resolver';
|
|
5
5
|
import { CreateIdentifierOpts, CreateOrGetIdentifierOpts, GetOrCreateResult, IdentifierProviderOpts, IDIDOptions, IIdentifierOpts } from './types';
|
|
6
|
-
export declare const getAuthenticationKey: (identifier
|
|
6
|
+
export declare const getAuthenticationKey: ({ identifier, offlineWhenNoDIDRegistered, noVerificationMethodFallback, keyType, controllerKey, }: {
|
|
7
|
+
identifier: IIdentifier;
|
|
8
|
+
keyType?: TKeyType;
|
|
9
|
+
offlineWhenNoDIDRegistered?: boolean;
|
|
10
|
+
noVerificationMethodFallback?: boolean;
|
|
11
|
+
controllerKey?: boolean;
|
|
12
|
+
}, context: IAgentContext<IResolver & IDIDManager>) => Promise<_ExtendedIKey>;
|
|
13
|
+
export declare const getFirstKeyWithRelation: ({ identifier, offlineWhenNoDIDRegistered, noVerificationMethodFallback, keyType, controllerKey, vmRelationship, }: {
|
|
14
|
+
identifier: IIdentifier;
|
|
15
|
+
keyType?: TKeyType;
|
|
16
|
+
offlineWhenNoDIDRegistered?: boolean;
|
|
17
|
+
noVerificationMethodFallback?: boolean;
|
|
18
|
+
controllerKey?: boolean;
|
|
19
|
+
vmRelationship: DIDDocumentSection;
|
|
20
|
+
}, context: IAgentContext<IResolver & IDIDManager>) => Promise<_ExtendedIKey>;
|
|
7
21
|
export declare const getOrCreatePrimaryIdentifier: (context: IAgentContext<IDIDManager>, opts?: CreateOrGetIdentifierOpts) => Promise<GetOrCreateResult<IIdentifier>>;
|
|
8
22
|
export declare const getPrimaryIdentifier: (context: IAgentContext<IDIDManager>, opts?: IdentifierProviderOpts) => Promise<IIdentifier | undefined>;
|
|
9
23
|
export declare const createIdentifier: (context: IAgentContext<IDIDManager>, opts?: CreateIdentifierOpts) => Promise<IIdentifier>;
|
|
10
|
-
export declare const
|
|
24
|
+
export declare const getFirstKeyWithRelationFromDIDDoc: ({ identifier, vmRelationship, keyType, errorOnNotFound, didDocument, controllerKey, }: {
|
|
25
|
+
identifier: IIdentifier;
|
|
26
|
+
controllerKey?: boolean;
|
|
27
|
+
vmRelationship?: DIDDocumentSection;
|
|
28
|
+
keyType?: TKeyType;
|
|
29
|
+
errorOnNotFound?: boolean;
|
|
30
|
+
didDocument?: DIDDocument;
|
|
31
|
+
}, context: IAgentContext<IResolver & IDIDManager>) => Promise<_ExtendedIKey | undefined>;
|
|
11
32
|
export declare const getEthereumAddressFromKey: ({ key }: {
|
|
12
33
|
key: IKey;
|
|
13
34
|
}) => any;
|
|
14
35
|
export declare const getControllerKey: ({ identifier }: {
|
|
15
36
|
identifier: IIdentifier;
|
|
16
37
|
}) => IKey;
|
|
17
|
-
export declare const getKeys: ({ jwkThumbprint, kms, identifier,
|
|
38
|
+
export declare const getKeys: ({ jwkThumbprint, kms, identifier, kmsKeyRef, keyType, controllerKey, }: {
|
|
18
39
|
identifier: IIdentifier;
|
|
19
|
-
|
|
40
|
+
kmsKeyRef?: string;
|
|
20
41
|
keyType?: TKeyType;
|
|
21
42
|
kms?: string;
|
|
22
43
|
jwkThumbprint?: string;
|
|
@@ -62,6 +83,7 @@ export declare function extractPublicKeyHex(pk: _ExtendedVerificationMethod, con
|
|
|
62
83
|
* @param section - the section of the DID document to be mapped (see
|
|
63
84
|
* {@link https://www.w3.org/TR/did-core/#verification-relationships | verification relationships}), but can also be
|
|
64
85
|
* `verificationMethod` to map all the keys.
|
|
86
|
+
* @param didDocument
|
|
65
87
|
* @param context - the veramo agent context, which must contain a {@link @veramo/core#IResolver | IResolver}
|
|
66
88
|
* implementation that can resolve the DID document of the identifier.
|
|
67
89
|
*
|
|
@@ -70,19 +92,30 @@ export declare function extractPublicKeyHex(pk: _ExtendedVerificationMethod, con
|
|
|
70
92
|
*
|
|
71
93
|
* @beta This API may change without a BREAKING CHANGE notice.
|
|
72
94
|
*/
|
|
73
|
-
export declare function mapIdentifierKeysToDocWithJwkSupport(identifier
|
|
95
|
+
export declare function mapIdentifierKeysToDocWithJwkSupport({ identifier, vmRelationship, didDocument, }: {
|
|
96
|
+
identifier: IIdentifier;
|
|
97
|
+
vmRelationship?: DIDDocumentSection;
|
|
98
|
+
didDocument?: DIDDocument;
|
|
99
|
+
}, context: IAgentContext<IResolver & IDIDManager>): Promise<_ExtendedIKey[]>;
|
|
74
100
|
export declare function getAgentDIDMethods(context: IAgentContext<IDIDManager>): Promise<string[]>;
|
|
75
101
|
export declare function getIdentifier(identifierOpts: IIdentifierOpts, context: IAgentContext<IDIDManager>): Promise<IIdentifier>;
|
|
76
102
|
export declare function getDID(identifierOpts: IIdentifierOpts): string;
|
|
77
103
|
export declare function toDID(identifier: string | IIdentifier | Partial<IIdentifier>): string;
|
|
78
104
|
export declare function toDIDs(identifiers?: (string | IIdentifier | Partial<IIdentifier>)[]): string[];
|
|
79
|
-
export declare function getKey(identifier
|
|
105
|
+
export declare function getKey({ identifier, vmRelationship, kmsKeyRef, }: {
|
|
106
|
+
identifier: IIdentifier;
|
|
107
|
+
vmRelationship?: DIDDocumentSection;
|
|
108
|
+
kmsKeyRef?: string;
|
|
109
|
+
}, context: IAgentContext<IResolver & IDIDManager>): Promise<IKey>;
|
|
80
110
|
/**
|
|
81
111
|
* Get the real kid as used in JWTs. This is the kid in the VM or in the JWT, not the kid in the Veramo/Sphereon keystore. That was just a poorly chosen name
|
|
82
112
|
* @param key
|
|
83
113
|
* @param idOpts
|
|
84
114
|
*/
|
|
85
|
-
export declare function determineKid(key
|
|
115
|
+
export declare function determineKid({ key, idOpts, }: {
|
|
116
|
+
key: IKey;
|
|
117
|
+
idOpts: IIdentifierOpts;
|
|
118
|
+
}, context: IAgentContext<IResolver & IDIDManager>): Promise<string>;
|
|
86
119
|
export declare function getSupportedDIDMethods(didOpts: IDIDOptions, context: IAgentContext<IDIDManager>): Promise<string[]>;
|
|
87
120
|
export declare function getAgentResolver(context: IAgentContext<IResolver & IDIDManager>, opts?: {
|
|
88
121
|
localResolution?: boolean;
|
|
@@ -106,7 +139,7 @@ export declare class AgentDIDResolver implements Resolvable {
|
|
|
106
139
|
*
|
|
107
140
|
* We try to do our best, to map keys onto relevant verification methods and relationships, but we simply lack the context
|
|
108
141
|
* of the actual DID method here. Do not relly on this method for DID resolution. It is only handy for offline use cases
|
|
109
|
-
* when no DID Document is cached.
|
|
142
|
+
* when no DID Document is cached. For DID:WEB it does provide an accurate representation!
|
|
110
143
|
*
|
|
111
144
|
* @param identifier
|
|
112
145
|
* @param opts
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"did-functions.d.ts","sourceRoot":"","sources":["../src/did-functions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAoD,SAAS,EAAE,QAAQ,EAAS,MAAM,iCAAiC,CAAA;AAG9H,OAAO,
|
|
1
|
+
{"version":3,"file":"did-functions.d.ts","sourceRoot":"","sources":["../src/did-functions.ts"],"names":[],"mappings":"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"}
|
package/dist/did-functions.js
CHANGED
|
@@ -46,7 +46,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
46
46
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
47
47
|
};
|
|
48
48
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
49
|
-
exports.asDidWeb = exports.toDidResolutionResult = exports.toDidDocument = exports.AgentDIDResolver = exports.getAgentResolver = exports.getSupportedDIDMethods = exports.determineKid = exports.getKey = exports.toDIDs = exports.toDID = exports.getDID = exports.getIdentifier = exports.getAgentDIDMethods = exports.mapIdentifierKeysToDocWithJwkSupport = exports.extractPublicKeyHex = exports.isEvenHexString = exports.extractPublicKeyHexWithJwkSupport = exports.dereferenceDidKeysWithJwkSupport = exports.getKeys = exports.getControllerKey = exports.getEthereumAddressFromKey = exports.
|
|
49
|
+
exports.asDidWeb = exports.toDidResolutionResult = exports.toDidDocument = exports.AgentDIDResolver = exports.getAgentResolver = exports.getSupportedDIDMethods = exports.determineKid = exports.getKey = exports.toDIDs = exports.toDID = exports.getDID = exports.getIdentifier = exports.getAgentDIDMethods = exports.mapIdentifierKeysToDocWithJwkSupport = exports.extractPublicKeyHex = exports.isEvenHexString = exports.extractPublicKeyHexWithJwkSupport = exports.dereferenceDidKeysWithJwkSupport = exports.getKeys = exports.getControllerKey = exports.getEthereumAddressFromKey = exports.getFirstKeyWithRelationFromDIDDoc = exports.createIdentifier = exports.getPrimaryIdentifier = exports.getOrCreatePrimaryIdentifier = exports.getFirstKeyWithRelation = exports.getAuthenticationKey = void 0;
|
|
50
50
|
const transactions_1 = require("@ethersproject/transactions");
|
|
51
51
|
const did_uni_client_1 = require("@sphereon/did-uni-client");
|
|
52
52
|
const ssi_sdk_ext_key_utils_1 = require("@sphereon/ssi-sdk-ext.key-utils");
|
|
@@ -57,12 +57,37 @@ const utils_1 = require("@veramo/utils");
|
|
|
57
57
|
const elliptic_1 = __importDefault(require("elliptic"));
|
|
58
58
|
const u8a = __importStar(require("uint8arrays"));
|
|
59
59
|
const types_1 = require("./types");
|
|
60
|
-
const getAuthenticationKey = (
|
|
61
|
-
|
|
60
|
+
const getAuthenticationKey = (_a, context_1) => __awaiter(void 0, [_a, context_1], void 0, function* ({ identifier, offlineWhenNoDIDRegistered, noVerificationMethodFallback, keyType, controllerKey, }, context) {
|
|
61
|
+
return yield (0, exports.getFirstKeyWithRelation)({
|
|
62
|
+
identifier,
|
|
63
|
+
offlineWhenNoDIDRegistered,
|
|
64
|
+
noVerificationMethodFallback,
|
|
65
|
+
keyType,
|
|
66
|
+
controllerKey,
|
|
67
|
+
vmRelationship: 'authentication',
|
|
68
|
+
}, context);
|
|
69
|
+
});
|
|
70
|
+
exports.getAuthenticationKey = getAuthenticationKey;
|
|
71
|
+
const getFirstKeyWithRelation = (_b, context_2) => __awaiter(void 0, [_b, context_2], void 0, function* ({ identifier, offlineWhenNoDIDRegistered, noVerificationMethodFallback, keyType, controllerKey, vmRelationship, }, context) {
|
|
72
|
+
var _c, _d;
|
|
62
73
|
let key = undefined;
|
|
63
74
|
try {
|
|
64
75
|
key =
|
|
65
|
-
(
|
|
76
|
+
(_c = (yield (0, exports.getFirstKeyWithRelationFromDIDDoc)({
|
|
77
|
+
identifier,
|
|
78
|
+
vmRelationship,
|
|
79
|
+
errorOnNotFound: false,
|
|
80
|
+
keyType,
|
|
81
|
+
controllerKey,
|
|
82
|
+
}, context))) !== null && _c !== void 0 ? _c : (noVerificationMethodFallback
|
|
83
|
+
? undefined
|
|
84
|
+
: yield (0, exports.getFirstKeyWithRelationFromDIDDoc)({
|
|
85
|
+
identifier,
|
|
86
|
+
vmRelationship: 'verificationMethod',
|
|
87
|
+
errorOnNotFound: false,
|
|
88
|
+
keyType,
|
|
89
|
+
controllerKey,
|
|
90
|
+
}, context));
|
|
66
91
|
}
|
|
67
92
|
catch (e) {
|
|
68
93
|
if (e instanceof Error) {
|
|
@@ -77,10 +102,27 @@ const getAuthenticationKey = (identifier, context, offlineWhenNoDIDRegistered, n
|
|
|
77
102
|
if (!key && offlineWhenNoDIDRegistered) {
|
|
78
103
|
const offlineDID = toDidDocument(identifier);
|
|
79
104
|
key =
|
|
80
|
-
(
|
|
105
|
+
(_d = (yield (0, exports.getFirstKeyWithRelationFromDIDDoc)({
|
|
106
|
+
identifier,
|
|
107
|
+
vmRelationship,
|
|
108
|
+
errorOnNotFound: false,
|
|
109
|
+
didDocument: offlineDID,
|
|
110
|
+
keyType,
|
|
111
|
+
controllerKey,
|
|
112
|
+
}, context))) !== null && _d !== void 0 ? _d : (noVerificationMethodFallback
|
|
113
|
+
? undefined
|
|
114
|
+
: yield (0, exports.getFirstKeyWithRelationFromDIDDoc)({
|
|
115
|
+
identifier,
|
|
116
|
+
vmRelationship: 'verificationMethod',
|
|
117
|
+
errorOnNotFound: false,
|
|
118
|
+
didDocument: offlineDID,
|
|
119
|
+
keyType,
|
|
120
|
+
controllerKey,
|
|
121
|
+
}, context));
|
|
81
122
|
if (!key) {
|
|
82
123
|
key = identifier.keys
|
|
83
124
|
.map((key) => key)
|
|
125
|
+
.filter((key) => keyType === undefined || key.type === keyType || (controllerKey && key.kid === identifier.controllerKeyId))
|
|
84
126
|
.find((key) => { var _a, _b; return ((_a = key.meta.verificationMethod) === null || _a === void 0 ? void 0 : _a.type.includes('authentication')) || ((_b = key.meta.purposes) === null || _b === void 0 ? void 0 : _b.includes('authentication')); });
|
|
85
127
|
}
|
|
86
128
|
}
|
|
@@ -89,10 +131,10 @@ const getAuthenticationKey = (identifier, context, offlineWhenNoDIDRegistered, n
|
|
|
89
131
|
}
|
|
90
132
|
return key;
|
|
91
133
|
});
|
|
92
|
-
exports.
|
|
134
|
+
exports.getFirstKeyWithRelation = getFirstKeyWithRelation;
|
|
93
135
|
const getOrCreatePrimaryIdentifier = (context, opts) => __awaiter(void 0, void 0, void 0, function* () {
|
|
94
|
-
var
|
|
95
|
-
const primaryIdentifier = yield (0, exports.getPrimaryIdentifier)(context, (
|
|
136
|
+
var _e, _f;
|
|
137
|
+
const primaryIdentifier = yield (0, exports.getPrimaryIdentifier)(context, Object.assign(Object.assign({}, (_e = opts === null || opts === void 0 ? void 0 : opts.createOpts) === null || _e === void 0 ? void 0 : _e.options), ((opts === null || opts === void 0 ? void 0 : opts.method) && { method: opts.method })));
|
|
96
138
|
if (primaryIdentifier !== undefined) {
|
|
97
139
|
return {
|
|
98
140
|
created: false,
|
|
@@ -100,7 +142,7 @@ const getOrCreatePrimaryIdentifier = (context, opts) => __awaiter(void 0, void 0
|
|
|
100
142
|
};
|
|
101
143
|
}
|
|
102
144
|
if ((opts === null || opts === void 0 ? void 0 : opts.method) === types_1.SupportedDidMethodEnum.DID_KEY) {
|
|
103
|
-
const createOpts = (
|
|
145
|
+
const createOpts = (_f = opts === null || opts === void 0 ? void 0 : opts.createOpts) !== null && _f !== void 0 ? _f : {};
|
|
104
146
|
createOpts.options = Object.assign({ codecName: 'EBSI', type: 'Secp256r1' }, createOpts);
|
|
105
147
|
opts.createOpts = createOpts;
|
|
106
148
|
}
|
|
@@ -112,36 +154,38 @@ const getOrCreatePrimaryIdentifier = (context, opts) => __awaiter(void 0, void 0
|
|
|
112
154
|
});
|
|
113
155
|
exports.getOrCreatePrimaryIdentifier = getOrCreatePrimaryIdentifier;
|
|
114
156
|
const getPrimaryIdentifier = (context, opts) => __awaiter(void 0, void 0, void 0, function* () {
|
|
115
|
-
const identifiers = (yield context.agent.didManagerFind((opts === null || opts === void 0 ? void 0 : opts.method) ? { provider: `${types_1.DID_PREFIX}
|
|
116
|
-
return
|
|
157
|
+
const identifiers = (yield context.agent.didManagerFind((opts === null || opts === void 0 ? void 0 : opts.method) ? { provider: `${types_1.DID_PREFIX}${opts === null || opts === void 0 ? void 0 : opts.method}` } : {})).filter((identifier) => (opts === null || opts === void 0 ? void 0 : opts.type) === undefined || identifier.keys.some((key) => key.type === (opts === null || opts === void 0 ? void 0 : opts.type)));
|
|
158
|
+
return identifiers && identifiers.length > 0 ? identifiers[0] : undefined;
|
|
117
159
|
});
|
|
118
160
|
exports.getPrimaryIdentifier = getPrimaryIdentifier;
|
|
119
161
|
const createIdentifier = (context, opts) => __awaiter(void 0, void 0, void 0, function* () {
|
|
120
|
-
var
|
|
121
|
-
const identifier = yield context.agent.didManagerCreate(Object.assign(Object.assign({ kms: (
|
|
162
|
+
var _g, _h, _j, _k, _l, _m, _o;
|
|
163
|
+
const identifier = yield context.agent.didManagerCreate(Object.assign(Object.assign({ kms: (_h = (_g = opts === null || opts === void 0 ? void 0 : opts.createOpts) === null || _g === void 0 ? void 0 : _g.kms) !== null && _h !== void 0 ? _h : types_1.KeyManagementSystemEnum.LOCAL }, ((opts === null || opts === void 0 ? void 0 : opts.method) && { provider: `${types_1.DID_PREFIX}${opts === null || opts === void 0 ? void 0 : opts.method}` })), { alias: (_k = (_j = opts === null || opts === void 0 ? void 0 : opts.createOpts) === null || _j === void 0 ? void 0 : _j.alias) !== null && _k !== void 0 ? _k : `${types_1.IdentifierAliasEnum.PRIMARY}-${opts === null || opts === void 0 ? void 0 : opts.method}-${(_m = (_l = opts === null || opts === void 0 ? void 0 : opts.createOpts) === null || _l === void 0 ? void 0 : _l.options) === null || _m === void 0 ? void 0 : _m.type}-${new Date().toUTCString()}`, options: (_o = opts === null || opts === void 0 ? void 0 : opts.createOpts) === null || _o === void 0 ? void 0 : _o.options }));
|
|
122
164
|
return identifier;
|
|
123
165
|
});
|
|
124
166
|
exports.createIdentifier = createIdentifier;
|
|
125
|
-
const
|
|
126
|
-
const
|
|
127
|
-
const matchedKeys = yield mapIdentifierKeysToDocWithJwkSupport(identifier, section, context, didDocument);
|
|
167
|
+
const getFirstKeyWithRelationFromDIDDoc = (_p, context_3) => __awaiter(void 0, [_p, context_3], void 0, function* ({ identifier, vmRelationship = 'verificationMethod', keyType, errorOnNotFound = false, didDocument, controllerKey, }, context) {
|
|
168
|
+
const matchedKeys = yield mapIdentifierKeysToDocWithJwkSupport({ identifier, vmRelationship, didDocument }, context);
|
|
128
169
|
if (Array.isArray(matchedKeys) && matchedKeys.length > 0) {
|
|
129
|
-
|
|
170
|
+
const result = matchedKeys.find((key) => keyType === undefined || key.type === keyType || (controllerKey && key.kid === identifier.controllerKeyId));
|
|
171
|
+
if (result) {
|
|
172
|
+
return result;
|
|
173
|
+
}
|
|
130
174
|
}
|
|
131
|
-
if (errorOnNotFound
|
|
132
|
-
throw new Error(`Could not find key with relationship ${
|
|
175
|
+
if (errorOnNotFound) {
|
|
176
|
+
throw new Error(`Could not find key with relationship ${vmRelationship} in DID document for ${identifier.did}${keyType ? ' and key type: ' + keyType : ''}`);
|
|
133
177
|
}
|
|
134
178
|
return undefined;
|
|
135
179
|
});
|
|
136
|
-
exports.
|
|
180
|
+
exports.getFirstKeyWithRelationFromDIDDoc = getFirstKeyWithRelationFromDIDDoc;
|
|
137
181
|
const getEthereumAddressFromKey = ({ key }) => {
|
|
138
182
|
var _a, _b, _c, _d, _e;
|
|
139
183
|
if (key.type !== 'Secp256k1') {
|
|
140
|
-
throw Error(`Can only get ethereum address from a Secp256k1 key. Type is ${key.type} for
|
|
184
|
+
throw Error(`Can only get ethereum address from a Secp256k1 key. Type is ${key.type} for keyRef: ${key.kid}`);
|
|
141
185
|
}
|
|
142
186
|
const ethereumAddress = (_e = (_b = (_a = key.meta) === null || _a === void 0 ? void 0 : _a.ethereumAddress) !== null && _b !== void 0 ? _b : (_d = (_c = key.meta) === null || _c === void 0 ? void 0 : _c.account) === null || _d === void 0 ? void 0 : _d.toLowerCase()) !== null && _e !== void 0 ? _e : (0, transactions_1.computeAddress)(`0x${key.publicKeyHex}`).toLowerCase();
|
|
143
187
|
if (!ethereumAddress) {
|
|
144
|
-
throw Error(`Could not get or generate ethereum address from key
|
|
188
|
+
throw Error(`Could not get or generate ethereum address from key with keyRef ${key.kid}`);
|
|
145
189
|
}
|
|
146
190
|
return ethereumAddress;
|
|
147
191
|
};
|
|
@@ -154,11 +198,11 @@ const getControllerKey = ({ identifier }) => {
|
|
|
154
198
|
return key;
|
|
155
199
|
};
|
|
156
200
|
exports.getControllerKey = getControllerKey;
|
|
157
|
-
const getKeys = ({ jwkThumbprint, kms, identifier,
|
|
201
|
+
const getKeys = ({ jwkThumbprint, kms, identifier, kmsKeyRef, keyType, controllerKey, }) => {
|
|
158
202
|
return identifier.keys
|
|
159
203
|
.filter((key) => !keyType || key.type === keyType)
|
|
160
204
|
.filter((key) => !kms || key.kms === kms)
|
|
161
|
-
.filter((key) => !
|
|
205
|
+
.filter((key) => !kmsKeyRef || key.kid === kmsKeyRef)
|
|
162
206
|
.filter((key) => { var _a; return !jwkThumbprint || ((_a = key.meta) === null || _a === void 0 ? void 0 : _a.jwkThumbprint) === jwkThumbprint; })
|
|
163
207
|
.filter((key) => !controllerKey || identifier.controllerKeyId === key.kid);
|
|
164
208
|
};
|
|
@@ -310,6 +354,7 @@ function extractPublicKeyBytes(pk) {
|
|
|
310
354
|
* @param section - the section of the DID document to be mapped (see
|
|
311
355
|
* {@link https://www.w3.org/TR/did-core/#verification-relationships | verification relationships}), but can also be
|
|
312
356
|
* `verificationMethod` to map all the keys.
|
|
357
|
+
* @param didDocument
|
|
313
358
|
* @param context - the veramo agent context, which must contain a {@link @veramo/core#IResolver | IResolver}
|
|
314
359
|
* implementation that can resolve the DID document of the identifier.
|
|
315
360
|
*
|
|
@@ -318,8 +363,8 @@ function extractPublicKeyBytes(pk) {
|
|
|
318
363
|
*
|
|
319
364
|
* @beta This API may change without a BREAKING CHANGE notice.
|
|
320
365
|
*/
|
|
321
|
-
function mapIdentifierKeysToDocWithJwkSupport(
|
|
322
|
-
return __awaiter(this, arguments, void 0, function* (identifier,
|
|
366
|
+
function mapIdentifierKeysToDocWithJwkSupport(_a, context_4) {
|
|
367
|
+
return __awaiter(this, arguments, void 0, function* ({ identifier, vmRelationship = 'verificationMethod', didDocument, }, context) {
|
|
323
368
|
const didDoc = didDocument !== null && didDocument !== void 0 ? didDocument : (yield getAgentResolver(context)
|
|
324
369
|
.resolve(identifier.did)
|
|
325
370
|
.then((result) => result.didDocument));
|
|
@@ -328,16 +373,16 @@ function mapIdentifierKeysToDocWithJwkSupport(identifier_1) {
|
|
|
328
373
|
}
|
|
329
374
|
// const rsaDidWeb = identifier.keys && identifier.keys.length > 0 && identifier.keys.find((key) => key.type === 'RSA') && didDocument
|
|
330
375
|
// We skip mapping in case the identifier is RSA and a did document is supplied.
|
|
331
|
-
const keys = didDoc ? [] : yield (0, utils_1.mapIdentifierKeysToDoc)(identifier,
|
|
376
|
+
const keys = didDoc ? [] : yield (0, utils_1.mapIdentifierKeysToDoc)(identifier, vmRelationship, context);
|
|
332
377
|
// dereference all key agreement keys from DID document and normalize
|
|
333
|
-
const documentKeys = yield dereferenceDidKeysWithJwkSupport(didDoc,
|
|
334
|
-
const localKeys =
|
|
378
|
+
const documentKeys = yield dereferenceDidKeysWithJwkSupport(didDoc, vmRelationship, context);
|
|
379
|
+
const localKeys = vmRelationship === 'keyAgreement' ? (0, utils_1.convertIdentifierEncryptionKeys)(identifier) : (0, utils_1.compressIdentifierSecp256k1Keys)(identifier);
|
|
335
380
|
// finally map the didDocument keys to the identifier keys by comparing `publicKeyHex`
|
|
336
381
|
const extendedKeys = documentKeys
|
|
337
382
|
.map((verificationMethod) => {
|
|
338
383
|
/*if (verificationMethod.type !== 'JsonWebKey2020') {
|
|
339
|
-
|
|
340
|
-
|
|
384
|
+
return null
|
|
385
|
+
}*/
|
|
341
386
|
const localKey = localKeys.find((localKey) => {
|
|
342
387
|
var _a;
|
|
343
388
|
return localKey.publicKeyHex === verificationMethod.publicKeyHex ||
|
|
@@ -427,32 +472,33 @@ function toDIDs(identifiers) {
|
|
|
427
472
|
return identifiers.map(toDID);
|
|
428
473
|
}
|
|
429
474
|
exports.toDIDs = toDIDs;
|
|
430
|
-
function getKey(
|
|
431
|
-
return __awaiter(this, arguments, void 0, function* (identifier,
|
|
475
|
+
function getKey(_a, context_4) {
|
|
476
|
+
return __awaiter(this, arguments, void 0, function* ({ identifier, vmRelationship = 'authentication', kmsKeyRef, }, context) {
|
|
432
477
|
if (!identifier) {
|
|
433
478
|
return Promise.reject(new Error(`No identifier provided to getKey method!`));
|
|
434
479
|
}
|
|
435
480
|
// normalize to kid, in case keyId was passed in as did#vm or #vm
|
|
436
|
-
const
|
|
437
|
-
const kid =
|
|
438
|
-
|
|
481
|
+
const kmsKeyRefParts = kmsKeyRef === null || kmsKeyRef === void 0 ? void 0 : kmsKeyRef.split(`#`);
|
|
482
|
+
const kid = kmsKeyRefParts ? ((kmsKeyRefParts === null || kmsKeyRefParts === void 0 ? void 0 : kmsKeyRefParts.length) === 2 ? kmsKeyRefParts[1] : kmsKeyRefParts[0]) : undefined;
|
|
483
|
+
// todo: We really should do a keyRef and external kid here
|
|
484
|
+
let identifierKey = kmsKeyRef ? identifier.keys.find((key) => { var _a; return key.kid === kid || ((_a = key === null || key === void 0 ? void 0 : key.meta) === null || _a === void 0 ? void 0 : _a.jwkThumbprint) === kid; }) : undefined;
|
|
439
485
|
if (!identifierKey) {
|
|
440
|
-
const keys = yield mapIdentifierKeysToDocWithJwkSupport(identifier,
|
|
486
|
+
const keys = yield mapIdentifierKeysToDocWithJwkSupport({ identifier, vmRelationship: vmRelationship }, context);
|
|
441
487
|
if (!keys || keys.length === 0) {
|
|
442
|
-
throw new Error(`No keys found for verificationMethodSection: ${
|
|
488
|
+
throw new Error(`No keys found for verificationMethodSection: ${vmRelationship} and did ${identifier.did}`);
|
|
443
489
|
}
|
|
444
|
-
if (
|
|
445
|
-
identifierKey = keys.find((key) => { var _a, _b, _c; return ((_a = key.meta.verificationMethod) === null || _a === void 0 ? void 0 : _a.id) ===
|
|
490
|
+
if (kmsKeyRef) {
|
|
491
|
+
identifierKey = keys.find((key) => { var _a, _b, _c; return ((_a = key.meta.verificationMethod) === null || _a === void 0 ? void 0 : _a.id) === kmsKeyRef || (kid && ((_c = (_b = key.meta.verificationMethod) === null || _b === void 0 ? void 0 : _b.id) === null || _c === void 0 ? void 0 : _c.includes(kid))); });
|
|
446
492
|
}
|
|
447
493
|
if (!identifierKey) {
|
|
448
|
-
identifierKey = keys.find((key) => { var _a, _b; return ((_a = key.meta.verificationMethod) === null || _a === void 0 ? void 0 : _a.type) ===
|
|
494
|
+
identifierKey = keys.find((key) => { var _a, _b; return ((_a = key.meta.verificationMethod) === null || _a === void 0 ? void 0 : _a.type) === vmRelationship || ((_b = key.meta.purposes) === null || _b === void 0 ? void 0 : _b.includes(vmRelationship)); });
|
|
449
495
|
}
|
|
450
496
|
if (!identifierKey) {
|
|
451
497
|
identifierKey = keys[0];
|
|
452
498
|
}
|
|
453
499
|
}
|
|
454
500
|
if (!identifierKey) {
|
|
455
|
-
throw new Error(`No matching verificationMethodSection key found for keyId: ${
|
|
501
|
+
throw new Error(`No matching verificationMethodSection key found for keyId: ${kmsKeyRef} and vmSection: ${vmRelationship} for id ${identifier.did}`);
|
|
456
502
|
}
|
|
457
503
|
return identifierKey;
|
|
458
504
|
});
|
|
@@ -463,9 +509,23 @@ exports.getKey = getKey;
|
|
|
463
509
|
* @param key
|
|
464
510
|
* @param idOpts
|
|
465
511
|
*/
|
|
466
|
-
function determineKid(
|
|
467
|
-
|
|
468
|
-
|
|
512
|
+
function determineKid(_a, context_4) {
|
|
513
|
+
return __awaiter(this, arguments, void 0, function* ({ key, idOpts, }, context) {
|
|
514
|
+
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
|
|
515
|
+
if ((_c = (_b = key.meta) === null || _b === void 0 ? void 0 : _b.verificationMethod) === null || _c === void 0 ? void 0 : _c.id) {
|
|
516
|
+
return (_e = (_d = key.meta) === null || _d === void 0 ? void 0 : _d.verificationMethod) === null || _e === void 0 ? void 0 : _e.id;
|
|
517
|
+
}
|
|
518
|
+
const identifier = yield getIdentifier(idOpts, context);
|
|
519
|
+
const mappedKeys = yield mapIdentifierKeysToDocWithJwkSupport({
|
|
520
|
+
identifier,
|
|
521
|
+
vmRelationship: 'verificationMethod',
|
|
522
|
+
}, context);
|
|
523
|
+
const vmKey = mappedKeys.find((extendedKey) => extendedKey.kid === key.kid);
|
|
524
|
+
if (vmKey) {
|
|
525
|
+
return (_l = (_k = (_h = (_g = (_f = vmKey.meta) === null || _f === void 0 ? void 0 : _f.verificationMethod) === null || _g === void 0 ? void 0 : _g.id) !== null && _h !== void 0 ? _h : (_j = vmKey.meta) === null || _j === void 0 ? void 0 : _j.jwkThumbprint) !== null && _k !== void 0 ? _k : idOpts.kmsKeyRef) !== null && _l !== void 0 ? _l : vmKey.kid;
|
|
526
|
+
}
|
|
527
|
+
return (_p = (_o = (_m = key.meta) === null || _m === void 0 ? void 0 : _m.jwkThumbprint) !== null && _o !== void 0 ? _o : idOpts.kmsKeyRef) !== null && _p !== void 0 ? _p : key.kid;
|
|
528
|
+
});
|
|
469
529
|
}
|
|
470
530
|
exports.determineKid = determineKid;
|
|
471
531
|
function getSupportedDIDMethods(didOpts, context) {
|
|
@@ -565,17 +625,18 @@ exports.AgentDIDResolver = AgentDIDResolver;
|
|
|
565
625
|
*
|
|
566
626
|
* We try to do our best, to map keys onto relevant verification methods and relationships, but we simply lack the context
|
|
567
627
|
* of the actual DID method here. Do not relly on this method for DID resolution. It is only handy for offline use cases
|
|
568
|
-
* when no DID Document is cached.
|
|
628
|
+
* when no DID Document is cached. For DID:WEB it does provide an accurate representation!
|
|
569
629
|
*
|
|
570
630
|
* @param identifier
|
|
571
631
|
* @param opts
|
|
572
632
|
*/
|
|
573
633
|
function toDidDocument(identifier, opts) {
|
|
574
|
-
var _a, _b, _c;
|
|
634
|
+
var _a, _b, _c, _d, _e, _f;
|
|
575
635
|
let didDocument = undefined;
|
|
636
|
+
// TODO: Introduce jwk thumbprints here
|
|
576
637
|
if (identifier) {
|
|
577
638
|
const did = (_a = identifier.did) !== null && _a !== void 0 ? _a : opts === null || opts === void 0 ? void 0 : opts.did;
|
|
578
|
-
didDocument = Object.assign(Object.assign(Object.assign({ '@context': 'https://www.w3.org/ns/did/v1', id: did, verificationMethod: identifier.keys.map((key) => {
|
|
639
|
+
didDocument = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ '@context': 'https://www.w3.org/ns/did/v1', id: did, verificationMethod: identifier.keys.map((key) => {
|
|
579
640
|
const vm = {
|
|
580
641
|
controller: did,
|
|
581
642
|
id: key.kid.startsWith(did) && key.kid.includes('#') ? key.kid : `${did}#${key.kid}`,
|
|
@@ -586,42 +647,50 @@ function toDidDocument(identifier, opts) {
|
|
|
586
647
|
type: 'JsonWebKey2020',
|
|
587
648
|
};
|
|
588
649
|
return vm;
|
|
589
|
-
}) }, ((
|
|
650
|
+
}) }, (((opts === null || opts === void 0 ? void 0 : opts.use) === undefined || ((_b = opts === null || opts === void 0 ? void 0 : opts.use) === null || _b === void 0 ? void 0 : _b.includes(ssi_sdk_ext_key_utils_1.JwkKeyUse.Signature))) &&
|
|
590
651
|
identifier.keys && {
|
|
591
652
|
assertionMethod: identifier.keys
|
|
592
|
-
.filter((key) => { var _a, _b; return ((_a = key === null || key === void 0 ? void 0 : key.meta) === null || _a === void 0 ? void 0 : _a.purpose) || ((_b = key === null || key === void 0 ? void 0 : key.meta) === null || _b === void 0 ? void 0 : _b.purpose) === 'assertionMethod'; })
|
|
653
|
+
.filter((key) => { var _a, _b, _c, _d; return ((_a = key === null || key === void 0 ? void 0 : key.meta) === null || _a === void 0 ? void 0 : _a.purpose) === undefined || ((_b = key === null || key === void 0 ? void 0 : key.meta) === null || _b === void 0 ? void 0 : _b.purpose) === 'assertionMethod' || ((_d = (_c = key === null || key === void 0 ? void 0 : key.meta) === null || _c === void 0 ? void 0 : _c.purposes) === null || _d === void 0 ? void 0 : _d.includes('assertionMethod')); })
|
|
593
654
|
.map((key) => {
|
|
655
|
+
if (key.kid.startsWith(did) && key.kid.includes('#')) {
|
|
656
|
+
return key.kid;
|
|
657
|
+
}
|
|
594
658
|
return `${did}#${key.kid}`;
|
|
595
659
|
}),
|
|
660
|
+
})), (((opts === null || opts === void 0 ? void 0 : opts.use) === undefined || ((_c = opts === null || opts === void 0 ? void 0 : opts.use) === null || _c === void 0 ? void 0 : _c.includes(ssi_sdk_ext_key_utils_1.JwkKeyUse.Signature))) &&
|
|
661
|
+
identifier.keys && {
|
|
596
662
|
authentication: identifier.keys
|
|
597
|
-
.filter((key) => { var _a, _b; return ((_a = key === null || key === void 0 ? void 0 : key.meta) === null || _a === void 0 ? void 0 : _a.purpose) || ((_b = key === null || key === void 0 ? void 0 : key.meta) === null || _b === void 0 ? void 0 : _b.purpose) === 'authentication'; })
|
|
663
|
+
.filter((key) => { var _a, _b, _c, _d; return ((_a = key === null || key === void 0 ? void 0 : key.meta) === null || _a === void 0 ? void 0 : _a.purpose) === undefined || ((_b = key === null || key === void 0 ? void 0 : key.meta) === null || _b === void 0 ? void 0 : _b.purpose) === 'authentication' || ((_d = (_c = key === null || key === void 0 ? void 0 : key.meta) === null || _c === void 0 ? void 0 : _c.purposes) === null || _d === void 0 ? void 0 : _d.includes('authentication')); })
|
|
598
664
|
.map((key) => {
|
|
665
|
+
if (key.kid.startsWith(did) && key.kid.includes('#')) {
|
|
666
|
+
return key.kid;
|
|
667
|
+
}
|
|
599
668
|
return `${did}#${key.kid}`;
|
|
600
669
|
}),
|
|
601
|
-
})), ((
|
|
670
|
+
})), (((opts === null || opts === void 0 ? void 0 : opts.use) === undefined || ((_d = opts === null || opts === void 0 ? void 0 : opts.use) === null || _d === void 0 ? void 0 : _d.includes(ssi_sdk_ext_key_utils_1.JwkKeyUse.Encryption))) &&
|
|
602
671
|
identifier.keys && {
|
|
603
672
|
keyAgreement: identifier.keys
|
|
604
|
-
.filter((key) => { var _a; return key.type === 'X25519' || ((_a = key === null || key === void 0 ? void 0 : key.meta) === null || _a === void 0 ? void 0 : _a.purpose) === 'keyAgreement'; })
|
|
673
|
+
.filter((key) => { var _a, _b, _c; return key.type === 'X25519' || ((_a = key === null || key === void 0 ? void 0 : key.meta) === null || _a === void 0 ? void 0 : _a.purpose) === 'keyAgreement' || ((_c = (_b = key === null || key === void 0 ? void 0 : key.meta) === null || _b === void 0 ? void 0 : _b.purposes) === null || _c === void 0 ? void 0 : _c.includes('keyAgreement')); })
|
|
605
674
|
.map((key) => {
|
|
606
675
|
if (key.kid.startsWith(did) && key.kid.includes('#')) {
|
|
607
676
|
return key.kid;
|
|
608
677
|
}
|
|
609
678
|
return `${did}#${key.kid}`;
|
|
610
679
|
}),
|
|
611
|
-
} &&
|
|
680
|
+
})), (((opts === null || opts === void 0 ? void 0 : opts.use) === undefined || ((_e = opts === null || opts === void 0 ? void 0 : opts.use) === null || _e === void 0 ? void 0 : _e.includes(ssi_sdk_ext_key_utils_1.JwkKeyUse.Encryption))) &&
|
|
612
681
|
identifier.keys && {
|
|
613
682
|
capabilityInvocation: identifier.keys
|
|
614
|
-
.filter((key) => { var _a; return key.type === 'X25519' || ((_a = key === null || key === void 0 ? void 0 : key.meta) === null || _a === void 0 ? void 0 : _a.purpose) === 'capabilityInvocation'; })
|
|
683
|
+
.filter((key) => { var _a, _b, _c; return key.type === 'X25519' || ((_a = key === null || key === void 0 ? void 0 : key.meta) === null || _a === void 0 ? void 0 : _a.purpose) === 'capabilityInvocation' || ((_c = (_b = key === null || key === void 0 ? void 0 : key.meta) === null || _b === void 0 ? void 0 : _b.purposes) === null || _c === void 0 ? void 0 : _c.includes('capabilityInvocation')); })
|
|
615
684
|
.map((key) => {
|
|
616
685
|
if (key.kid.startsWith(did) && key.kid.includes('#')) {
|
|
617
686
|
return key.kid;
|
|
618
687
|
}
|
|
619
688
|
return `${did}#${key.kid}`;
|
|
620
689
|
}),
|
|
621
|
-
} &&
|
|
690
|
+
})), (((opts === null || opts === void 0 ? void 0 : opts.use) === undefined || ((_f = opts === null || opts === void 0 ? void 0 : opts.use) === null || _f === void 0 ? void 0 : _f.includes(ssi_sdk_ext_key_utils_1.JwkKeyUse.Encryption))) &&
|
|
622
691
|
identifier.keys && {
|
|
623
692
|
capabilityDelegation: identifier.keys
|
|
624
|
-
.filter((key) => { var _a; return key.type === 'X25519' || ((_a = key === null || key === void 0 ? void 0 : key.meta) === null || _a === void 0 ? void 0 : _a.purpose) === 'capabilityDelegation'; })
|
|
693
|
+
.filter((key) => { var _a, _b, _c; return key.type === 'X25519' || ((_a = key === null || key === void 0 ? void 0 : key.meta) === null || _a === void 0 ? void 0 : _a.purpose) === 'capabilityDelegation' || ((_c = (_b = key === null || key === void 0 ? void 0 : key.meta) === null || _b === void 0 ? void 0 : _b.purposes) === null || _c === void 0 ? void 0 : _c.includes('capabilityDelegation')); })
|
|
625
694
|
.map((key) => {
|
|
626
695
|
if (key.kid.startsWith(did) && key.kid.includes('#')) {
|
|
627
696
|
return key.kid;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"did-functions.js","sourceRoot":"","sources":["../src/did-functions.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"did-functions.js","sourceRoot":"","sources":["../src/did-functions.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -31,11 +31,12 @@ export interface IDIDOptions {
|
|
|
31
31
|
export interface IIdentifierOpts {
|
|
32
32
|
identifier: IIdentifier | string;
|
|
33
33
|
verificationMethodSection?: DIDDocumentSection;
|
|
34
|
-
|
|
34
|
+
kmsKeyRef?: string;
|
|
35
35
|
}
|
|
36
36
|
export type IdentifierProviderOpts = {
|
|
37
37
|
type?: TKeyType;
|
|
38
38
|
use?: string;
|
|
39
|
+
method?: SupportedDidMethodEnum;
|
|
39
40
|
[x: string]: any;
|
|
40
41
|
};
|
|
41
42
|
export type CreateIdentifierOpts = {
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAA;AAE1D,oBAAY,sBAAsB;IAChC,QAAQ,SAAS;IACjB,OAAO,QAAQ;IACf,OAAO,QAAQ;IACf,OAAO,QAAQ;IACf,QAAQ,SAAS;IACjB,OAAO,QAAQ;CAChB;AAED,oBAAY,mBAAmB;IAC7B,OAAO,YAAY;CACpB;AAED,oBAAY,uBAAuB;IACjC,KAAK,UAAU;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,aAAa,CAAC,EAAE,gBAAgB,CAAA;IAChC,QAAQ,CAAC,EAAE,UAAU,CAAA;IACrB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,2BAA2B,CAAC,EAAE,OAAO,CAAA;IACrC,2BAA2B,CAAC,EAAE,MAAM,EAAE,CAAA;CACvC;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,cAAc,EAAE,eAAe,CAAA;IAC/B,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAA;CAC/B;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,WAAW,GAAG,MAAM,CAAA;IAChC,yBAAyB,CAAC,EAAE,kBAAkB,CAAA;IAC9C,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAA;AAE1D,oBAAY,sBAAsB;IAChC,QAAQ,SAAS;IACjB,OAAO,QAAQ;IACf,OAAO,QAAQ;IACf,OAAO,QAAQ;IACf,QAAQ,SAAS;IACjB,OAAO,QAAQ;CAChB;AAED,oBAAY,mBAAmB;IAC7B,OAAO,YAAY;CACpB;AAED,oBAAY,uBAAuB;IACjC,KAAK,UAAU;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,aAAa,CAAC,EAAE,gBAAgB,CAAA;IAChC,QAAQ,CAAC,EAAE,UAAU,CAAA;IACrB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,2BAA2B,CAAC,EAAE,OAAO,CAAA;IACrC,2BAA2B,CAAC,EAAE,MAAM,EAAE,CAAA;CACvC;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,cAAc,EAAE,eAAe,CAAA;IAC/B,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAA;CAC/B;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,WAAW,GAAG,MAAM,CAAA;IAChC,yBAAyB,CAAC,EAAE,kBAAkB,CAAA;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,CAAC,EAAE,QAAQ,CAAA;IACf,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,sBAAsB,CAAA;IAC/B,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,EAAE,sBAAsB,CAAA;IAC9B,UAAU,CAAC,EAAE,0BAA0B,CAAA;CACxC,CAAA;AAED,MAAM,MAAM,0BAA0B,GAAG;IACvC,GAAG,CAAC,EAAE,uBAAuB,CAAA;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,sBAAsB,CAAA;CACjC,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,MAAM,EAAE,sBAAsB,CAAA;IAC9B,UAAU,CAAC,EAAE,0BAA0B,CAAA;CACxC,CAAA;AAED,eAAO,MAAM,UAAU,SAAS,CAAA;AAEhC,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,CAAC,CAAA;CACV"}
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAKA,IAAY,sBAOX;AAPD,WAAY,sBAAsB;IAChC,2CAAiB,CAAA;IACjB,yCAAe,CAAA;IACf,yCAAe,CAAA;IACf,yCAAe,CAAA;IACf,2CAAiB,CAAA;IACjB,yCAAe,CAAA;AACjB,CAAC,EAPW,sBAAsB,sCAAtB,sBAAsB,QAOjC;AAED,IAAY,mBAEX;AAFD,WAAY,mBAAmB;IAC7B,0CAAmB,CAAA;AACrB,CAAC,EAFW,mBAAmB,mCAAnB,mBAAmB,QAE9B;AAED,IAAY,uBAEX;AAFD,WAAY,uBAAuB;IACjC,0CAAe,CAAA;AACjB,CAAC,EAFW,uBAAuB,uCAAvB,uBAAuB,QAElC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAKA,IAAY,sBAOX;AAPD,WAAY,sBAAsB;IAChC,2CAAiB,CAAA;IACjB,yCAAe,CAAA;IACf,yCAAe,CAAA;IACf,yCAAe,CAAA;IACf,2CAAiB,CAAA;IACjB,yCAAe,CAAA;AACjB,CAAC,EAPW,sBAAsB,sCAAtB,sBAAsB,QAOjC;AAED,IAAY,mBAEX;AAFD,WAAY,mBAAmB;IAC7B,0CAAmB,CAAA;AACrB,CAAC,EAFW,mBAAmB,mCAAnB,mBAAmB,QAE9B;AAED,IAAY,uBAEX;AAFD,WAAY,uBAAuB;IACjC,0CAAe,CAAA;AACjB,CAAC,EAFW,uBAAuB,uCAAvB,uBAAuB,QAElC;AA6CY,QAAA,UAAU,GAAG,MAAM,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sphereon/ssi-sdk-ext.did-utils",
|
|
3
3
|
"description": "DID Utils",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.23.1-next.3+a9dbfa6",
|
|
5
5
|
"source": "src/index.ts",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
@@ -13,8 +13,8 @@
|
|
|
13
13
|
"@ethersproject/networks": "^5.7.1",
|
|
14
14
|
"@ethersproject/transactions": "^5.7.0",
|
|
15
15
|
"@sphereon/did-uni-client": "^0.6.3",
|
|
16
|
-
"@sphereon/ssi-sdk-ext.key-utils": "0.
|
|
17
|
-
"@sphereon/ssi-sdk.core": "0.
|
|
16
|
+
"@sphereon/ssi-sdk-ext.key-utils": "0.23.1-next.3+a9dbfa6",
|
|
17
|
+
"@sphereon/ssi-sdk.core": "0.27.0",
|
|
18
18
|
"@stablelib/ed25519": "^1.0.3",
|
|
19
19
|
"@veramo/core": "4.2.0",
|
|
20
20
|
"@veramo/utils": "4.2.0",
|
|
@@ -38,5 +38,5 @@
|
|
|
38
38
|
"author": "Sphereon <dev@sphereon.com>",
|
|
39
39
|
"license": "Apache-2.0",
|
|
40
40
|
"keywords": [],
|
|
41
|
-
"gitHead": "
|
|
41
|
+
"gitHead": "a9dbfa67d0db3283326e1f7185b50a973e677126"
|
|
42
42
|
}
|
package/src/did-functions.ts
CHANGED
|
@@ -3,16 +3,7 @@ import { UniResolver } from '@sphereon/did-uni-client'
|
|
|
3
3
|
import { base64ToHex, ENC_KEY_ALGS, hexKeyFromPEMBasedJwk, JwkKeyUse, TKeyType, toJwk } from '@sphereon/ssi-sdk-ext.key-utils'
|
|
4
4
|
import { base58ToBytes, base64ToBytes, bytesToHex, hexToBytes, multibaseKeyToBytes } from '@sphereon/ssi-sdk.core'
|
|
5
5
|
import { convertPublicKeyToX25519 } from '@stablelib/ed25519'
|
|
6
|
-
import {
|
|
7
|
-
DIDDocument,
|
|
8
|
-
DIDDocumentSection,
|
|
9
|
-
DIDResolutionResult,
|
|
10
|
-
IAgentContext,
|
|
11
|
-
IDIDManager,
|
|
12
|
-
IIdentifier,
|
|
13
|
-
IKey,
|
|
14
|
-
IResolver,
|
|
15
|
-
} from '@veramo/core'
|
|
6
|
+
import { DIDDocument, DIDDocumentSection, DIDResolutionResult, IAgentContext, IDIDManager, IIdentifier, IKey, IResolver } from '@veramo/core'
|
|
16
7
|
import {
|
|
17
8
|
_ExtendedIKey,
|
|
18
9
|
_ExtendedVerificationMethod,
|
|
@@ -40,34 +31,117 @@ import {
|
|
|
40
31
|
SupportedDidMethodEnum,
|
|
41
32
|
} from './types'
|
|
42
33
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
34
|
+
export const getAuthenticationKey = async (
|
|
35
|
+
{
|
|
36
|
+
identifier,
|
|
37
|
+
offlineWhenNoDIDRegistered,
|
|
38
|
+
noVerificationMethodFallback,
|
|
39
|
+
keyType,
|
|
40
|
+
controllerKey,
|
|
41
|
+
}: {
|
|
42
|
+
identifier: IIdentifier
|
|
43
|
+
keyType?: TKeyType
|
|
44
|
+
offlineWhenNoDIDRegistered?: boolean
|
|
45
|
+
noVerificationMethodFallback?: boolean
|
|
46
|
+
controllerKey?: boolean
|
|
47
|
+
},
|
|
48
|
+
context: IAgentContext<IResolver & IDIDManager>
|
|
49
|
+
): Promise<_ExtendedIKey> => {
|
|
50
|
+
return await getFirstKeyWithRelation(
|
|
51
|
+
{
|
|
52
|
+
identifier,
|
|
53
|
+
offlineWhenNoDIDRegistered,
|
|
54
|
+
noVerificationMethodFallback,
|
|
55
|
+
keyType,
|
|
56
|
+
controllerKey,
|
|
57
|
+
vmRelationship: 'authentication',
|
|
58
|
+
},
|
|
59
|
+
context
|
|
60
|
+
)
|
|
61
|
+
}
|
|
62
|
+
export const getFirstKeyWithRelation = async (
|
|
63
|
+
{
|
|
64
|
+
identifier,
|
|
65
|
+
offlineWhenNoDIDRegistered,
|
|
66
|
+
noVerificationMethodFallback,
|
|
67
|
+
keyType,
|
|
68
|
+
controllerKey,
|
|
69
|
+
vmRelationship,
|
|
70
|
+
}: {
|
|
71
|
+
identifier: IIdentifier
|
|
72
|
+
keyType?: TKeyType
|
|
73
|
+
offlineWhenNoDIDRegistered?: boolean
|
|
74
|
+
noVerificationMethodFallback?: boolean
|
|
75
|
+
controllerKey?: boolean
|
|
76
|
+
vmRelationship: DIDDocumentSection
|
|
77
|
+
},
|
|
78
|
+
context: IAgentContext<IResolver & IDIDManager>
|
|
79
|
+
): Promise<_ExtendedIKey> => {
|
|
49
80
|
let key: _ExtendedIKey | undefined = undefined
|
|
50
81
|
try {
|
|
51
82
|
key =
|
|
52
|
-
(await
|
|
53
|
-
|
|
83
|
+
(await getFirstKeyWithRelationFromDIDDoc(
|
|
84
|
+
{
|
|
85
|
+
identifier,
|
|
86
|
+
vmRelationship,
|
|
87
|
+
errorOnNotFound: false,
|
|
88
|
+
keyType,
|
|
89
|
+
controllerKey,
|
|
90
|
+
},
|
|
91
|
+
context
|
|
92
|
+
)) ??
|
|
93
|
+
(noVerificationMethodFallback
|
|
94
|
+
? undefined
|
|
95
|
+
: await getFirstKeyWithRelationFromDIDDoc(
|
|
96
|
+
{
|
|
97
|
+
identifier,
|
|
98
|
+
vmRelationship: 'verificationMethod',
|
|
99
|
+
errorOnNotFound: false,
|
|
100
|
+
keyType,
|
|
101
|
+
controllerKey,
|
|
102
|
+
},
|
|
103
|
+
context
|
|
104
|
+
))
|
|
54
105
|
} catch (e) {
|
|
55
106
|
if (e instanceof Error) {
|
|
56
107
|
if (!e.message.includes('404') || !offlineWhenNoDIDRegistered) {
|
|
57
|
-
throw e
|
|
108
|
+
throw e
|
|
58
109
|
}
|
|
59
110
|
} else {
|
|
60
|
-
throw e
|
|
111
|
+
throw e
|
|
61
112
|
}
|
|
62
113
|
}
|
|
63
114
|
if (!key && offlineWhenNoDIDRegistered) {
|
|
64
115
|
const offlineDID = toDidDocument(identifier)
|
|
65
116
|
key =
|
|
66
|
-
(await
|
|
67
|
-
|
|
117
|
+
(await getFirstKeyWithRelationFromDIDDoc(
|
|
118
|
+
{
|
|
119
|
+
identifier,
|
|
120
|
+
vmRelationship,
|
|
121
|
+
errorOnNotFound: false,
|
|
122
|
+
didDocument: offlineDID,
|
|
123
|
+
keyType,
|
|
124
|
+
controllerKey,
|
|
125
|
+
},
|
|
126
|
+
context
|
|
127
|
+
)) ??
|
|
128
|
+
(noVerificationMethodFallback
|
|
129
|
+
? undefined
|
|
130
|
+
: await getFirstKeyWithRelationFromDIDDoc(
|
|
131
|
+
{
|
|
132
|
+
identifier,
|
|
133
|
+
vmRelationship: 'verificationMethod',
|
|
134
|
+
errorOnNotFound: false,
|
|
135
|
+
didDocument: offlineDID,
|
|
136
|
+
keyType,
|
|
137
|
+
controllerKey,
|
|
138
|
+
},
|
|
139
|
+
context
|
|
140
|
+
))
|
|
68
141
|
if (!key) {
|
|
69
142
|
key = identifier.keys
|
|
70
143
|
.map((key) => key as _ExtendedIKey)
|
|
144
|
+
.filter((key) => keyType === undefined || key.type === keyType || (controllerKey && key.kid === identifier.controllerKeyId))
|
|
71
145
|
.find((key) => key.meta.verificationMethod?.type.includes('authentication') || key.meta.purposes?.includes('authentication'))
|
|
72
146
|
}
|
|
73
147
|
}
|
|
@@ -77,8 +151,11 @@ export const getAuthenticationKey = async (identifier: IIdentifier,
|
|
|
77
151
|
return key
|
|
78
152
|
}
|
|
79
153
|
|
|
80
|
-
export const getOrCreatePrimaryIdentifier = async (
|
|
81
|
-
|
|
154
|
+
export const getOrCreatePrimaryIdentifier = async (
|
|
155
|
+
context: IAgentContext<IDIDManager>,
|
|
156
|
+
opts?: CreateOrGetIdentifierOpts
|
|
157
|
+
): Promise<GetOrCreateResult<IIdentifier>> => {
|
|
158
|
+
const primaryIdentifier = await getPrimaryIdentifier(context, { ...opts?.createOpts?.options, ...(opts?.method && { method: opts.method }) })
|
|
82
159
|
if (primaryIdentifier !== undefined) {
|
|
83
160
|
return {
|
|
84
161
|
created: false,
|
|
@@ -99,49 +176,65 @@ export const getOrCreatePrimaryIdentifier = async (context: IAgentContext<IDIDMa
|
|
|
99
176
|
}
|
|
100
177
|
|
|
101
178
|
export const getPrimaryIdentifier = async (context: IAgentContext<IDIDManager>, opts?: IdentifierProviderOpts): Promise<IIdentifier | undefined> => {
|
|
102
|
-
const identifiers = (await context.agent.didManagerFind(opts?.method ? { provider: `${DID_PREFIX}
|
|
103
|
-
(identifier: IIdentifier) =>
|
|
104
|
-
opts?.type === undefined || identifier.keys.some((key: IKey) => key.type === opts?.type),
|
|
179
|
+
const identifiers = (await context.agent.didManagerFind(opts?.method ? { provider: `${DID_PREFIX}${opts?.method}` } : {})).filter(
|
|
180
|
+
(identifier: IIdentifier) => opts?.type === undefined || identifier.keys.some((key: IKey) => key.type === opts?.type)
|
|
105
181
|
)
|
|
106
182
|
|
|
107
|
-
return
|
|
183
|
+
return identifiers && identifiers.length > 0 ? identifiers[0] : undefined
|
|
108
184
|
}
|
|
109
185
|
|
|
110
186
|
export const createIdentifier = async (context: IAgentContext<IDIDManager>, opts?: CreateIdentifierOpts): Promise<IIdentifier> => {
|
|
111
187
|
const identifier = await context.agent.didManagerCreate({
|
|
112
188
|
kms: opts?.createOpts?.kms ?? KeyManagementSystemEnum.LOCAL,
|
|
113
|
-
...(opts?.method && { provider: `${DID_PREFIX}
|
|
189
|
+
...(opts?.method && { provider: `${DID_PREFIX}${opts?.method}` }),
|
|
114
190
|
alias: opts?.createOpts?.alias ?? `${IdentifierAliasEnum.PRIMARY}-${opts?.method}-${opts?.createOpts?.options?.type}-${new Date().toUTCString()}`,
|
|
115
191
|
options: opts?.createOpts?.options,
|
|
116
192
|
})
|
|
117
193
|
return identifier
|
|
118
194
|
}
|
|
119
195
|
|
|
120
|
-
export const
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
196
|
+
export const getFirstKeyWithRelationFromDIDDoc = async (
|
|
197
|
+
{
|
|
198
|
+
identifier,
|
|
199
|
+
vmRelationship = 'verificationMethod',
|
|
200
|
+
keyType,
|
|
201
|
+
errorOnNotFound = false,
|
|
202
|
+
didDocument,
|
|
203
|
+
controllerKey,
|
|
204
|
+
}: {
|
|
205
|
+
identifier: IIdentifier
|
|
206
|
+
controllerKey?: boolean
|
|
207
|
+
vmRelationship?: DIDDocumentSection
|
|
208
|
+
keyType?: TKeyType
|
|
209
|
+
errorOnNotFound?: boolean
|
|
210
|
+
didDocument?: DIDDocument
|
|
211
|
+
},
|
|
212
|
+
context: IAgentContext<IResolver & IDIDManager>
|
|
126
213
|
): Promise<_ExtendedIKey | undefined> => {
|
|
127
|
-
const
|
|
128
|
-
const matchedKeys = await mapIdentifierKeysToDocWithJwkSupport(identifier, section, context, didDocument)
|
|
214
|
+
const matchedKeys = await mapIdentifierKeysToDocWithJwkSupport({ identifier, vmRelationship, didDocument }, context)
|
|
129
215
|
if (Array.isArray(matchedKeys) && matchedKeys.length > 0) {
|
|
130
|
-
|
|
216
|
+
const result = matchedKeys.find(
|
|
217
|
+
(key) => keyType === undefined || key.type === keyType || (controllerKey && key.kid === identifier.controllerKeyId)
|
|
218
|
+
)
|
|
219
|
+
if (result) {
|
|
220
|
+
return result
|
|
221
|
+
}
|
|
131
222
|
}
|
|
132
|
-
if (errorOnNotFound
|
|
133
|
-
throw new Error(
|
|
223
|
+
if (errorOnNotFound) {
|
|
224
|
+
throw new Error(
|
|
225
|
+
`Could not find key with relationship ${vmRelationship} in DID document for ${identifier.did}${keyType ? ' and key type: ' + keyType : ''}`
|
|
226
|
+
)
|
|
134
227
|
}
|
|
135
228
|
return undefined
|
|
136
229
|
}
|
|
137
230
|
|
|
138
231
|
export const getEthereumAddressFromKey = ({ key }: { key: IKey }) => {
|
|
139
232
|
if (key.type !== 'Secp256k1') {
|
|
140
|
-
throw Error(`Can only get ethereum address from a Secp256k1 key. Type is ${key.type} for
|
|
233
|
+
throw Error(`Can only get ethereum address from a Secp256k1 key. Type is ${key.type} for keyRef: ${key.kid}`)
|
|
141
234
|
}
|
|
142
235
|
const ethereumAddress = key.meta?.ethereumAddress ?? key.meta?.account?.toLowerCase() ?? computeAddress(`0x${key.publicKeyHex}`).toLowerCase()
|
|
143
236
|
if (!ethereumAddress) {
|
|
144
|
-
throw Error(`Could not get or generate ethereum address from key
|
|
237
|
+
throw Error(`Could not get or generate ethereum address from key with keyRef ${key.kid}`)
|
|
145
238
|
}
|
|
146
239
|
return ethereumAddress
|
|
147
240
|
}
|
|
@@ -158,12 +251,12 @@ export const getKeys = ({
|
|
|
158
251
|
jwkThumbprint,
|
|
159
252
|
kms,
|
|
160
253
|
identifier,
|
|
161
|
-
|
|
254
|
+
kmsKeyRef,
|
|
162
255
|
keyType,
|
|
163
256
|
controllerKey,
|
|
164
257
|
}: {
|
|
165
258
|
identifier: IIdentifier
|
|
166
|
-
|
|
259
|
+
kmsKeyRef?: string
|
|
167
260
|
keyType?: TKeyType
|
|
168
261
|
kms?: string
|
|
169
262
|
jwkThumbprint?: string
|
|
@@ -172,7 +265,7 @@ export const getKeys = ({
|
|
|
172
265
|
return identifier.keys
|
|
173
266
|
.filter((key) => !keyType || key.type === keyType)
|
|
174
267
|
.filter((key) => !kms || key.kms === kms)
|
|
175
|
-
.filter((key) => !
|
|
268
|
+
.filter((key) => !kmsKeyRef || key.kid === kmsKeyRef)
|
|
176
269
|
.filter((key) => !jwkThumbprint || key.meta?.jwkThumbprint === jwkThumbprint)
|
|
177
270
|
.filter((key) => !controllerKey || identifier.controllerKeyId === key.kid)
|
|
178
271
|
}
|
|
@@ -331,6 +424,7 @@ function extractPublicKeyBytes(pk: VerificationMethod): Uint8Array {
|
|
|
331
424
|
* @param section - the section of the DID document to be mapped (see
|
|
332
425
|
* {@link https://www.w3.org/TR/did-core/#verification-relationships | verification relationships}), but can also be
|
|
333
426
|
* `verificationMethod` to map all the keys.
|
|
427
|
+
* @param didDocument
|
|
334
428
|
* @param context - the veramo agent context, which must contain a {@link @veramo/core#IResolver | IResolver}
|
|
335
429
|
* implementation that can resolve the DID document of the identifier.
|
|
336
430
|
*
|
|
@@ -340,10 +434,16 @@ function extractPublicKeyBytes(pk: VerificationMethod): Uint8Array {
|
|
|
340
434
|
* @beta This API may change without a BREAKING CHANGE notice.
|
|
341
435
|
*/
|
|
342
436
|
export async function mapIdentifierKeysToDocWithJwkSupport(
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
437
|
+
{
|
|
438
|
+
identifier,
|
|
439
|
+
vmRelationship = 'verificationMethod',
|
|
440
|
+
didDocument,
|
|
441
|
+
}: {
|
|
442
|
+
identifier: IIdentifier
|
|
443
|
+
vmRelationship?: DIDDocumentSection
|
|
444
|
+
didDocument?: DIDDocument
|
|
445
|
+
},
|
|
446
|
+
context: IAgentContext<IResolver & IDIDManager>
|
|
347
447
|
): Promise<_ExtendedIKey[]> {
|
|
348
448
|
const didDoc =
|
|
349
449
|
didDocument ??
|
|
@@ -357,19 +457,19 @@ export async function mapIdentifierKeysToDocWithJwkSupport(
|
|
|
357
457
|
// const rsaDidWeb = identifier.keys && identifier.keys.length > 0 && identifier.keys.find((key) => key.type === 'RSA') && didDocument
|
|
358
458
|
|
|
359
459
|
// We skip mapping in case the identifier is RSA and a did document is supplied.
|
|
360
|
-
const keys = didDoc ? [] : await mapIdentifierKeysToDoc(identifier,
|
|
460
|
+
const keys = didDoc ? [] : await mapIdentifierKeysToDoc(identifier, vmRelationship, context)
|
|
361
461
|
|
|
362
462
|
// dereference all key agreement keys from DID document and normalize
|
|
363
|
-
const documentKeys: VerificationMethod[] = await dereferenceDidKeysWithJwkSupport(didDoc,
|
|
463
|
+
const documentKeys: VerificationMethod[] = await dereferenceDidKeysWithJwkSupport(didDoc, vmRelationship, context)
|
|
364
464
|
|
|
365
|
-
const localKeys =
|
|
465
|
+
const localKeys = vmRelationship === 'keyAgreement' ? convertIdentifierEncryptionKeys(identifier) : compressIdentifierSecp256k1Keys(identifier)
|
|
366
466
|
|
|
367
467
|
// finally map the didDocument keys to the identifier keys by comparing `publicKeyHex`
|
|
368
468
|
const extendedKeys: _ExtendedIKey[] = documentKeys
|
|
369
469
|
.map((verificationMethod) => {
|
|
370
470
|
/*if (verificationMethod.type !== 'JsonWebKey2020') {
|
|
371
|
-
|
|
372
|
-
|
|
471
|
+
return null
|
|
472
|
+
}*/
|
|
373
473
|
const localKey = localKeys.find(
|
|
374
474
|
(localKey) =>
|
|
375
475
|
localKey.publicKeyHex === verificationMethod.publicKeyHex ||
|
|
@@ -455,32 +555,38 @@ export function toDIDs(identifiers?: (string | IIdentifier | Partial<IIdentifier
|
|
|
455
555
|
}
|
|
456
556
|
|
|
457
557
|
export async function getKey(
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
558
|
+
{
|
|
559
|
+
identifier,
|
|
560
|
+
vmRelationship = 'authentication',
|
|
561
|
+
kmsKeyRef,
|
|
562
|
+
}: {
|
|
563
|
+
identifier: IIdentifier
|
|
564
|
+
vmRelationship?: DIDDocumentSection
|
|
565
|
+
kmsKeyRef?: string
|
|
566
|
+
},
|
|
567
|
+
context: IAgentContext<IResolver & IDIDManager>
|
|
462
568
|
): Promise<IKey> {
|
|
463
569
|
if (!identifier) {
|
|
464
570
|
return Promise.reject(new Error(`No identifier provided to getKey method!`))
|
|
465
571
|
}
|
|
466
572
|
// normalize to kid, in case keyId was passed in as did#vm or #vm
|
|
467
|
-
const
|
|
468
|
-
const kid =
|
|
469
|
-
|
|
573
|
+
const kmsKeyRefParts = kmsKeyRef?.split(`#`)
|
|
574
|
+
const kid = kmsKeyRefParts ? (kmsKeyRefParts?.length === 2 ? kmsKeyRefParts[1] : kmsKeyRefParts[0]) : undefined
|
|
575
|
+
// todo: We really should do a keyRef and external kid here
|
|
576
|
+
let identifierKey = kmsKeyRef ? identifier.keys.find((key: IKey) => key.kid === kid || key?.meta?.jwkThumbprint === kid) : undefined
|
|
470
577
|
if (!identifierKey) {
|
|
471
|
-
const keys = await mapIdentifierKeysToDocWithJwkSupport(identifier,
|
|
578
|
+
const keys = await mapIdentifierKeysToDocWithJwkSupport({ identifier, vmRelationship: vmRelationship }, context)
|
|
472
579
|
if (!keys || keys.length === 0) {
|
|
473
|
-
throw new Error(`No keys found for verificationMethodSection: ${
|
|
580
|
+
throw new Error(`No keys found for verificationMethodSection: ${vmRelationship} and did ${identifier.did}`)
|
|
474
581
|
}
|
|
475
|
-
if (
|
|
582
|
+
if (kmsKeyRef) {
|
|
476
583
|
identifierKey = keys.find(
|
|
477
|
-
(key: _ExtendedIKey) => key.meta.verificationMethod?.id ===
|
|
584
|
+
(key: _ExtendedIKey) => key.meta.verificationMethod?.id === kmsKeyRef || (kid && key.meta.verificationMethod?.id?.includes(kid))
|
|
478
585
|
)
|
|
479
586
|
}
|
|
480
587
|
if (!identifierKey) {
|
|
481
588
|
identifierKey = keys.find(
|
|
482
|
-
(key: _ExtendedIKey) =>
|
|
483
|
-
key.meta.verificationMethod?.type === verificationMethodSection || key.meta.purposes?.includes(verificationMethodSection)
|
|
589
|
+
(key: _ExtendedIKey) => key.meta.verificationMethod?.type === vmRelationship || key.meta.purposes?.includes(vmRelationship)
|
|
484
590
|
)
|
|
485
591
|
}
|
|
486
592
|
if (!identifierKey) {
|
|
@@ -489,7 +595,7 @@ export async function getKey(
|
|
|
489
595
|
}
|
|
490
596
|
if (!identifierKey) {
|
|
491
597
|
throw new Error(
|
|
492
|
-
`No matching verificationMethodSection key found for keyId: ${
|
|
598
|
+
`No matching verificationMethodSection key found for keyId: ${kmsKeyRef} and vmSection: ${vmRelationship} for id ${identifier.did}`
|
|
493
599
|
)
|
|
494
600
|
}
|
|
495
601
|
|
|
@@ -501,8 +607,33 @@ export async function getKey(
|
|
|
501
607
|
* @param key
|
|
502
608
|
* @param idOpts
|
|
503
609
|
*/
|
|
504
|
-
export function determineKid(
|
|
505
|
-
|
|
610
|
+
export async function determineKid(
|
|
611
|
+
{
|
|
612
|
+
key,
|
|
613
|
+
idOpts,
|
|
614
|
+
}: {
|
|
615
|
+
key: IKey
|
|
616
|
+
idOpts: IIdentifierOpts
|
|
617
|
+
},
|
|
618
|
+
context: IAgentContext<IResolver & IDIDManager>
|
|
619
|
+
): Promise<string> {
|
|
620
|
+
if (key.meta?.verificationMethod?.id) {
|
|
621
|
+
return key.meta?.verificationMethod?.id
|
|
622
|
+
}
|
|
623
|
+
const identifier = await getIdentifier(idOpts, context)
|
|
624
|
+
const mappedKeys = await mapIdentifierKeysToDocWithJwkSupport(
|
|
625
|
+
{
|
|
626
|
+
identifier,
|
|
627
|
+
vmRelationship: 'verificationMethod',
|
|
628
|
+
},
|
|
629
|
+
context
|
|
630
|
+
)
|
|
631
|
+
const vmKey = mappedKeys.find((extendedKey) => extendedKey.kid === key.kid)
|
|
632
|
+
if (vmKey) {
|
|
633
|
+
return vmKey.meta?.verificationMethod?.id ?? vmKey.meta?.jwkThumbprint ?? idOpts.kmsKeyRef ?? vmKey.kid
|
|
634
|
+
}
|
|
635
|
+
|
|
636
|
+
return key.meta?.jwkThumbprint ?? idOpts.kmsKeyRef ?? key.kid
|
|
506
637
|
}
|
|
507
638
|
|
|
508
639
|
export async function getSupportedDIDMethods(didOpts: IDIDOptions, context: IAgentContext<IDIDManager>) {
|
|
@@ -610,7 +741,7 @@ export class AgentDIDResolver implements Resolvable {
|
|
|
610
741
|
*
|
|
611
742
|
* We try to do our best, to map keys onto relevant verification methods and relationships, but we simply lack the context
|
|
612
743
|
* of the actual DID method here. Do not relly on this method for DID resolution. It is only handy for offline use cases
|
|
613
|
-
* when no DID Document is cached.
|
|
744
|
+
* when no DID Document is cached. For DID:WEB it does provide an accurate representation!
|
|
614
745
|
*
|
|
615
746
|
* @param identifier
|
|
616
747
|
* @param opts
|
|
@@ -623,6 +754,7 @@ export function toDidDocument(
|
|
|
623
754
|
}
|
|
624
755
|
): DIDDocument | undefined {
|
|
625
756
|
let didDocument: DIDDocument | undefined = undefined
|
|
757
|
+
// TODO: Introduce jwk thumbprints here
|
|
626
758
|
if (identifier) {
|
|
627
759
|
const did = identifier.did ?? opts?.did
|
|
628
760
|
didDocument = {
|
|
@@ -640,43 +772,63 @@ export function toDidDocument(
|
|
|
640
772
|
}
|
|
641
773
|
return vm
|
|
642
774
|
}),
|
|
643
|
-
...((
|
|
775
|
+
...((opts?.use === undefined || opts?.use?.includes(JwkKeyUse.Signature)) &&
|
|
644
776
|
identifier.keys && {
|
|
645
777
|
assertionMethod: identifier.keys
|
|
646
|
-
.filter(
|
|
778
|
+
.filter(
|
|
779
|
+
(key) =>
|
|
780
|
+
key?.meta?.purpose === undefined || key?.meta?.purpose === 'assertionMethod' || key?.meta?.purposes?.includes('assertionMethod')
|
|
781
|
+
)
|
|
647
782
|
.map((key) => {
|
|
783
|
+
if (key.kid.startsWith(did) && key.kid.includes('#')) {
|
|
784
|
+
return key.kid
|
|
785
|
+
}
|
|
648
786
|
return `${did}#${key.kid}`
|
|
649
787
|
}),
|
|
788
|
+
}),
|
|
789
|
+
...((opts?.use === undefined || opts?.use?.includes(JwkKeyUse.Signature)) &&
|
|
790
|
+
identifier.keys && {
|
|
650
791
|
authentication: identifier.keys
|
|
651
|
-
.filter(
|
|
792
|
+
.filter(
|
|
793
|
+
(key) => key?.meta?.purpose === undefined || key?.meta?.purpose === 'authentication' || key?.meta?.purposes?.includes('authentication')
|
|
794
|
+
)
|
|
652
795
|
.map((key) => {
|
|
796
|
+
if (key.kid.startsWith(did) && key.kid.includes('#')) {
|
|
797
|
+
return key.kid
|
|
798
|
+
}
|
|
653
799
|
return `${did}#${key.kid}`
|
|
654
800
|
}),
|
|
655
801
|
}),
|
|
656
|
-
...((
|
|
802
|
+
...((opts?.use === undefined || opts?.use?.includes(JwkKeyUse.Encryption)) &&
|
|
657
803
|
identifier.keys && {
|
|
658
804
|
keyAgreement: identifier.keys
|
|
659
|
-
.filter((key) => key.type === 'X25519' || key?.meta?.purpose === 'keyAgreement')
|
|
805
|
+
.filter((key) => key.type === 'X25519' || key?.meta?.purpose === 'keyAgreement' || key?.meta?.purposes?.includes('keyAgreement'))
|
|
660
806
|
.map((key) => {
|
|
661
807
|
if (key.kid.startsWith(did) && key.kid.includes('#')) {
|
|
662
808
|
return key.kid
|
|
663
809
|
}
|
|
664
810
|
return `${did}#${key.kid}`
|
|
665
811
|
}),
|
|
666
|
-
}
|
|
812
|
+
}),
|
|
813
|
+
...((opts?.use === undefined || opts?.use?.includes(JwkKeyUse.Encryption)) &&
|
|
667
814
|
identifier.keys && {
|
|
668
815
|
capabilityInvocation: identifier.keys
|
|
669
|
-
.filter(
|
|
816
|
+
.filter(
|
|
817
|
+
(key) => key.type === 'X25519' || key?.meta?.purpose === 'capabilityInvocation' || key?.meta?.purposes?.includes('capabilityInvocation')
|
|
818
|
+
)
|
|
670
819
|
.map((key) => {
|
|
671
820
|
if (key.kid.startsWith(did) && key.kid.includes('#')) {
|
|
672
821
|
return key.kid
|
|
673
822
|
}
|
|
674
823
|
return `${did}#${key.kid}`
|
|
675
824
|
}),
|
|
676
|
-
}
|
|
825
|
+
}),
|
|
826
|
+
...((opts?.use === undefined || opts?.use?.includes(JwkKeyUse.Encryption)) &&
|
|
677
827
|
identifier.keys && {
|
|
678
828
|
capabilityDelegation: identifier.keys
|
|
679
|
-
.filter(
|
|
829
|
+
.filter(
|
|
830
|
+
(key) => key.type === 'X25519' || key?.meta?.purpose === 'capabilityDelegation' || key?.meta?.purposes?.includes('capabilityDelegation')
|
|
831
|
+
)
|
|
680
832
|
.map((key) => {
|
|
681
833
|
if (key.kid.startsWith(did) && key.kid.includes('#')) {
|
|
682
834
|
return key.kid
|
package/src/types.ts
CHANGED
|
@@ -37,12 +37,13 @@ export interface IDIDOptions {
|
|
|
37
37
|
export interface IIdentifierOpts {
|
|
38
38
|
identifier: IIdentifier | string
|
|
39
39
|
verificationMethodSection?: DIDDocumentSection
|
|
40
|
-
|
|
40
|
+
kmsKeyRef?: string
|
|
41
41
|
}
|
|
42
42
|
|
|
43
43
|
export type IdentifierProviderOpts = {
|
|
44
44
|
type?: TKeyType
|
|
45
45
|
use?: string
|
|
46
|
+
method?: SupportedDidMethodEnum
|
|
46
47
|
[x: string]: any
|
|
47
48
|
}
|
|
48
49
|
|