@sphereon/ssi-sdk-ext.did-provider-jwk 0.28.1-feature.esm.cjs.8 → 0.28.1-feature.esm.cjs.9
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/index.cjs +21 -52
- package/dist/index.cjs.map +1 -1
- package/package.json +6 -6
package/dist/index.cjs
CHANGED
|
@@ -1,76 +1,37 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __create = Object.create;
|
|
3
|
-
var __defProp = Object.defineProperty;
|
|
4
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var __defProp = Object.defineProperty;
|
|
8
2
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
9
|
-
var __export = (target, all) => {
|
|
10
|
-
for (var name in all)
|
|
11
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
12
|
-
};
|
|
13
|
-
var __copyProps = (to, from, except, desc) => {
|
|
14
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
-
for (let key of __getOwnPropNames(from))
|
|
16
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
17
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
18
|
-
}
|
|
19
|
-
return to;
|
|
20
|
-
};
|
|
21
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
22
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
23
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
24
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
25
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
26
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
27
|
-
mod
|
|
28
|
-
));
|
|
29
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
30
|
-
|
|
31
|
-
// src/index.ts
|
|
32
|
-
var index_exports = {};
|
|
33
|
-
__export(index_exports, {
|
|
34
|
-
ENC_KEY_ALGS: () => ENC_KEY_ALGS,
|
|
35
|
-
JwkDIDProvider: () => JwkDIDProvider,
|
|
36
|
-
Key: () => Key,
|
|
37
|
-
KeyCurve: () => KeyCurve,
|
|
38
|
-
KeyType: () => KeyType,
|
|
39
|
-
SIG_KEY_ALGS: () => SIG_KEY_ALGS
|
|
40
|
-
});
|
|
41
|
-
module.exports = __toCommonJS(index_exports);
|
|
42
3
|
|
|
43
4
|
// src/jwk-did-provider.ts
|
|
44
|
-
var
|
|
45
|
-
var
|
|
46
|
-
var
|
|
47
|
-
var
|
|
48
|
-
var debug = (0,
|
|
49
|
-
var JwkDIDProvider = class extends
|
|
5
|
+
var _ssisdkextkeyutils = require('@sphereon/ssi-sdk-ext.key-utils');
|
|
6
|
+
var _didmanager = require('@veramo/did-manager');
|
|
7
|
+
var _base64url = require('base64url'); var _base64url2 = _interopRequireDefault(_base64url);
|
|
8
|
+
var _debug = require('debug'); var _debug2 = _interopRequireDefault(_debug);
|
|
9
|
+
var debug = _debug2.default.call(void 0, "sphereon:did-provider-jwk");
|
|
10
|
+
var JwkDIDProvider = class extends _didmanager.AbstractIdentifierProvider {
|
|
50
11
|
static {
|
|
51
12
|
__name(this, "JwkDIDProvider");
|
|
52
13
|
}
|
|
53
|
-
|
|
14
|
+
|
|
54
15
|
constructor(options) {
|
|
55
16
|
super();
|
|
56
17
|
this.defaultKms = options.defaultKms;
|
|
57
18
|
}
|
|
58
19
|
/** {@inheritDoc @veramo/veramo-core#IDIDManager.didManagerCreate} */
|
|
59
20
|
async createIdentifier(args, context) {
|
|
60
|
-
const key = await (0,
|
|
21
|
+
const key = await _ssisdkextkeyutils.importProvidedOrGeneratedKey.call(void 0, {
|
|
61
22
|
// @ts-ignore
|
|
62
|
-
kms: args.kms
|
|
23
|
+
kms: _nullishCoalesce(args.kms, () => ( this.defaultKms)),
|
|
63
24
|
alias: args.alias,
|
|
64
25
|
options: args.options
|
|
65
26
|
}, context);
|
|
66
|
-
const use = (0,
|
|
67
|
-
const jwk = (0,
|
|
27
|
+
const use = _ssisdkextkeyutils.jwkDetermineUse.call(void 0, key.type, _optionalChain([args, 'optionalAccess', _ => _.options, 'optionalAccess', _2 => _2.use]));
|
|
28
|
+
const jwk = _ssisdkextkeyutils.toJwk.call(void 0, key.publicKeyHex, key.type, {
|
|
68
29
|
use,
|
|
69
30
|
key,
|
|
70
31
|
noKidThumbprint: true
|
|
71
32
|
});
|
|
72
33
|
debug(JSON.stringify(jwk, null, 2));
|
|
73
|
-
const did = `did:jwk:${(0,
|
|
34
|
+
const did = `did:jwk:${_base64url2.default.call(void 0, JSON.stringify(jwk))}`;
|
|
74
35
|
const identifier = {
|
|
75
36
|
did,
|
|
76
37
|
controllerKeyId: `${did}#0`,
|
|
@@ -143,4 +104,12 @@ var ENC_KEY_ALGS = [
|
|
|
143
104
|
"ECDH_ES_A256KW",
|
|
144
105
|
"RSA_OAEP_256"
|
|
145
106
|
];
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
exports.ENC_KEY_ALGS = ENC_KEY_ALGS; exports.JwkDIDProvider = JwkDIDProvider; exports.Key = Key; exports.KeyCurve = KeyCurve; exports.KeyType = KeyType; exports.SIG_KEY_ALGS = SIG_KEY_ALGS;
|
|
146
115
|
//# sourceMappingURL=index.cjs.map
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/SSI-SDK-crypto-extensions/SSI-SDK-crypto-extensions/packages/did-provider-jwk/dist/index.cjs","../src/jwk-did-provider.ts","../src/types/jwk-provider-types.ts"],"names":["debug","Debug","JwkDIDProvider","AbstractIdentifierProvider","defaultKms","constructor","options","createIdentifier","args","context","key","importProvidedOrGeneratedKey","kms","alias","use","jwkDetermineUse","type","jwk","toJwk","publicKeyHex","noKidThumbprint","JSON","stringify","did","base64url","identifier","Key","KeyCurve","KeyType"],"mappings":"AAAA,qxBAAI,UAAU,EAAE,MAAM,CAAC,cAAc;AACrC,IAAI,OAAO,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;AACxF;AACA;ACHA,oEAAqE;AAErE,iDAA2C;AAC3C,4FAAsB;AACtB,4EAAkB;AAIlB,IAAMA,MAAAA,EAAQC,6BAAAA,2BAAM,CAAA;AAMb,IAAMC,eAAAA,EAAN,MAAA,QAA6BC,uCAAAA;ADJpC,ECVA,OAcoCA;ADHpC,IAAI,MAAM,CAAC,IAAI,EAAE,gBAAgB,CAAC;AAClC,EAAE;AACF,ECEmBC;ADDnB,ECGEC,WAAAA,CAAYC,OAAAA,EAAkC;AAC5C,IAAA,KAAA,CAAK,CAAA;AACL,IAAA,IAAA,CAAKF,WAAAA,EAAaE,OAAAA,CAAQF,UAAAA;ADF9B,ECGE;ADFF;AACA,ECIE,MAAMG,gBAAAA,CAAiBC,IAAAA,EAA6BC,OAAAA,EAAmE;AACrH,IAAA,MAAMC,IAAAA,EAAM,MAAMC,6DAAAA;ADHtB;AACA,MCKQC,GAAAA,mBAAKJ,IAAAA,CAAKI,GAAAA,UAAO,IAAA,CAAKR,YAAAA;ADJ9B,MCKQS,KAAAA,EAAOL,IAAAA,CAAKK,KAAAA;ADJpB,MCKQP,OAAAA,EAASE,IAAAA,CAAKF;ADJtB,ICKM,CAAA,EACAG,OAAAA,CAAAA;AAGF,IAAA,MAAMK,IAAAA,EAAMC,gDAAAA,GAAgBL,CAAIM,IAAAA,kBAAMR,IAAAA,2BAAMF,OAAAA,6BAASQ,KAAAA,CAAAA;AACrD,IAAA,MAAMG,IAAAA,EAAkBC,sCAAAA,GAAMR,CAAIS,YAAAA,EAAcT,GAAAA,CAAIM,IAAAA,EAAM;ADP9D,MCOgEF,GAAAA;ADNhE,MCMqEJ,GAAAA;ADLrE,MCK0EU,eAAAA,EAAiB;ADJ3F,ICIgG,CAAA,CAAA;AAC5FpB,IAAAA,KAAAA,CAAMqB,IAAAA,CAAKC,SAAAA,CAAUL,GAAAA,EAAK,IAAA,EAAM,CAAA,CAAA,CAAA;AAChC,IAAA,MAAMM,IAAAA,EAAM,CAAA,QAAA,EAAWC,iCAAAA,IAAUH,CAAKC,SAAAA,CAAUL,GAAAA,CAAAA,CAAAA,CAAAA,CAAAA;AACE,IAAA;AAChDM,MAAAA;AACoBA,MAAAA;AACd,MAAA;AAACb,QAAAA;ADF6C,MAAA;ACG1C,MAAA;AACZ,IAAA;AAEqC,IAAA;AAC9Be,IAAAA;AACT,EAAA;ADFwD;ACQhC,EAAA;AACN,IAAA;AAClB,EAAA;ADNwD;ACSqC,EAAA;AAEpF,IAAA;AACT,EAAA;ADRwD;ACWiB,EAAA;AAC3C,IAAA;AAC9B,EAAA;ADTwD;ACYuB,EAAA;AACjD,IAAA;AAC9B,EAAA;ADVwD;ACayB,EAAA;AACnD,IAAA;AAC9B,EAAA;ADXwD;ACc2B,EAAA;AACrD,IAAA;AAC9B,EAAA;AACF;ADZ0D;AACA;AEtC9CC;AFwC8C,EAAA;AACA,EAAA;AACA,EAAA;AE1C9CA,EAAAA;AF4C8C;AEvC9CC;AFyC8C,EAAA;AACA,EAAA;AACA,EAAA;AE3C9CA,EAAAA;AF6C8C;AEvC9CC;AFyC8C,EAAA;AACA,EAAA;AE1C9CA,EAAAA;AF4C8C;AEvC9B;AAAC,EAAA;AAAS,EAAA;AAAS,EAAA;AAAS,EAAA;AAAS,EAAA;AAAU,EAAA;AAAW,EAAA;AAAa,EAAA;AAAa,EAAA;AAAc,EAAA;AFmDpE;AElD9B;AAAC,EAAA;AAAU,EAAA;AAAkB,EAAA;AFuDC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/home/runner/work/SSI-SDK-crypto-extensions/SSI-SDK-crypto-extensions/packages/did-provider-jwk/dist/index.cjs","sourcesContent":[null,"import { importProvidedOrGeneratedKey, jwkDetermineUse, toJwk } from '@sphereon/ssi-sdk-ext.key-utils'\nimport { DIDDocument, IAgentContext, IIdentifier, IKeyManager } from '@veramo/core'\nimport { AbstractIdentifierProvider } from '@veramo/did-manager'\nimport base64url from 'base64url'\nimport Debug from 'debug'\nimport { IAddKeyArgs, IAddServiceArgs, ICreateIdentifierArgs, IRemoveKeyArgs, IRequiredContext } from './types/jwk-provider-types'\nimport { JsonWebKey } from '@sphereon/ssi-types'\n\nconst debug = Debug('sphereon:did-provider-jwk')\n\n/**\n * {@link @veramo/did-manager#DIDManager} identifier provider for `did:ion` identifiers\n * @public\n */\nexport class JwkDIDProvider extends AbstractIdentifierProvider {\n private readonly defaultKms?: string\n\n constructor(options: { defaultKms?: string }) {\n super()\n this.defaultKms = options.defaultKms\n }\n\n /** {@inheritDoc @veramo/veramo-core#IDIDManager.didManagerCreate} */\n async createIdentifier(args: ICreateIdentifierArgs, context: IRequiredContext): Promise<Omit<IIdentifier, 'provider'>> {\n const key = await importProvidedOrGeneratedKey(\n {\n // @ts-ignore\n kms: args.kms ?? this.defaultKms,\n alias: args.alias,\n options: args.options,\n },\n context\n )\n\n const use = jwkDetermineUse(key.type, args?.options?.use)\n const jwk: JsonWebKey = toJwk(key.publicKeyHex, key.type, { use, key, noKidThumbprint: true })\n debug(JSON.stringify(jwk, null, 2))\n const did = `did:jwk:${base64url(JSON.stringify(jwk))}`\n const identifier: Omit<IIdentifier, 'provider'> = {\n did,\n controllerKeyId: `${did}#0`,\n keys: [key],\n services: [],\n }\n\n debug('Created DID: ', identifier.did)\n return identifier\n }\n\n /** {@inheritDoc @veramo/veramo-core#IDIDManager.didManagerUpdate} */\n async updateIdentifier?(\n args: { did: string; document: Partial<DIDDocument>; options?: { [x: string]: any } },\n context: IAgentContext<IKeyManager>\n ): Promise<IIdentifier> {\n throw new Error('not implemented yet')\n }\n\n /** {@inheritDoc @veramo/veramo-core#IDIDManager.didManagerDelete} */\n async deleteIdentifier(identifier: IIdentifier, context: IRequiredContext): Promise<boolean> {\n // JWKs are entirely in memory constructs, without on chain support. Veramo can store them in the did store, but that is not the responsibility of the DID provider itself.\n return true\n }\n\n /** {@inheritDoc @veramo/veramo-core#IDIDManager.didManagerAddKey} */\n async addKey(args: IAddKeyArgs, context: IRequiredContext): Promise<any> {\n return Promise.reject(Error('Not supported for DID JWKs'))\n }\n\n /** {@inheritDoc @veramo/veramo-core#IDIDManager.didManagerRemoveKey} */\n async removeKey(args: IRemoveKeyArgs, context: IRequiredContext): Promise<any> {\n return Promise.reject(Error('Not supported for DID JWKs'))\n }\n\n /** {@inheritDoc @veramo/veramo-core#IDIDManager.didManagerAddService} */\n async addService(args: IAddServiceArgs, context: IRequiredContext): Promise<any> {\n return Promise.reject(Error('Not supported for DID JWKs'))\n }\n\n /** {@inheritDoc @veramo/veramo-core#IDIDManager.didManagerRemoveService} */\n async removeService(args: IRemoveKeyArgs, context: IRequiredContext): Promise<any> {\n return Promise.reject(Error('Not supported for DID JWKs'))\n }\n}\n","import { IKeyOpts } from '@sphereon/ssi-sdk-ext.key-utils'\nimport { IAgentContext, IIdentifier, IKey, IKeyManager, IService } from '@veramo/core'\n\nexport interface ICreateIdentifierArgs {\n kms?: string\n alias?: string\n options?: IKeyOpts\n}\n\nexport interface IAddKeyArgs {\n identifier: IIdentifier\n key: IKey\n options?: any\n}\n\nexport interface IRemoveKeyArgs {\n identifier: IIdentifier\n id: string\n options?: any\n}\n\nexport interface IRemoveKeyArgs {\n identifier: IIdentifier\n kid: string\n options?: any\n}\n\nexport interface IAddServiceArgs {\n identifier: IIdentifier\n service: IService\n options?: any\n}\n\nexport enum Key {\n Ed25519 = 'Ed25519',\n Secp256k1 = 'Secp256k1',\n Secp256r1 = 'Secp256r1',\n}\nexport enum KeyCurve {\n Secp256k1 = 'secp256k1',\n P_256 = 'P-256',\n Ed25519 = 'Ed25519',\n}\n\nexport enum KeyType {\n EC = 'EC',\n OKP = 'OKP',\n}\n\nexport const SIG_KEY_ALGS = ['ES256', 'ES384', 'ES512', 'EdDSA', 'ES256K', 'Ed25519', 'Secp256k1', 'Secp256r1', 'Bls12381G1', 'Bls12381G2']\nexport const ENC_KEY_ALGS = ['X25519', 'ECDH_ES_A256KW', 'RSA_OAEP_256']\n\nexport type IRequiredContext = IAgentContext<IKeyManager>\n"]}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sphereon/ssi-sdk-ext.did-provider-jwk",
|
|
3
3
|
"description": "Sphereon SSI-SDK plugin for management of did:key identifiers.",
|
|
4
|
-
"version": "0.28.1-feature.esm.cjs.
|
|
4
|
+
"version": "0.28.1-feature.esm.cjs.9+71682ea",
|
|
5
5
|
"source": "./src/index.ts",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"main": "./dist/index.cjs",
|
|
@@ -22,8 +22,8 @@
|
|
|
22
22
|
},
|
|
23
23
|
"dependencies": {
|
|
24
24
|
"@ethersproject/random": "^5.7.0",
|
|
25
|
-
"@sphereon/ssi-sdk-ext.did-utils": "^0.28.1-feature.esm.cjs.
|
|
26
|
-
"@sphereon/ssi-sdk-ext.key-utils": "^0.28.1-feature.esm.cjs.
|
|
25
|
+
"@sphereon/ssi-sdk-ext.did-utils": "^0.28.1-feature.esm.cjs.9+71682ea",
|
|
26
|
+
"@sphereon/ssi-sdk-ext.key-utils": "^0.28.1-feature.esm.cjs.9+71682ea",
|
|
27
27
|
"@sphereon/ssi-types": " ^0.33",
|
|
28
28
|
"@stablelib/ed25519": "^1.0.3",
|
|
29
29
|
"@veramo/core": "4.2.0",
|
|
@@ -35,8 +35,8 @@
|
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
37
|
"@or13/did-jwk": "^0.0.4",
|
|
38
|
-
"@sphereon/ssi-sdk-ext.key-manager": "^0.28.1-feature.esm.cjs.
|
|
39
|
-
"@sphereon/ssi-sdk-ext.kms-local": "^0.28.1-feature.esm.cjs.
|
|
38
|
+
"@sphereon/ssi-sdk-ext.key-manager": "^0.28.1-feature.esm.cjs.9+71682ea",
|
|
39
|
+
"@sphereon/ssi-sdk-ext.kms-local": "^0.28.1-feature.esm.cjs.9+71682ea",
|
|
40
40
|
"@veramo/did-resolver": "4.2.0",
|
|
41
41
|
"@veramo/key-manager": "4.2.0",
|
|
42
42
|
"jose": "^4.14.6",
|
|
@@ -60,5 +60,5 @@
|
|
|
60
60
|
"DID",
|
|
61
61
|
"Veramo"
|
|
62
62
|
],
|
|
63
|
-
"gitHead": "
|
|
63
|
+
"gitHead": "71682ea0c528f5b32c421245c253b3bc9d6296a0"
|
|
64
64
|
}
|