@docknetwork/wallet-sdk-core 1.7.0 → 1.7.6
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/.claude/settings.local.json +12 -0
- package/lib/biometric-provider.d.ts +1 -1
- package/lib/cloud-wallet.d.ts +4 -6
- package/lib/cloud-wallet.d.ts.map +1 -1
- package/lib/cloud-wallet.js +20 -47
- package/lib/cloud-wallet.js.map +1 -1
- package/lib/credential-provider.js +2 -2
- package/lib/credentials/oidvc.js +2 -2
- package/lib/did-provider.d.ts +3 -3
- package/lib/did-provider.js +1 -1
- package/lib/ecosystem-tools.js +1 -1
- package/lib/message-provider.d.ts.map +1 -1
- package/lib/message-provider.js +31 -6
- package/lib/message-provider.js.map +1 -1
- package/lib/network-resolver.d.ts +1 -1
- package/lib/qr-handlers/builtin/index.d.ts +1 -1
- package/lib/qr-handlers/builtin/index.js +1 -1
- package/lib/qr-handlers/builtin/oid4vc-handler.d.ts +1 -1
- package/lib/qr-handlers/builtin/oid4vc-handler.js +1 -1
- package/lib/types.d.ts +5 -1
- package/lib/types.d.ts.map +1 -1
- package/lib/verification-controller.d.ts +3 -3
- package/lib/verification-controller.d.ts.map +1 -1
- package/lib/verification-controller.js +2 -2
- package/lib/verification-controller.js.map +1 -1
- package/lib/wallet-to-wallet-verification/walletToWalletVerificationProvider.js +1 -1
- package/lib/wallet-wasm.d.ts +2 -2
- package/lib/wallet-wasm.d.ts.map +1 -1
- package/lib/wallet-wasm.js +6 -7
- package/lib/wallet-wasm.js.map +1 -1
- package/lib/wallet.js +2 -2
- package/package.json +3 -3
- package/src/cloud-wallet.ts +8 -60
- package/src/message-provider.ts +29 -4
- package/src/types.ts +5 -0
- package/src/verification-controller.ts +5 -1
- package/src/wallet-wasm.ts +4 -5
- package/tsconfig.build.tsbuildinfo +1 -1
|
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.VerificationStatus = void 0;
|
|
7
7
|
exports.createVerificationController = createVerificationController;
|
|
8
8
|
const helpers_1 = require("./helpers");
|
|
9
|
-
const pex_1 = require("@docknetwork/wallet-sdk-wasm/
|
|
10
|
-
const credential_1 = require("@docknetwork/wallet-sdk-wasm/
|
|
9
|
+
const pex_1 = require("@docknetwork/wallet-sdk-wasm/lib/services/pex");
|
|
10
|
+
const credential_1 = require("@docknetwork/wallet-sdk-wasm/lib/services/credential");
|
|
11
11
|
const credential_provider_1 = require("./credential-provider");
|
|
12
12
|
const events_1 = require("events");
|
|
13
13
|
const axios_1 = __importDefault(require("axios"));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verification-controller.js","sourceRoot":"","sources":["../src/verification-controller.ts"],"names":[],"mappings":";;;;;;AAkCA,
|
|
1
|
+
{"version":3,"file":"verification-controller.js","sourceRoot":"","sources":["../src/verification-controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ exports.Events = void 0;
|
|
|
7
7
|
exports.createWalletToWalletVerificationProvider = createWalletToWalletVerificationProvider;
|
|
8
8
|
const assert_1 = __importDefault(require("assert"));
|
|
9
9
|
const message_helpers_1 = require("../messages/message-helpers");
|
|
10
|
-
const logger_1 = require("@docknetwork/wallet-sdk-data-store/
|
|
10
|
+
const logger_1 = require("@docknetwork/wallet-sdk-data-store/lib/logger");
|
|
11
11
|
const events_1 = require("events");
|
|
12
12
|
const ProofRequestTemplateType = 'ProofRequestTemplate';
|
|
13
13
|
exports.Events = {
|
package/lib/wallet-wasm.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { IWallet } from './types';
|
|
2
2
|
/**
|
|
3
|
-
* Update existing
|
|
4
|
-
* Compare connected
|
|
3
|
+
* Update existing blockchain network connection
|
|
4
|
+
* Compare connected blockchain connection with the current walle network
|
|
5
5
|
* Disconnect and Establish a new connection if the network is different
|
|
6
6
|
*/
|
|
7
7
|
export declare function handleBlockchainNetworkChange(wallet: IWallet): Promise<void>;
|
package/lib/wallet-wasm.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet-wasm.d.ts","sourceRoot":"","sources":["../src/wallet-wasm.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAgB,MAAM,SAAS,CAAC;AAMhD;;;;GAIG;AACH,wBAAsB,6BAA6B,CACjD,MAAM,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAaf;AAED,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"wallet-wasm.d.ts","sourceRoot":"","sources":["../src/wallet-wasm.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAgB,MAAM,SAAS,CAAC;AAMhD;;;;GAIG;AACH,wBAAsB,6BAA6B,CACjD,MAAM,EAAE,OAAO,GACd,OAAO,CAAC,IAAI,CAAC,CAaf;AAED,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,OAAO,iBA6DzD;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,OAAO,iBA4BnD"}
|
package/lib/wallet-wasm.js
CHANGED
|
@@ -3,21 +3,21 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.handleBlockchainNetworkChange = handleBlockchainNetworkChange;
|
|
4
4
|
exports.setBlockchainNetwork = setBlockchainNetwork;
|
|
5
5
|
exports.initWalletWasm = initWalletWasm;
|
|
6
|
-
const blockchain_1 = require("@docknetwork/wallet-sdk-wasm/
|
|
7
|
-
const util_crypto_1 = require("@docknetwork/wallet-sdk-wasm/
|
|
6
|
+
const blockchain_1 = require("@docknetwork/wallet-sdk-wasm/lib/services/blockchain");
|
|
7
|
+
const util_crypto_1 = require("@docknetwork/wallet-sdk-wasm/lib/services/util-crypto");
|
|
8
8
|
const helpers_1 = require("./helpers");
|
|
9
9
|
const types_1 = require("./types");
|
|
10
10
|
function isBlockchainNetwork(network) {
|
|
11
|
-
return !!(network.configs.
|
|
11
|
+
return !!(network.configs.cheqdApiUrl);
|
|
12
12
|
}
|
|
13
13
|
/**
|
|
14
|
-
* Update existing
|
|
15
|
-
* Compare connected
|
|
14
|
+
* Update existing blockchain network connection
|
|
15
|
+
* Compare connected blockchain connection with the current walle network
|
|
16
16
|
* Disconnect and Establish a new connection if the network is different
|
|
17
17
|
*/
|
|
18
18
|
async function handleBlockchainNetworkChange(wallet) {
|
|
19
19
|
const currentAddress = await blockchain_1.blockchainService.getAddress();
|
|
20
|
-
const networkId = wallet.dataStore.networks.find(network => network.configs.
|
|
20
|
+
const networkId = wallet.dataStore.networks.find(network => network.configs.cheqdApiUrl === currentAddress)?.id;
|
|
21
21
|
const currentNetworkId = wallet.dataStore.network?.id;
|
|
22
22
|
if (networkId === currentNetworkId) {
|
|
23
23
|
return;
|
|
@@ -46,7 +46,6 @@ async function setBlockchainNetwork(wallet) {
|
|
|
46
46
|
connectionInProgress = true;
|
|
47
47
|
blockchain_1.blockchainService
|
|
48
48
|
.init({
|
|
49
|
-
substrateUrl: networkConfigs.substrateUrl,
|
|
50
49
|
cheqdApiUrl: networkConfigs.cheqdApiUrl,
|
|
51
50
|
networkId: network.id,
|
|
52
51
|
cheqdMnemonic: cheqdMnemonicDoc.value,
|
package/lib/wallet-wasm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet-wasm.js","sourceRoot":"","sources":["../src/wallet-wasm.ts"],"names":[],"mappings":";;AAeA,sEAeC;AAED,
|
|
1
|
+
{"version":3,"file":"wallet-wasm.js","sourceRoot":"","sources":["../src/wallet-wasm.ts"],"names":[],"mappings":"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"}
|
package/lib/wallet.js
CHANGED
|
@@ -12,8 +12,8 @@ const types_1 = require("./types");
|
|
|
12
12
|
Object.defineProperty(exports, "WalletEvents", { enumerable: true, get: function () { return types_1.WalletEvents; } });
|
|
13
13
|
const wallet_wasm_1 = require("./wallet-wasm");
|
|
14
14
|
const events_1 = require("events");
|
|
15
|
-
const wallet_1 = require("@docknetwork/wallet-sdk-wasm/
|
|
16
|
-
const helpers_1 = require("@docknetwork/wallet-sdk-data-store/
|
|
15
|
+
const wallet_1 = require("@docknetwork/wallet-sdk-wasm/lib/services/wallet");
|
|
16
|
+
const helpers_1 = require("@docknetwork/wallet-sdk-data-store/lib/helpers");
|
|
17
17
|
const did_provider_1 = require("./did-provider");
|
|
18
18
|
function once(emitter, eventName) {
|
|
19
19
|
return new Promise(resolve => emitter.once(eventName, resolve));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@docknetwork/wallet-sdk-core",
|
|
3
|
-
"version": "1.7.
|
|
3
|
+
"version": "1.7.6",
|
|
4
4
|
"license": "https://github.com/docknetwork/wallet-sdk/LICENSE",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -22,13 +22,13 @@
|
|
|
22
22
|
"typeorm": "^0.3.15"
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@docknetwork/wallet-sdk-wasm": "^1.
|
|
25
|
+
"@docknetwork/wallet-sdk-wasm": "^1.7.6",
|
|
26
26
|
"futoin-hkdf": "^1.5.3"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"@babel/parser": "^7.28.4",
|
|
30
30
|
"@babel/preset-typescript": "^7.27.1",
|
|
31
|
-
"@docknetwork/wallet-sdk-data-store": "^1.
|
|
31
|
+
"@docknetwork/wallet-sdk-data-store": "^1.7.6",
|
|
32
32
|
"better-docs": "^2.7.3",
|
|
33
33
|
"jest": "29.1.0",
|
|
34
34
|
"jsdoc": "^4.0.2",
|
package/src/cloud-wallet.ts
CHANGED
|
@@ -9,16 +9,12 @@ import {
|
|
|
9
9
|
DataStoreEvents,
|
|
10
10
|
} from '@docknetwork/wallet-sdk-data-store/src/types';
|
|
11
11
|
import { logger } from '@docknetwork/wallet-sdk-data-store/src/logger';
|
|
12
|
-
import { edvService
|
|
13
|
-
import hkdf from 'futoin-hkdf';
|
|
14
|
-
import crypto from '@docknetwork/universal-wallet/crypto';
|
|
12
|
+
import { edvService } from '@docknetwork/wallet-sdk-wasm/src/services/edv';
|
|
15
13
|
import { utilCryptoService } from '@docknetwork/wallet-sdk-wasm/src/services/util-crypto';
|
|
16
14
|
|
|
17
15
|
export const SYNC_MARKER_TYPE = 'SyncMarkerDocument';
|
|
18
16
|
export const MNEMONIC_WORD_COUNT = 12;
|
|
19
17
|
export const KEY_MAPPING_TYPE = 'KeyMappingDocument';
|
|
20
|
-
export const HKDF_LENGTH = 32;
|
|
21
|
-
export const HKDF_HASH = 'SHA-256';
|
|
22
18
|
const MASTER_KEY_SUFFIX = 'master-key';
|
|
23
19
|
|
|
24
20
|
/**
|
|
@@ -31,9 +27,7 @@ export function deriveBiometricKey(
|
|
|
31
27
|
biometricData: Buffer,
|
|
32
28
|
identifier: string,
|
|
33
29
|
): Buffer {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
return hkdf(biometricData, HKDF_LENGTH, { salt, hash: HKDF_HASH });
|
|
30
|
+
return edvService.deriveBiometricKey(biometricData, identifier);
|
|
37
31
|
}
|
|
38
32
|
|
|
39
33
|
/**
|
|
@@ -61,15 +55,7 @@ export async function deriveBiometricEncryptionKey(
|
|
|
61
55
|
biometricData: Buffer,
|
|
62
56
|
identifier: string
|
|
63
57
|
): Promise<{ key: Buffer; iv: Buffer }> {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
const randomBytes = crypto.getRandomValues(new Uint8Array(16));
|
|
67
|
-
const iv = Buffer.from(randomBytes);
|
|
68
|
-
|
|
69
|
-
return {
|
|
70
|
-
key,
|
|
71
|
-
iv
|
|
72
|
-
};
|
|
58
|
+
return edvService.deriveBiometricEncryptionKey(biometricData, identifier);
|
|
73
59
|
}
|
|
74
60
|
|
|
75
61
|
/**
|
|
@@ -84,24 +70,7 @@ export async function encryptMasterKey(
|
|
|
84
70
|
encryptionKey: Buffer,
|
|
85
71
|
iv: Buffer
|
|
86
72
|
): Promise<Uint8Array> {
|
|
87
|
-
|
|
88
|
-
const ivData = new Uint8Array(iv);
|
|
89
|
-
|
|
90
|
-
const key = await crypto.subtle.importKey(
|
|
91
|
-
'raw',
|
|
92
|
-
keyData,
|
|
93
|
-
{ name: 'AES-GCM' },
|
|
94
|
-
false,
|
|
95
|
-
['encrypt']
|
|
96
|
-
);
|
|
97
|
-
|
|
98
|
-
const encryptedBuffer = await crypto.subtle.encrypt(
|
|
99
|
-
{ name: 'AES-GCM', iv: ivData },
|
|
100
|
-
key,
|
|
101
|
-
masterKey
|
|
102
|
-
);
|
|
103
|
-
|
|
104
|
-
return new Uint8Array(encryptedBuffer);
|
|
73
|
+
return edvService.encryptMasterKey(masterKey, encryptionKey, iv);
|
|
105
74
|
}
|
|
106
75
|
|
|
107
76
|
/**
|
|
@@ -116,28 +85,7 @@ export async function decryptMasterKey(
|
|
|
116
85
|
decryptionKey: Buffer,
|
|
117
86
|
iv: Buffer
|
|
118
87
|
): Promise<Uint8Array> {
|
|
119
|
-
|
|
120
|
-
const keyData = new Uint8Array(decryptionKey);
|
|
121
|
-
const ivData = new Uint8Array(iv);
|
|
122
|
-
|
|
123
|
-
const key = await crypto.subtle.importKey(
|
|
124
|
-
'raw',
|
|
125
|
-
keyData,
|
|
126
|
-
{ name: 'AES-GCM' },
|
|
127
|
-
false,
|
|
128
|
-
['decrypt']
|
|
129
|
-
);
|
|
130
|
-
|
|
131
|
-
const decryptedBuffer = await crypto.subtle.decrypt(
|
|
132
|
-
{ name: 'AES-GCM', iv: ivData },
|
|
133
|
-
key,
|
|
134
|
-
encryptedKey
|
|
135
|
-
);
|
|
136
|
-
|
|
137
|
-
return new Uint8Array(decryptedBuffer);
|
|
138
|
-
} catch (error) {
|
|
139
|
-
throw new Error('Decryption failed: Invalid key or corrupted data');
|
|
140
|
-
}
|
|
88
|
+
return edvService.decryptMasterKey(encryptedKey, decryptionKey, iv);
|
|
141
89
|
}
|
|
142
90
|
|
|
143
91
|
/**
|
|
@@ -153,14 +101,14 @@ export async function initializeKeyMappingVault(
|
|
|
153
101
|
authKey: string,
|
|
154
102
|
biometricData: Buffer,
|
|
155
103
|
identifier: string
|
|
156
|
-
): Promise<
|
|
104
|
+
): Promise<typeof edvService> {
|
|
157
105
|
const {
|
|
158
106
|
hmacKey,
|
|
159
107
|
agreementKey,
|
|
160
108
|
verificationKey
|
|
161
109
|
} = await deriveKeyMappingVaultKeys(biometricData, identifier);
|
|
162
110
|
|
|
163
|
-
const keyMappingEdvService =
|
|
111
|
+
const keyMappingEdvService = edvService;
|
|
164
112
|
await keyMappingEdvService.initialize({
|
|
165
113
|
hmacKey,
|
|
166
114
|
agreementKey,
|
|
@@ -225,7 +173,7 @@ export async function enrollUserWithBiometrics(
|
|
|
225
173
|
* @returns The decrypted master key for CloudWalletVault
|
|
226
174
|
*/
|
|
227
175
|
export async function getKeyMappingMasterKey(
|
|
228
|
-
keyMappingEdv:
|
|
176
|
+
keyMappingEdv: typeof edvService,
|
|
229
177
|
identifier: string,
|
|
230
178
|
decryptionKey: Buffer,
|
|
231
179
|
): Promise<Uint8Array> {
|
package/src/message-provider.ts
CHANGED
|
@@ -243,6 +243,8 @@ export function createMessageProvider({
|
|
|
243
243
|
}
|
|
244
244
|
|
|
245
245
|
let listenerIntervalId = null;
|
|
246
|
+
let processMessageTimeoutId = null;
|
|
247
|
+
let stopped = false;
|
|
246
248
|
|
|
247
249
|
const processMessageInterval = 3000;
|
|
248
250
|
|
|
@@ -250,7 +252,21 @@ export function createMessageProvider({
|
|
|
250
252
|
try {
|
|
251
253
|
await processDIDCommMessages();
|
|
252
254
|
} finally {
|
|
253
|
-
|
|
255
|
+
if (!stopped) {
|
|
256
|
+
processMessageTimeoutId = setTimeout(processMessageRecurrentJob, processMessageInterval);
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
function stop() {
|
|
262
|
+
stopped = true;
|
|
263
|
+
if (listenerIntervalId) {
|
|
264
|
+
clearInterval(listenerIntervalId);
|
|
265
|
+
listenerIntervalId = null;
|
|
266
|
+
}
|
|
267
|
+
if (processMessageTimeoutId) {
|
|
268
|
+
clearTimeout(processMessageTimeoutId);
|
|
269
|
+
processMessageTimeoutId = null;
|
|
254
270
|
}
|
|
255
271
|
}
|
|
256
272
|
|
|
@@ -333,12 +349,20 @@ export function createMessageProvider({
|
|
|
333
349
|
*/
|
|
334
350
|
startAutoFetch(timeout = 2000) {
|
|
335
351
|
clearInterval(listenerIntervalId);
|
|
352
|
+
stopped = false;
|
|
336
353
|
listenerIntervalId = setInterval(async () => {
|
|
337
|
-
|
|
338
|
-
|
|
354
|
+
try {
|
|
355
|
+
await fetchMessages();
|
|
356
|
+
await processDIDCommMessages();
|
|
357
|
+
} catch (err) {
|
|
358
|
+
logger.debug(`Auto-fetch error: ${err.message}`);
|
|
359
|
+
}
|
|
339
360
|
}, timeout);
|
|
340
361
|
|
|
341
|
-
return () =>
|
|
362
|
+
return () => {
|
|
363
|
+
clearInterval(listenerIntervalId);
|
|
364
|
+
listenerIntervalId = null;
|
|
365
|
+
};
|
|
342
366
|
},
|
|
343
367
|
/**
|
|
344
368
|
* Clears all cached messages from the wallet
|
|
@@ -410,5 +434,6 @@ export function createMessageProvider({
|
|
|
410
434
|
* console.log('Message marked as read');
|
|
411
435
|
*/
|
|
412
436
|
markMessageAsRead,
|
|
437
|
+
stop,
|
|
413
438
|
} as any;
|
|
414
439
|
}
|
package/src/types.ts
CHANGED
|
@@ -245,7 +245,11 @@ export function createVerificationController({
|
|
|
245
245
|
*
|
|
246
246
|
* @param presentation
|
|
247
247
|
*/
|
|
248
|
-
function evaluatePresentation(presentation) {
|
|
248
|
+
function evaluatePresentation(presentation): {
|
|
249
|
+
isValid: boolean;
|
|
250
|
+
errors: any[];
|
|
251
|
+
warnings: any[];
|
|
252
|
+
} {
|
|
249
253
|
const definition = getPresentationDefinition();
|
|
250
254
|
const result = credentialServiceRPC.evaluatePresentation({
|
|
251
255
|
presentation,
|
package/src/wallet-wasm.ts
CHANGED
|
@@ -5,12 +5,12 @@ import { captureException } from './helpers';
|
|
|
5
5
|
import { IWallet, WalletEvents } from './types';
|
|
6
6
|
|
|
7
7
|
function isBlockchainNetwork(network: Network) {
|
|
8
|
-
return !!(network.configs.
|
|
8
|
+
return !!(network.configs.cheqdApiUrl);
|
|
9
9
|
}
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
|
-
* Update existing
|
|
13
|
-
* Compare connected
|
|
12
|
+
* Update existing blockchain network connection
|
|
13
|
+
* Compare connected blockchain connection with the current walle network
|
|
14
14
|
* Disconnect and Establish a new connection if the network is different
|
|
15
15
|
*/
|
|
16
16
|
export async function handleBlockchainNetworkChange(
|
|
@@ -18,7 +18,7 @@ export async function handleBlockchainNetworkChange(
|
|
|
18
18
|
): Promise<void> {
|
|
19
19
|
const currentAddress = await blockchainService.getAddress();
|
|
20
20
|
const networkId = wallet.dataStore.networks.find(
|
|
21
|
-
network => network.configs.
|
|
21
|
+
network => network.configs.cheqdApiUrl === currentAddress,
|
|
22
22
|
)?.id;
|
|
23
23
|
const currentNetworkId = wallet.dataStore.network?.id;
|
|
24
24
|
|
|
@@ -60,7 +60,6 @@ export async function setBlockchainNetwork(wallet: IWallet) {
|
|
|
60
60
|
|
|
61
61
|
blockchainService
|
|
62
62
|
.init({
|
|
63
|
-
substrateUrl: networkConfigs.substrateUrl,
|
|
64
63
|
cheqdApiUrl: networkConfigs.cheqdApiUrl,
|
|
65
64
|
networkId: network.id,
|
|
66
65
|
cheqdMnemonic: cheqdMnemonicDoc.value,
|