@matter/protocol 0.14.1-alpha.0-20250607-a93593303 → 0.15.0-alpha.0-20250613-a55f991d4
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/cjs/certificate/AttestationCertificateManager.js +2 -2
- package/dist/cjs/certificate/AttestationCertificateManager.js.map +1 -1
- package/dist/cjs/certificate/CertificateAuthority.d.ts +2 -2
- package/dist/cjs/certificate/CertificateAuthority.d.ts.map +1 -1
- package/dist/cjs/certificate/CertificateAuthority.js +5 -5
- package/dist/cjs/certificate/CertificateAuthority.js.map +1 -1
- package/dist/cjs/certificate/CertificateManager.d.ts +1 -1
- package/dist/cjs/certificate/CertificateManager.d.ts.map +1 -1
- package/dist/cjs/certificate/CertificateManager.js +21 -10
- package/dist/cjs/certificate/CertificateManager.js.map +1 -1
- package/dist/cjs/certificate/CertificationDeclarationManager.d.ts +1 -1
- package/dist/cjs/certificate/DeviceCertification.d.ts +1 -1
- package/dist/cjs/certificate/DeviceCertification.d.ts.map +1 -1
- package/dist/cjs/certificate/DeviceCertification.js +5 -3
- package/dist/cjs/certificate/DeviceCertification.js.map +1 -1
- package/dist/cjs/codec/BtpCodec.d.ts +1 -1
- package/dist/cjs/codec/MessageCodec.d.ts +1 -1
- package/dist/cjs/events/OccurrenceManager.d.ts +1 -0
- package/dist/cjs/events/OccurrenceManager.d.ts.map +1 -1
- package/dist/cjs/events/OccurrenceManager.js +14 -8
- package/dist/cjs/events/OccurrenceManager.js.map +1 -1
- package/dist/cjs/fabric/Fabric.d.ts +8 -6
- package/dist/cjs/fabric/Fabric.d.ts.map +1 -1
- package/dist/cjs/fabric/Fabric.js +22 -15
- package/dist/cjs/fabric/Fabric.js.map +1 -1
- package/dist/cjs/fabric/FabricAuthority.d.ts +4 -0
- package/dist/cjs/fabric/FabricAuthority.d.ts.map +1 -1
- package/dist/cjs/fabric/FabricAuthority.js +6 -0
- package/dist/cjs/fabric/FabricAuthority.js.map +1 -1
- package/dist/cjs/fabric/FabricManager.d.ts.map +1 -1
- package/dist/cjs/fabric/FabricManager.js +9 -2
- package/dist/cjs/fabric/FabricManager.js.map +1 -1
- package/dist/cjs/fabric/TestFabric.d.ts +30 -0
- package/dist/cjs/fabric/TestFabric.d.ts.map +1 -0
- package/dist/cjs/fabric/TestFabric.js +70 -0
- package/dist/cjs/fabric/TestFabric.js.map +6 -0
- package/dist/cjs/fabric/index.d.ts +1 -0
- package/dist/cjs/fabric/index.d.ts.map +1 -1
- package/dist/cjs/fabric/index.js +1 -0
- package/dist/cjs/fabric/index.js.map +1 -1
- package/dist/cjs/groups/{FabricGroupsManager.d.ts → FabricGroups.d.ts} +2 -2
- package/dist/cjs/groups/FabricGroups.d.ts.map +1 -0
- package/dist/cjs/groups/{FabricGroupsManager.js → FabricGroups.js} +9 -9
- package/dist/cjs/groups/FabricGroups.js.map +6 -0
- package/dist/cjs/groups/KeySets.js +1 -1
- package/dist/cjs/groups/KeySets.js.map +1 -1
- package/dist/cjs/groups/index.d.ts +1 -1
- package/dist/cjs/groups/index.d.ts.map +1 -1
- package/dist/cjs/groups/index.js +1 -1
- package/dist/cjs/groups/index.js.map +1 -1
- package/dist/cjs/interaction/{AccessControlManager.d.ts → FabricAccessControl.d.ts} +12 -7
- package/dist/cjs/interaction/FabricAccessControl.d.ts.map +1 -0
- package/dist/cjs/interaction/{AccessControlManager.js → FabricAccessControl.js} +46 -21
- package/dist/cjs/interaction/FabricAccessControl.js.map +6 -0
- package/dist/cjs/interaction/index.d.ts +1 -1
- package/dist/cjs/interaction/index.d.ts.map +1 -1
- package/dist/cjs/interaction/index.js +1 -1
- package/dist/cjs/interaction/index.js.map +1 -1
- package/dist/cjs/mdns/MdnsScanner.d.ts +1 -1
- package/dist/cjs/mdns/MdnsScanner.d.ts.map +1 -1
- package/dist/cjs/mdns/MdnsScanner.js +2 -6
- package/dist/cjs/mdns/MdnsScanner.js.map +1 -1
- package/dist/cjs/peer/ControllerCommissioningFlow.d.ts.map +1 -1
- package/dist/cjs/peer/ControllerCommissioningFlow.js +2 -4
- package/dist/cjs/peer/ControllerCommissioningFlow.js.map +1 -1
- package/dist/cjs/protocol/DeviceCommissioner.js +1 -1
- package/dist/cjs/protocol/DeviceCommissioner.js.map +1 -1
- package/dist/cjs/protocol/MessageExchange.d.ts +6 -0
- package/dist/cjs/protocol/MessageExchange.d.ts.map +1 -1
- package/dist/cjs/protocol/MessageExchange.js +13 -0
- package/dist/cjs/protocol/MessageExchange.js.map +1 -1
- package/dist/cjs/securechannel/SecureChannelStatusMessageSchema.d.ts +1 -1
- package/dist/cjs/session/NodeSession.js +1 -1
- package/dist/cjs/session/Session.d.ts +1 -1
- package/dist/cjs/session/SessionManager.d.ts.map +1 -1
- package/dist/cjs/session/SessionManager.js +1 -0
- package/dist/cjs/session/SessionManager.js.map +1 -1
- package/dist/cjs/session/case/CaseClient.d.ts.map +1 -1
- package/dist/cjs/session/case/CaseClient.js +34 -30
- package/dist/cjs/session/case/CaseClient.js.map +1 -1
- package/dist/cjs/session/case/CaseMessages.d.ts +8 -8
- package/dist/cjs/session/case/CaseMessages.js +8 -8
- package/dist/cjs/session/case/CaseMessages.js.map +1 -1
- package/dist/cjs/session/case/CaseServer.d.ts.map +1 -1
- package/dist/cjs/session/case/CaseServer.js +26 -23
- package/dist/cjs/session/case/CaseServer.js.map +1 -1
- package/dist/cjs/session/pase/PaseClient.d.ts.map +1 -1
- package/dist/cjs/session/pase/PaseClient.js +4 -1
- package/dist/cjs/session/pase/PaseClient.js.map +1 -1
- package/dist/cjs/session/pase/PaseServer.d.ts.map +1 -1
- package/dist/cjs/session/pase/PaseServer.js +4 -1
- package/dist/cjs/session/pase/PaseServer.js.map +1 -1
- package/dist/esm/certificate/AttestationCertificateManager.js +2 -2
- package/dist/esm/certificate/AttestationCertificateManager.js.map +1 -1
- package/dist/esm/certificate/CertificateAuthority.d.ts +2 -2
- package/dist/esm/certificate/CertificateAuthority.d.ts.map +1 -1
- package/dist/esm/certificate/CertificateAuthority.js +5 -5
- package/dist/esm/certificate/CertificateAuthority.js.map +1 -1
- package/dist/esm/certificate/CertificateManager.d.ts +1 -1
- package/dist/esm/certificate/CertificateManager.d.ts.map +1 -1
- package/dist/esm/certificate/CertificateManager.js +22 -11
- package/dist/esm/certificate/CertificateManager.js.map +1 -1
- package/dist/esm/certificate/CertificationDeclarationManager.d.ts +1 -1
- package/dist/esm/certificate/DeviceCertification.d.ts +1 -1
- package/dist/esm/certificate/DeviceCertification.d.ts.map +1 -1
- package/dist/esm/certificate/DeviceCertification.js +5 -3
- package/dist/esm/certificate/DeviceCertification.js.map +1 -1
- package/dist/esm/codec/BtpCodec.d.ts +1 -1
- package/dist/esm/codec/MessageCodec.d.ts +1 -1
- package/dist/esm/events/OccurrenceManager.d.ts +1 -0
- package/dist/esm/events/OccurrenceManager.d.ts.map +1 -1
- package/dist/esm/events/OccurrenceManager.js +14 -8
- package/dist/esm/events/OccurrenceManager.js.map +1 -1
- package/dist/esm/fabric/Fabric.d.ts +8 -6
- package/dist/esm/fabric/Fabric.d.ts.map +1 -1
- package/dist/esm/fabric/Fabric.js +22 -14
- package/dist/esm/fabric/Fabric.js.map +1 -1
- package/dist/esm/fabric/FabricAuthority.d.ts +4 -0
- package/dist/esm/fabric/FabricAuthority.d.ts.map +1 -1
- package/dist/esm/fabric/FabricAuthority.js +6 -0
- package/dist/esm/fabric/FabricAuthority.js.map +1 -1
- package/dist/esm/fabric/FabricManager.d.ts.map +1 -1
- package/dist/esm/fabric/FabricManager.js +9 -2
- package/dist/esm/fabric/FabricManager.js.map +1 -1
- package/dist/esm/fabric/TestFabric.d.ts +30 -0
- package/dist/esm/fabric/TestFabric.d.ts.map +1 -0
- package/dist/esm/fabric/TestFabric.js +50 -0
- package/dist/esm/fabric/TestFabric.js.map +6 -0
- package/dist/esm/fabric/index.d.ts +1 -0
- package/dist/esm/fabric/index.d.ts.map +1 -1
- package/dist/esm/fabric/index.js +1 -0
- package/dist/esm/fabric/index.js.map +1 -1
- package/dist/esm/groups/{FabricGroupsManager.d.ts → FabricGroups.d.ts} +2 -2
- package/dist/esm/groups/FabricGroups.d.ts.map +1 -0
- package/dist/esm/groups/{FabricGroupsManager.js → FabricGroups.js} +6 -6
- package/dist/esm/groups/FabricGroups.js.map +6 -0
- package/dist/esm/groups/KeySets.js +1 -1
- package/dist/esm/groups/KeySets.js.map +1 -1
- package/dist/esm/groups/index.d.ts +1 -1
- package/dist/esm/groups/index.d.ts.map +1 -1
- package/dist/esm/groups/index.js +1 -1
- package/dist/esm/interaction/{AccessControlManager.d.ts → FabricAccessControl.d.ts} +12 -7
- package/dist/esm/interaction/FabricAccessControl.d.ts.map +1 -0
- package/dist/esm/interaction/{AccessControlManager.js → FabricAccessControl.js} +44 -19
- package/dist/esm/interaction/FabricAccessControl.js.map +6 -0
- package/dist/esm/interaction/index.d.ts +1 -1
- package/dist/esm/interaction/index.d.ts.map +1 -1
- package/dist/esm/interaction/index.js +1 -1
- package/dist/esm/mdns/MdnsScanner.d.ts +1 -1
- package/dist/esm/mdns/MdnsScanner.d.ts.map +1 -1
- package/dist/esm/mdns/MdnsScanner.js +2 -6
- package/dist/esm/mdns/MdnsScanner.js.map +1 -1
- package/dist/esm/peer/ControllerCommissioningFlow.d.ts.map +1 -1
- package/dist/esm/peer/ControllerCommissioningFlow.js +2 -4
- package/dist/esm/peer/ControllerCommissioningFlow.js.map +1 -1
- package/dist/esm/protocol/DeviceCommissioner.js +1 -1
- package/dist/esm/protocol/DeviceCommissioner.js.map +1 -1
- package/dist/esm/protocol/MessageExchange.d.ts +6 -0
- package/dist/esm/protocol/MessageExchange.d.ts.map +1 -1
- package/dist/esm/protocol/MessageExchange.js +13 -0
- package/dist/esm/protocol/MessageExchange.js.map +1 -1
- package/dist/esm/securechannel/SecureChannelStatusMessageSchema.d.ts +1 -1
- package/dist/esm/session/NodeSession.js +1 -1
- package/dist/esm/session/Session.d.ts +1 -1
- package/dist/esm/session/SessionManager.d.ts.map +1 -1
- package/dist/esm/session/SessionManager.js +1 -0
- package/dist/esm/session/SessionManager.js.map +1 -1
- package/dist/esm/session/case/CaseClient.d.ts.map +1 -1
- package/dist/esm/session/case/CaseClient.js +34 -30
- package/dist/esm/session/case/CaseClient.js.map +1 -1
- package/dist/esm/session/case/CaseMessages.d.ts +8 -8
- package/dist/esm/session/case/CaseMessages.js +8 -8
- package/dist/esm/session/case/CaseMessages.js.map +1 -1
- package/dist/esm/session/case/CaseServer.d.ts.map +1 -1
- package/dist/esm/session/case/CaseServer.js +26 -23
- package/dist/esm/session/case/CaseServer.js.map +1 -1
- package/dist/esm/session/pase/PaseClient.d.ts.map +1 -1
- package/dist/esm/session/pase/PaseClient.js +4 -1
- package/dist/esm/session/pase/PaseClient.js.map +1 -1
- package/dist/esm/session/pase/PaseServer.d.ts.map +1 -1
- package/dist/esm/session/pase/PaseServer.js +4 -1
- package/dist/esm/session/pase/PaseServer.js.map +1 -1
- package/package.json +6 -6
- package/src/certificate/AttestationCertificateManager.ts +2 -2
- package/src/certificate/CertificateAuthority.ts +7 -7
- package/src/certificate/CertificateManager.ts +22 -11
- package/src/certificate/DeviceCertification.ts +5 -3
- package/src/events/OccurrenceManager.ts +16 -9
- package/src/fabric/Fabric.ts +24 -15
- package/src/fabric/FabricAuthority.ts +7 -0
- package/src/fabric/FabricManager.ts +9 -2
- package/src/fabric/TestFabric.ts +73 -0
- package/src/fabric/index.ts +1 -0
- package/src/groups/{FabricGroupsManager.ts → FabricGroups.ts} +4 -4
- package/src/groups/KeySets.ts +1 -1
- package/src/groups/index.ts +1 -1
- package/src/interaction/{AccessControlManager.ts → FabricAccessControl.ts} +61 -25
- package/src/interaction/index.ts +1 -1
- package/src/mdns/MdnsScanner.ts +2 -6
- package/src/peer/ControllerCommissioningFlow.ts +2 -4
- package/src/protocol/DeviceCommissioner.ts +1 -1
- package/src/protocol/MessageExchange.ts +14 -0
- package/src/session/NodeSession.ts +1 -1
- package/src/session/SessionManager.ts +1 -0
- package/src/session/case/CaseClient.ts +34 -30
- package/src/session/case/CaseMessages.ts +8 -8
- package/src/session/case/CaseServer.ts +27 -23
- package/src/session/pase/PaseClient.ts +4 -1
- package/src/session/pase/PaseServer.ts +4 -1
- package/dist/cjs/groups/FabricGroupsManager.d.ts.map +0 -1
- package/dist/cjs/groups/FabricGroupsManager.js.map +0 -6
- package/dist/cjs/interaction/AccessControlManager.d.ts.map +0 -1
- package/dist/cjs/interaction/AccessControlManager.js.map +0 -6
- package/dist/esm/groups/FabricGroupsManager.d.ts.map +0 -1
- package/dist/esm/groups/FabricGroupsManager.js.map +0 -6
- package/dist/esm/interaction/AccessControlManager.d.ts.map +0 -1
- package/dist/esm/interaction/AccessControlManager.js.map +0 -6
|
@@ -23,7 +23,6 @@ import {
|
|
|
23
23
|
const logger = Logger.get("OccurrenceManager");
|
|
24
24
|
class OccurrenceManager {
|
|
25
25
|
#store;
|
|
26
|
-
#storedEventCount = 0;
|
|
27
26
|
#bufferConfig;
|
|
28
27
|
#cull;
|
|
29
28
|
#iteratingValuesInProgress = false;
|
|
@@ -52,7 +51,6 @@ class OccurrenceManager {
|
|
|
52
51
|
this.#bufferConfig = bufferConfig;
|
|
53
52
|
this.#construction = Construction(this, () => {
|
|
54
53
|
return MaybePromise.then(this.#store.load(), (index) => {
|
|
55
|
-
this.#storedEventCount = index.length;
|
|
56
54
|
index.sort(
|
|
57
55
|
// sort that way because Bigint & Number mix
|
|
58
56
|
({ number: numberA }, { number: numberB }) => numberA < numberB ? -1 : numberA > numberB ? 1 : 0
|
|
@@ -70,7 +68,6 @@ class OccurrenceManager {
|
|
|
70
68
|
async clear() {
|
|
71
69
|
await this.construction;
|
|
72
70
|
await this.#store.clear();
|
|
73
|
-
this.#storedEventCount = 0;
|
|
74
71
|
this.#occurrences.length = 0;
|
|
75
72
|
}
|
|
76
73
|
/**
|
|
@@ -216,8 +213,7 @@ class OccurrenceManager {
|
|
|
216
213
|
return MaybePromise.then(this.#store.add(occurrence), (entry) => {
|
|
217
214
|
logger.debug(`Recorded event #${entry.number}: ${Diagnostic.json(occurrence)}`);
|
|
218
215
|
this.#occurrences.push(entry);
|
|
219
|
-
this.#
|
|
220
|
-
if (this.#storedEventCount > this.#bufferConfig.maxEventAllowance) {
|
|
216
|
+
if (this.#occurrences.length > this.#bufferConfig.maxEventAllowance) {
|
|
221
217
|
this.#startCull();
|
|
222
218
|
}
|
|
223
219
|
const numberedOccurrence = {
|
|
@@ -228,6 +224,17 @@ class OccurrenceManager {
|
|
|
228
224
|
return numberedOccurrence;
|
|
229
225
|
});
|
|
230
226
|
}
|
|
227
|
+
remove(number) {
|
|
228
|
+
const index = this.#occurrences.findIndex((entry) => entry.number === number);
|
|
229
|
+
if (index === -1) {
|
|
230
|
+
return;
|
|
231
|
+
}
|
|
232
|
+
this.#occurrences.splice(index, 1);
|
|
233
|
+
if (this.#cull) {
|
|
234
|
+
return this.#cull.then(() => this.#store.delete(number));
|
|
235
|
+
}
|
|
236
|
+
return this.#store.delete(number);
|
|
237
|
+
}
|
|
231
238
|
#startCull() {
|
|
232
239
|
if (this.#cull || this.#iteratingValuesInProgress) {
|
|
233
240
|
return;
|
|
@@ -238,7 +245,7 @@ class OccurrenceManager {
|
|
|
238
245
|
}
|
|
239
246
|
}
|
|
240
247
|
#dropOldOccurrences() {
|
|
241
|
-
let toDelete = this.#
|
|
248
|
+
let toDelete = this.#occurrences.length - this.#bufferConfig.minEventAllowance;
|
|
242
249
|
if (toDelete <= 0) {
|
|
243
250
|
return;
|
|
244
251
|
}
|
|
@@ -271,7 +278,7 @@ class OccurrenceManager {
|
|
|
271
278
|
}
|
|
272
279
|
const occurrences = this.#occurrences;
|
|
273
280
|
for (const priority of [EventPriority.Debug, EventPriority.Info, EventPriority.Critical]) {
|
|
274
|
-
const checkUpTo = priority === EventPriority.Critical ? this.#
|
|
281
|
+
const checkUpTo = priority === EventPriority.Critical ? this.#occurrences.length : prioData[priority].minPosition;
|
|
275
282
|
if (checkUpTo === -1) {
|
|
276
283
|
continue;
|
|
277
284
|
}
|
|
@@ -295,7 +302,6 @@ class OccurrenceManager {
|
|
|
295
302
|
}
|
|
296
303
|
}
|
|
297
304
|
this.#occurrences = occurrences.filter((entry) => entry);
|
|
298
|
-
this.#storedEventCount = this.#occurrences.length;
|
|
299
305
|
if (asyncDrops.length) {
|
|
300
306
|
return MatterAggregateError.allSettled(asyncDrops, "Error dropping occurrences").then(() => {
|
|
301
307
|
}).catch((error) => logger.error(error));
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/events/OccurrenceManager.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;AAAA,EACI;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACG;AACP;AAAA,EACI;AAAA,EACA;AAAA,EAEA;AAAA,OAIG;AAIP,MAAM,SAAS,OAAO,IAAI,mBAAmB;AAmBtC,MAAM,kBAAkB;AAAA,EAC3B;AAAA,EACA
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["occurrence", "occurrences", "OccurrenceManager"]
|
|
6
6
|
}
|
|
@@ -4,7 +4,8 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { BinaryKeyPair, Key, MatterError, MaybePromise, PrivateKey, StorageContext } from "#general";
|
|
7
|
-
import {
|
|
7
|
+
import { FabricGroups } from "#groups/FabricGroups.js";
|
|
8
|
+
import { FabricAccessControl } from "#interaction/FabricAccessControl.js";
|
|
8
9
|
import { PeerAddress } from "#peer/PeerAddress.js";
|
|
9
10
|
import { Session } from "#session/Session.js";
|
|
10
11
|
import { FabricId, FabricIndex, GroupId, NodeId, VendorId } from "#types";
|
|
@@ -38,20 +39,21 @@ export declare class Fabric {
|
|
|
38
39
|
setLabel(label: string): Promise<void>;
|
|
39
40
|
set storage(storage: StorageContext);
|
|
40
41
|
get storage(): StorageContext | undefined;
|
|
41
|
-
get groups():
|
|
42
|
+
get groups(): FabricGroups;
|
|
43
|
+
get acl(): FabricAccessControl;
|
|
42
44
|
get publicKey(): Uint8Array<ArrayBufferLike>;
|
|
43
45
|
sign(data: Uint8Array): MaybePromise<Uint8Array<ArrayBufferLike>>;
|
|
44
46
|
verifyCredentials(operationalCert: Uint8Array, intermediateCACert?: Uint8Array): Promise<void>;
|
|
45
47
|
matchesFabricIdAndRootPublicKey(fabricId: FabricId, rootPublicKey: Uint8Array): boolean;
|
|
46
48
|
matchesKeyPair(keyPair: Key): boolean;
|
|
47
49
|
/**
|
|
48
|
-
* Returns the destination IDs for a given nodeId, random value and optional groupId.
|
|
49
|
-
*
|
|
50
|
+
* Returns the destination IDs for a given nodeId, random value and optional groupId. When groupId is provided, it
|
|
51
|
+
* returns the time-wise valid operational keys for that groupId.
|
|
50
52
|
*/
|
|
51
53
|
currentDestinationIdFor(nodeId: NodeId, random: Uint8Array): Promise<Uint8Array<ArrayBufferLike>>;
|
|
52
54
|
/**
|
|
53
|
-
* Returns the destination IDs for a given nodeId, random value and optional groupId.
|
|
54
|
-
*
|
|
55
|
+
* Returns the destination IDs for a given nodeId, random value and optional groupId. When groupId is provided, it
|
|
56
|
+
* returns all operational keys for that groupId.
|
|
55
57
|
*/
|
|
56
58
|
destinationIdsFor(nodeId: NodeId, random: Uint8Array): Promise<Uint8Array<ArrayBufferLike>[]>;
|
|
57
59
|
addSession(session: Session): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Fabric.d.ts","sourceRoot":"","sources":["../../../src/fabric/Fabric.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,EACH,aAAa,
|
|
1
|
+
{"version":3,"file":"Fabric.d.ts","sourceRoot":"","sources":["../../../src/fabric/Fabric.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,6 +13,7 @@ import {
|
|
|
13
13
|
Bytes,
|
|
14
14
|
Crypto,
|
|
15
15
|
DataWriter,
|
|
16
|
+
Diagnostic,
|
|
16
17
|
Endian,
|
|
17
18
|
ImplementationError,
|
|
18
19
|
InternalError,
|
|
@@ -21,7 +22,8 @@ import {
|
|
|
21
22
|
MatterFlowError,
|
|
22
23
|
PrivateKey
|
|
23
24
|
} from "#general";
|
|
24
|
-
import {
|
|
25
|
+
import { FabricGroups, GROUP_SECURITY_INFO } from "#groups/FabricGroups.js";
|
|
26
|
+
import { FabricAccessControl } from "#interaction/FabricAccessControl.js";
|
|
25
27
|
import { PeerAddress } from "#peer/PeerAddress.js";
|
|
26
28
|
import { CaseAuthenticatedTag, FabricId, GroupId, NodeId } from "#types";
|
|
27
29
|
const logger = Logger.get("Fabric");
|
|
@@ -44,6 +46,7 @@ class Fabric {
|
|
|
44
46
|
#keyPair;
|
|
45
47
|
#sessions = /* @__PURE__ */ new Set();
|
|
46
48
|
#groupManager;
|
|
49
|
+
#aclManager;
|
|
47
50
|
#label;
|
|
48
51
|
#removeCallbacks = new Array();
|
|
49
52
|
#persistCallback;
|
|
@@ -63,7 +66,8 @@ class Fabric {
|
|
|
63
66
|
this.operationalCert = config.operationalCert;
|
|
64
67
|
this.#label = config.label;
|
|
65
68
|
this.#keyPair = PrivateKey(config.keyPair);
|
|
66
|
-
this.#
|
|
69
|
+
this.#aclManager = new FabricAccessControl(this);
|
|
70
|
+
this.#groupManager = new FabricGroups(this);
|
|
67
71
|
}
|
|
68
72
|
get config() {
|
|
69
73
|
return {
|
|
@@ -106,11 +110,14 @@ class Fabric {
|
|
|
106
110
|
get groups() {
|
|
107
111
|
return this.#groupManager;
|
|
108
112
|
}
|
|
113
|
+
get acl() {
|
|
114
|
+
return this.#aclManager;
|
|
115
|
+
}
|
|
109
116
|
get publicKey() {
|
|
110
117
|
return this.#keyPair.publicKey;
|
|
111
118
|
}
|
|
112
119
|
sign(data) {
|
|
113
|
-
return Crypto.
|
|
120
|
+
return Crypto.signEcdsa(this.#keyPair, data);
|
|
114
121
|
}
|
|
115
122
|
async verifyCredentials(operationalCert, intermediateCACert) {
|
|
116
123
|
const rootCert = TlvRootCertificate.decode(this.rootCert);
|
|
@@ -136,19 +143,19 @@ class Fabric {
|
|
|
136
143
|
return writer.toByteArray();
|
|
137
144
|
}
|
|
138
145
|
/**
|
|
139
|
-
* Returns the destination IDs for a given nodeId, random value and optional groupId.
|
|
140
|
-
*
|
|
146
|
+
* Returns the destination IDs for a given nodeId, random value and optional groupId. When groupId is provided, it
|
|
147
|
+
* returns the time-wise valid operational keys for that groupId.
|
|
141
148
|
*/
|
|
142
149
|
async currentDestinationIdFor(nodeId, random) {
|
|
143
|
-
return await Crypto.
|
|
150
|
+
return await Crypto.signHmac(this.groups.keySets.currentKeyForId(0).key, this.#generateSalt(nodeId, random));
|
|
144
151
|
}
|
|
145
152
|
/**
|
|
146
|
-
* Returns the destination IDs for a given nodeId, random value and optional groupId.
|
|
147
|
-
*
|
|
153
|
+
* Returns the destination IDs for a given nodeId, random value and optional groupId. When groupId is provided, it
|
|
154
|
+
* returns all operational keys for that groupId.
|
|
148
155
|
*/
|
|
149
156
|
async destinationIdsFor(nodeId, random) {
|
|
150
157
|
const salt = this.#generateSalt(nodeId, random);
|
|
151
|
-
const destinationIds = this.groups.keySets.allKeysForId(0).map(({ key }) => Crypto.
|
|
158
|
+
const destinationIds = this.groups.keySets.allKeysForId(0).map(({ key }) => Crypto.signHmac(key, salt));
|
|
152
159
|
return await Promise.all(destinationIds);
|
|
153
160
|
}
|
|
154
161
|
addSession(session) {
|
|
@@ -245,16 +252,17 @@ class FabricBuilder {
|
|
|
245
252
|
ellipticCurvePublicKey
|
|
246
253
|
} = TlvOperationalCertificate.decode(operationalCert);
|
|
247
254
|
logger.debug(
|
|
248
|
-
|
|
255
|
+
"Installing operational certificate",
|
|
256
|
+
Diagnostic.dict({ nodeId, fabricId, caseAuthenticatedTags })
|
|
249
257
|
);
|
|
250
258
|
if (caseAuthenticatedTags !== void 0) {
|
|
251
259
|
CaseAuthenticatedTag.validateNocTagList(caseAuthenticatedTags);
|
|
252
260
|
}
|
|
253
261
|
if (!Bytes.areEqual(ellipticCurvePublicKey, this.#keyPair.publicKey)) {
|
|
254
|
-
throw new PublicKeyError("Operational
|
|
262
|
+
throw new PublicKeyError("Operational certificate does not match public key");
|
|
255
263
|
}
|
|
256
264
|
if (this.#rootCert === void 0) {
|
|
257
|
-
throw new MatterFlowError("Root
|
|
265
|
+
throw new MatterFlowError("Root certificate needs to be set first");
|
|
258
266
|
}
|
|
259
267
|
const rootCert = TlvRootCertificate.decode(this.#rootCert);
|
|
260
268
|
const nocCert = TlvOperationalCertificate.decode(operationalCert);
|
|
@@ -323,7 +331,7 @@ class FabricBuilder {
|
|
|
323
331
|
this.#fabricIndex = fabricIndex;
|
|
324
332
|
const saltWriter = new DataWriter();
|
|
325
333
|
saltWriter.writeUInt64(this.#fabricId);
|
|
326
|
-
const operationalId = await Crypto.
|
|
334
|
+
const operationalId = await Crypto.createHkdfKey(
|
|
327
335
|
this.#rootPublicKey.slice(1),
|
|
328
336
|
saltWriter.toByteArray(),
|
|
329
337
|
COMPRESSED_FABRIC_ID_INFO,
|
|
@@ -341,7 +349,7 @@ class FabricBuilder {
|
|
|
341
349
|
rootCert: this.#rootCert,
|
|
342
350
|
identityProtectionKey: this.#identityProtectionKey,
|
|
343
351
|
// Epoch Key
|
|
344
|
-
operationalIdentityProtectionKey: await Crypto.
|
|
352
|
+
operationalIdentityProtectionKey: await Crypto.createHkdfKey(
|
|
345
353
|
this.#identityProtectionKey,
|
|
346
354
|
operationalId,
|
|
347
355
|
GROUP_SECURITY_INFO
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/fabric/Fabric.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA;AAAA,EACI;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACG;AACP;AAAA,EAEI;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,OAEG;AACP,SAAS,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -40,6 +40,10 @@ export declare const DEFAULT_FABRIC_ID: FabricId;
|
|
|
40
40
|
export declare class FabricAuthority {
|
|
41
41
|
#private;
|
|
42
42
|
constructor(context: FabricAuthorityContext);
|
|
43
|
+
/**
|
|
44
|
+
* Access the certificate authority.
|
|
45
|
+
*/
|
|
46
|
+
get ca(): CertificateAuthority;
|
|
43
47
|
/**
|
|
44
48
|
* Obtain the default fabric for this authority.
|
|
45
49
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FabricAuthority.d.ts","sourceRoot":"","sources":["../../../src/fabric/FabricAuthority.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAIH,WAAW,EACX,aAAa,EAGhB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,WAAW,EAAU,QAAQ,EAAE,MAAM,QAAQ,CAAC;AACvF,OAAO,EAAE,MAAM,EAAiB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAInD;;GAEG;AACH,UAAU,4BAA4B;IAClC,aAAa,CAAC,EAAE,QAAQ,CAAC;IACzB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,qBAAqB,CAAC,EAAE,oBAAoB,EAAE,CAAC;IAC/C,gBAAgB,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,qBAAa,oCAAqC,YAAW,4BAA4B;IACrF,IAAI,gBAAgB,IAAI,MAAM,CAE7B;CACJ;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC,EAAE,EAAE,oBAAoB,CAAC;IACzB,OAAO,EAAE,aAAa,CAAC;IACvB,MAAM,EAAE,4BAA4B,CAAC;CACxC;AAED,eAAO,MAAM,uBAAuB,UAAmB,CAAC;AACxD,eAAO,MAAM,iBAAiB,UAAc,CAAC;AAE7C;;GAEG;AACH,qBAAa,eAAe;;gBAKZ,OAAO,EAAE,sBAAsB;IAM3C;;OAEG;IACG,aAAa;IAcnB;;OAEG;IACH,IAAI,OAAO,aAEV;IAED;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM;IAI3B;;OAEG;IACG,YAAY;IA0ClB,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,WAAW;CASjD"}
|
|
1
|
+
{"version":3,"file":"FabricAuthority.d.ts","sourceRoot":"","sources":["../../../src/fabric/FabricAuthority.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAIH,WAAW,EACX,aAAa,EAGhB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,WAAW,EAAU,QAAQ,EAAE,MAAM,QAAQ,CAAC;AACvF,OAAO,EAAE,MAAM,EAAiB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAInD;;GAEG;AACH,UAAU,4BAA4B;IAClC,aAAa,CAAC,EAAE,QAAQ,CAAC;IACzB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,qBAAqB,CAAC,EAAE,oBAAoB,EAAE,CAAC;IAC/C,gBAAgB,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,qBAAa,oCAAqC,YAAW,4BAA4B;IACrF,IAAI,gBAAgB,IAAI,MAAM,CAE7B;CACJ;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC,EAAE,EAAE,oBAAoB,CAAC;IACzB,OAAO,EAAE,aAAa,CAAC;IACvB,MAAM,EAAE,4BAA4B,CAAC;CACxC;AAED,eAAO,MAAM,uBAAuB,UAAmB,CAAC;AACxD,eAAO,MAAM,iBAAiB,UAAc,CAAC;AAE7C;;GAEG;AACH,qBAAa,eAAe;;gBAKZ,OAAO,EAAE,sBAAsB;IAM3C;;OAEG;IACH,IAAI,EAAE,yBAEL;IAED;;OAEG;IACG,aAAa;IAcnB;;OAEG;IACH,IAAI,OAAO,aAEV;IAED;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM;IAI3B;;OAEG;IACG,YAAY;IA0ClB,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,WAAW;CASjD"}
|
|
@@ -32,6 +32,12 @@ class FabricAuthority {
|
|
|
32
32
|
this.#fabrics = context.fabrics;
|
|
33
33
|
this.#config = context.config;
|
|
34
34
|
}
|
|
35
|
+
/**
|
|
36
|
+
* Access the certificate authority.
|
|
37
|
+
*/
|
|
38
|
+
get ca() {
|
|
39
|
+
return this.#ca;
|
|
40
|
+
}
|
|
35
41
|
/**
|
|
36
42
|
* Obtain the default fabric for this authority.
|
|
37
43
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/fabric/FabricAuthority.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,4BAA4B;AACrC;AAAA,EACI;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,OACG;AACP,SAA+B,UAAuB,QAAQ,gBAAgB;AAC9E,SAAiB,qBAAqB;AACtC,SAAS,qBAAqB;AAE9B,MAAM,SAAS,OAAO,IAAI,iBAAiB;AAgBpC,MAAM,qCAA6E;AAAA,EACtF,IAAI,mBAA2B;AAC3B,UAAM,IAAI,oBAAoB,0EAA0E;AAAA,EAC5G;AACJ;AAWO,MAAM,0BAA0B,SAAS,KAAM;AAC/C,MAAM,oBAAoB,SAAS,CAAC;AAKpC,MAAM,gBAAgB;AAAA,EACzB;AAAA,EACA;AAAA,EACA;AAAA,EAEA,YAAY,SAAiC;AACzC,SAAK,MAAM,QAAQ;AACnB,SAAK,WAAW,QAAQ;AACxB,SAAK,UAAU,QAAQ;AAAA,EAC3B;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,gBAAgB;AAElB,UAAM,SAAS,KAAK,QAAQ,CAAC;AAC7B,QAAI,WAAW,QAAW;AACtB,UAAI,OAAO,UAAU,KAAK,QAAQ,kBAAkB;AAChD,cAAM,OAAO,SAAS,KAAK,QAAQ,gBAAgB;AAAA,MACvD;AACA,aAAO;AAAA,IACX;AAGA,WAAO,MAAM,KAAK,aAAa;AAAA,EACnC;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,UAAU;AACV,WAAO,MAAM,KAAK,KAAK,QAAQ,EAAE,OAAO,KAAK,aAAa,KAAK,IAAI,CAAC;AAAA,EACxE;AAAA;AAAA;AAAA;AAAA,EAKA,aAAa,QAAgB;AACzB,WAAO,MAAM,SAAS,OAAO,UAAU,KAAK,IAAI,QAAQ;AAAA,EAC5D;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,eAAe;AACjB,UAAM,aAAa,OAAO,wBAAwB;AAClD,UAAM,WAAW,OAAO,cAAc,2BAA2B;AAEjE,QAAI,WAAW,KAAK,QAAQ;AAC5B,QAAI,aAAa,QAAW;AACxB,iBAAW;AACX,aAAO,KAAK,0BAA0B,SAAS,SAAS,EAAE,CAAC,wBAAwB;AAAA,IACvF;AAEA,UAAM,gBAAgB,MAAM,cAAc,OAAO;AACjD,UAAM,cAAc,YAAY,KAAK,IAAI,QAAQ;AACjD,kBACK,cAAc,UAAU,EACxB,yBAAyB,QAAQ,EACjC,gBAAgB,KAAK,QAAQ,iBAAiB,uBAAuB,EACrE,SAAS,KAAK,QAAQ,gBAAgB;AAE3C,UAAM,cAAc;AAAA,MAChB,MAAM,KAAK,IAAI;AAAA,QACX,cAAc;AAAA,QACd,KAAK,QAAQ,YAAY;AAAA,QACzB;AAAA,QACA,KAAK,QAAQ;AAAA,MACjB;AAAA,IACJ;AAEA,QAAI,QAAQ,KAAK,QAAQ;AACzB,QAAI,UAAU,QAAW;AACrB,cAAQ,KAAK,SAAS,oBAAoB;AAAA,IAC9C,WAAW,KAAK,SAAS,YAAY,KAAK,MAAM,QAAW;AACvD,YAAM,IAAI,oBAAoB,qCAAqC,KAAK,0BAA0B;AAAA,IACtG;AAEA,UAAM,SAAS,MAAM,cAAc,MAAM,KAAK;AAC9C,SAAK,SAAS,UAAU,MAAM;AAE9B,WAAO,MAAM,iCAAiC,KAAK,EAAE;AAErD,WAAO;AAAA,EACX;AAAA,EAEA,QAAQ,cAAc,MAAM,EAAE,KAAkB;AAC5C,UAAM,WAAW,IAAI,gBAAgB;AAAA,MACjC,IAAI,IAAI,IAAI,oBAAoB;AAAA,MAChC,SAAS,IAAI,IAAI,aAAa;AAAA,MAC9B,QAAQ,IAAI,IAAI,oCAAoC;AAAA,IACxD,CAAC;AACD,QAAI,IAAI,iBAAiB,QAAQ;AACjC,WAAO;AAAA,EACX;AACJ;",
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FabricManager.d.ts","sourceRoot":"","sources":["../../../src/fabric/FabricManager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAEH,YAAY,EACZ,WAAW,EACX,aAAa,EAEb,GAAG,EACH,WAAW,EAEX,YAAY,EACZ,UAAU,EACV,cAAc,EAEjB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,qDAAqD;AACrD,qBAAa,mBAAoB,SAAQ,WAAW;CAAG;AACvD,qBAAa,oBAAqB,SAAQ,WAAW;CAAG;AAExD,oBAAY,YAAY;IACpB,KAAK,IAAA;IACL,OAAO,IAAA;IACP,OAAO,IAAA;CACV;AAED,qBAAa,aAAa;;gBAaV,OAAO,CAAC,EAAE,cAAc;IA2BpC,IAAI,YAAY,gCAEf;IAEK,CAAC,YAAY,CAAC,SAAS,CAAC;IAI9B,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,WAAW;IAM9C,IAAI,MAAM;;;;;MAET;IAEK,KAAK;IAOX,GAAG,CAAC,OAAO,EAAE,WAAW,GAAG,WAAW;IAOtC,GAAG,CAAC,OAAO,EAAE,WAAW,GAAG,WAAW;IAWtC,mBAAmB;IAanB,cAAc,IAAI,YAAY,CAAC,IAAI,CAAC;IAmBpC,SAAS,CAAC,MAAM,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"FabricManager.d.ts","sourceRoot":"","sources":["../../../src/fabric/FabricManager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAEH,YAAY,EACZ,WAAW,EACX,aAAa,EAEb,GAAG,EACH,WAAW,EAEX,YAAY,EACZ,UAAU,EACV,cAAc,EAEjB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,qDAAqD;AACrD,qBAAa,mBAAoB,SAAQ,WAAW;CAAG;AACvD,qBAAa,oBAAqB,SAAQ,WAAW;CAAG;AAExD,oBAAY,YAAY;IACpB,KAAK,IAAA;IACL,OAAO,IAAA;IACP,OAAO,IAAA;CACV;AAED,qBAAa,aAAa;;gBAaV,OAAO,CAAC,EAAE,cAAc;IA2BpC,IAAI,YAAY,gCAEf;IAEK,CAAC,YAAY,CAAC,SAAS,CAAC;IAI9B,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,WAAW;IAM9C,IAAI,MAAM;;;;;MAET;IAEK,KAAK;IAOX,GAAG,CAAC,OAAO,EAAE,WAAW,GAAG,WAAW;IAOtC,GAAG,CAAC,OAAO,EAAE,WAAW,GAAG,WAAW;IAWtC,mBAAmB;IAanB,cAAc,IAAI,YAAY,CAAC,IAAI,CAAC;IAmBpC,SAAS,CAAC,MAAM,EAAE,MAAM;IA+BlB,YAAY,CAAC,WAAW,EAAE,WAAW;IAgB3C,CAAC,MAAM,CAAC,QAAQ,CAAC;IAMjB,IAAI,OAAO,aAIV;IAED,IAAI,MAAM,WAET;IAED,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO;IAI3C,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC;IAIlC,2BAA2B,CAAC,aAAa,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU;IAaxF,aAAa,CAAC,OAAO,EAAE,GAAG;IAW1B,WAAW,CAAC,KAAK,EAAE,WAAW;IAMxB,YAAY,CAAC,MAAM,EAAE,MAAM;IAgB3B,YAAY,CAAC,WAAW,EAAE,WAAW;CAS9C"}
|
|
@@ -134,6 +134,9 @@ class FabricManager {
|
|
|
134
134
|
this.#fabrics.set(fabricIndex, fabric);
|
|
135
135
|
fabric.addRemoveCallback(async () => this.removeFabric(fabricIndex));
|
|
136
136
|
fabric.persistCallback = (isUpdate = true) => {
|
|
137
|
+
if (!this.#storage) {
|
|
138
|
+
return;
|
|
139
|
+
}
|
|
137
140
|
const persistResult = this.persistFabrics();
|
|
138
141
|
return MaybePromise.then(persistResult, () => {
|
|
139
142
|
if (isUpdate) {
|
|
@@ -156,7 +159,9 @@ class FabricManager {
|
|
|
156
159
|
`Fabric with index ${fabricIndex} cannot be removed because it does not exist.`
|
|
157
160
|
);
|
|
158
161
|
this.#fabrics.delete(fabricIndex);
|
|
159
|
-
|
|
162
|
+
if (this.#storage) {
|
|
163
|
+
await this.persistFabrics();
|
|
164
|
+
}
|
|
160
165
|
await fabric.storage?.clearAll();
|
|
161
166
|
this.#events.deleted.emit(fabric);
|
|
162
167
|
}
|
|
@@ -209,7 +214,9 @@ class FabricManager {
|
|
|
209
214
|
);
|
|
210
215
|
}
|
|
211
216
|
this.#fabrics.set(fabricIndex, fabric);
|
|
212
|
-
|
|
217
|
+
if (this.#storage) {
|
|
218
|
+
await this.persistFabrics();
|
|
219
|
+
}
|
|
213
220
|
this.#events.updated.emit(fabric);
|
|
214
221
|
}
|
|
215
222
|
async revokeFabric(fabricIndex) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/fabric/FabricManager.ts"],
|
|
4
|
-
"mappings": "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
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["FabricAction"]
|
|
6
6
|
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Project CHIP Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { FabricAuthority } from "./FabricAuthority.js";
|
|
7
|
+
import { FabricManager } from "./FabricManager.js";
|
|
8
|
+
/**
|
|
9
|
+
* WARNING: ONLY FOR USE IN PROTECTED TESTING ENVIRONMENTS WHERE SECURITY IS NOT A CONCERN
|
|
10
|
+
*
|
|
11
|
+
* Generate a fabric useful for testing purposes.
|
|
12
|
+
*
|
|
13
|
+
* The properties of the fabric, including crypto matter, are stable with regards to {@link index}.
|
|
14
|
+
*/
|
|
15
|
+
export declare function TestFabric(options?: TestFabric.Options): Promise<import("./Fabric.js").Fabric>;
|
|
16
|
+
export declare namespace TestFabric {
|
|
17
|
+
/**
|
|
18
|
+
* WARNING: ONLY FOR USE IN PROTECTED TESTING ENVIRONMENTS WHERE SECURITY IS NOT A CONCERN
|
|
19
|
+
*
|
|
20
|
+
* Obtain a test authority.
|
|
21
|
+
*
|
|
22
|
+
* Crypto matter is stable with respect to {@link index}.
|
|
23
|
+
*/
|
|
24
|
+
function Authority({ index, fabrics }?: Options): Promise<FabricAuthority>;
|
|
25
|
+
interface Options {
|
|
26
|
+
index?: number;
|
|
27
|
+
fabrics?: FabricManager;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=TestFabric.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TestFabric.d.ts","sourceRoot":"","sources":["../../../src/fabric/TestFabric.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD;;;;;;GAMG;AACH,wBAAsB,UAAU,CAAC,OAAO,GAAE,UAAU,CAAC,OAAY,yCAIhE;AAED,yBAAiB,UAAU,CAAC;IACxB;;;;;;OAMG;IACH,SAAsB,SAAS,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,GAAE,OAAY,4BAyB/D;IAED,UAAiB,OAAO;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,aAAa,CAAC;KAC3B;CACJ"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Project CHIP Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { CertificateAuthority } from "#certificate/CertificateAuthority.js";
|
|
7
|
+
import { ImplementationError, nonentropic } from "#general";
|
|
8
|
+
import { FabricIndex, VendorId } from "#types";
|
|
9
|
+
import { FabricAuthority } from "./FabricAuthority.js";
|
|
10
|
+
import { FabricManager } from "./FabricManager.js";
|
|
11
|
+
async function TestFabric(options = {}) {
|
|
12
|
+
const authority = await TestFabric.Authority(options);
|
|
13
|
+
return authority.createFabric();
|
|
14
|
+
}
|
|
15
|
+
((TestFabric2) => {
|
|
16
|
+
async function Authority({ index, fabrics } = {}) {
|
|
17
|
+
if (index === void 0) {
|
|
18
|
+
if (fabrics) {
|
|
19
|
+
index = fabrics.allocateFabricIndex();
|
|
20
|
+
} else {
|
|
21
|
+
index = 1;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return forFabric(index, async () => {
|
|
25
|
+
const authority = new FabricAuthority({
|
|
26
|
+
ca: await CertificateAuthority.create(),
|
|
27
|
+
config: {
|
|
28
|
+
adminFabricLabel: `mock-fabric-${index}`,
|
|
29
|
+
adminVendorId: VendorId(65521),
|
|
30
|
+
fabricIndex: FabricIndex(index)
|
|
31
|
+
},
|
|
32
|
+
fabrics: fabrics ?? new FabricManager()
|
|
33
|
+
});
|
|
34
|
+
const createFabric = authority.createFabric.bind(authority);
|
|
35
|
+
authority.createFabric = () => forFabric(index ?? 1, createFabric);
|
|
36
|
+
return authority;
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
TestFabric2.Authority = Authority;
|
|
40
|
+
})(TestFabric || (TestFabric = {}));
|
|
41
|
+
async function forFabric(index, actor) {
|
|
42
|
+
if (index < 1 || index > 254) {
|
|
43
|
+
throw new ImplementationError("Test fabric indexes must be in the range 1-254");
|
|
44
|
+
}
|
|
45
|
+
return nonentropic(index, actor);
|
|
46
|
+
}
|
|
47
|
+
export {
|
|
48
|
+
TestFabric
|
|
49
|
+
};
|
|
50
|
+
//# sourceMappingURL=TestFabric.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/fabric/TestFabric.ts"],
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,4BAA4B;AACrC,SAAS,qBAAqB,mBAAmB;AACjD,SAAS,aAAa,gBAAgB;AACtC,SAAS,uBAAuB;AAChC,SAAS,qBAAqB;AAS9B,eAAsB,WAAW,UAA8B,CAAC,GAAG;AAC/D,QAAM,YAAY,MAAM,WAAW,UAAU,OAAO;AAEpD,SAAO,UAAU,aAAa;AAClC;AAAA,CAEO,CAAUA,gBAAV;AAQH,iBAAsB,UAAU,EAAE,OAAO,QAAQ,IAAa,CAAC,GAAG;AAC9D,QAAI,UAAU,QAAW;AACrB,UAAI,SAAS;AACT,gBAAQ,QAAQ,oBAAoB;AAAA,MACxC,OAAO;AACH,gBAAQ;AAAA,MACZ;AAAA,IACJ;AAEA,WAAO,UAAU,OAAO,YAAY;AAChC,YAAM,YAAY,IAAI,gBAAgB;AAAA,QAClC,IAAI,MAAM,qBAAqB,OAAO;AAAA,QACtC,QAAQ;AAAA,UACJ,kBAAkB,eAAe,KAAK;AAAA,UACtC,eAAe,SAAS,KAAM;AAAA,UAC9B,aAAa,YAAY,KAAK;AAAA,QAClC;AAAA,QACA,SAAS,WAAW,IAAI,cAAc;AAAA,MAC1C,CAAC;AAED,YAAM,eAAe,UAAU,aAAa,KAAK,SAAS;AAC1D,gBAAU,eAAe,MAAM,UAAU,SAAS,GAAG,YAAY;AAEjE,aAAO;AAAA,IACX,CAAC;AAAA,EACL;AAzBA,EAAAA,YAAsB;AAAA,GART;AAyCjB,eAAe,UAAa,OAAe,OAAqC;AAC5E,MAAI,QAAQ,KAAK,QAAQ,KAAK;AAC1B,UAAM,IAAI,oBAAoB,gDAAgD;AAAA,EAClF;AAEA,SAAO,YAAY,OAAO,KAAK;AACnC;",
|
|
5
|
+
"names": ["TestFabric"]
|
|
6
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fabric/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fabric/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC"}
|
package/dist/esm/fabric/index.js
CHANGED
|
@@ -12,7 +12,7 @@ export declare const GROUP_SECURITY_INFO: Uint8Array<ArrayBufferLike>;
|
|
|
12
12
|
/**
|
|
13
13
|
* Class that contains an operational view on the Group Keys for a fabric
|
|
14
14
|
*/
|
|
15
|
-
export declare class
|
|
15
|
+
export declare class FabricGroups {
|
|
16
16
|
#private;
|
|
17
17
|
constructor(fabric: Fabric, storage?: StorageContext);
|
|
18
18
|
set storage(storage: StorageContext);
|
|
@@ -43,4 +43,4 @@ export declare class FabricGroupsManager {
|
|
|
43
43
|
/** Removes a group key set by its id and cleans up the counters and data. */
|
|
44
44
|
removeGroupKeySet(groupKeySetId: number): Promise<boolean>;
|
|
45
45
|
}
|
|
46
|
-
//# sourceMappingURL=
|
|
46
|
+
//# sourceMappingURL=FabricGroups.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FabricGroups.d.ts","sourceRoot":"","sources":["../../../src/groups/FabricGroups.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAiD,cAAc,EAAE,MAAM,UAAU,CAAC;AACnG,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAGjC,eAAO,MAAM,mBAAmB,6BAAoC,CAAC;AAErE;;GAEG;AACH,qBAAa,YAAY;;gBAQT,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc;IA6BpD,IAAI,OAAO,CAAC,OAAO,EAAE,cAAc,EAElC;IAED,0DAA0D;IAC1D,IAAI,OAAO,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAExC;IAED,IAAI,SAAS,IAAI,cAAc,CAE9B;IAED,kFAAkF;IAClF,IAAI,QAAQ;;;SAEX;IAED,IAAI,aAAa,IAAI,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAE7C;IAED,IAAI,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,EAE1C;IAED,IAAI,SAAS,oDAEZ;IAED,kBAAkB,CAAC,OAAO,EAAE,OAAO;;;;;;IAInC,eAAe,CAAC,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM;IAI7C,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM;IAgB7C;;;OAGG;IACG,kBAAkB,CAAC,WAAW,EAAE,WAAW;IA8BjD,6EAA6E;IACvE,iBAAiB,CAAC,aAAa,EAAE,MAAM;CAoBhD"}
|
|
@@ -8,7 +8,7 @@ import { KeySets } from "#groups/KeySets.js";
|
|
|
8
8
|
import { MessagingState } from "#groups/MessagingState.js";
|
|
9
9
|
import { Groups } from "./Groups.js";
|
|
10
10
|
const GROUP_SECURITY_INFO = Bytes.fromString("GroupKey v1.0");
|
|
11
|
-
class
|
|
11
|
+
class FabricGroups {
|
|
12
12
|
#fabric;
|
|
13
13
|
#groups;
|
|
14
14
|
#messagingState;
|
|
@@ -96,9 +96,9 @@ class FabricGroupsManager {
|
|
|
96
96
|
}
|
|
97
97
|
await this.#cleanUpCounters(groupKeySetId);
|
|
98
98
|
const operationalId = this.#fabric.operationalId;
|
|
99
|
-
const operationalEpochKey0 = await Crypto.
|
|
100
|
-
const operationalEpochKey1 = epochKey1 !== null ? await Crypto.
|
|
101
|
-
const operationalEpochKey2 = epochKey2 !== null ? await Crypto.
|
|
99
|
+
const operationalEpochKey0 = await Crypto.createHkdfKey(epochKey0, operationalId, GROUP_SECURITY_INFO);
|
|
100
|
+
const operationalEpochKey1 = epochKey1 !== null ? await Crypto.createHkdfKey(epochKey1, operationalId, GROUP_SECURITY_INFO) : null;
|
|
101
|
+
const operationalEpochKey2 = epochKey2 !== null ? await Crypto.createHkdfKey(epochKey2, operationalId, GROUP_SECURITY_INFO) : null;
|
|
102
102
|
this.#keySets.add({
|
|
103
103
|
...groupKeySet,
|
|
104
104
|
operationalEpochKey0,
|
|
@@ -129,7 +129,7 @@ class FabricGroupsManager {
|
|
|
129
129
|
}
|
|
130
130
|
}
|
|
131
131
|
export {
|
|
132
|
-
|
|
132
|
+
FabricGroups,
|
|
133
133
|
GROUP_SECURITY_INFO
|
|
134
134
|
};
|
|
135
|
-
//# sourceMappingURL=
|
|
135
|
+
//# sourceMappingURL=FabricGroups.js.map
|