@matter/general 0.13.1-alpha.0-20250504-87f265a2e → 0.13.1-alpha.0-20250508-047aa0277

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.
@@ -3,6 +3,7 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import { MaybePromise } from "#util/Promises.js";
6
7
  import * as mod from "@noble/curves/abstract/modular";
7
8
  import * as utils from "@noble/curves/abstract/utils";
8
9
  import { MatterError } from "../MatterError.js";
@@ -83,37 +84,37 @@ export declare abstract class Crypto {
83
84
  static readonly getRandomUInt32: () => number;
84
85
  static readonly getRandomBigUInt64: () => bigint;
85
86
  static readonly getRandomBigInt: (size: number, maxValue?: bigint) => bigint;
86
- abstract ecdhGeneratePublicKey(): {
87
+ abstract ecdhGeneratePublicKey(): MaybePromise<{
87
88
  publicKey: Uint8Array;
88
89
  ecdh: any;
89
- };
90
- static readonly ecdhGeneratePublicKey: () => {
90
+ }>;
91
+ static readonly ecdhGeneratePublicKey: () => MaybePromise<{
91
92
  publicKey: Uint8Array;
92
93
  ecdh: any;
93
- };
94
- abstract ecdhGeneratePublicKeyAndSecret(peerPublicKey: Uint8Array): {
94
+ }>;
95
+ abstract ecdhGeneratePublicKeyAndSecret(peerPublicKey: Uint8Array): MaybePromise<{
95
96
  publicKey: Uint8Array;
96
97
  sharedSecret: Uint8Array;
97
- };
98
- static readonly ecdhGeneratePublicKeyAndSecret: (peerPublicKey: Uint8Array) => {
98
+ }>;
99
+ static readonly ecdhGeneratePublicKeyAndSecret: (peerPublicKey: Uint8Array) => MaybePromise<{
99
100
  publicKey: Uint8Array;
100
101
  sharedSecret: Uint8Array;
101
- };
102
- abstract ecdhGenerateSecret(peerPublicKey: Uint8Array, ecdh: any): Uint8Array;
103
- static readonly ecdhGenerateSecret: (peerPublicKey: Uint8Array, ecdh: any) => Uint8Array;
104
- abstract hash(data: Uint8Array | Uint8Array[]): Uint8Array;
105
- static readonly hash: (data: Uint8Array | Uint8Array[]) => Uint8Array;
106
- abstract pbkdf2(secret: Uint8Array, salt: Uint8Array, iteration: number, keyLength: number): Promise<Uint8Array>;
107
- static readonly pbkdf2: (secret: Uint8Array, salt: Uint8Array, iteration: number, keyLength: number) => Promise<Uint8Array>;
108
- abstract hkdf(secret: Uint8Array, salt: Uint8Array, info: Uint8Array, length?: number): Promise<Uint8Array>;
109
- static readonly hkdf: (secret: Uint8Array, salt: Uint8Array, info: Uint8Array, length?: number) => Promise<Uint8Array>;
110
- abstract hmac(key: Uint8Array, data: Uint8Array): Uint8Array;
111
- static readonly hmac: (key: Uint8Array, data: Uint8Array) => Uint8Array;
112
- abstract sign(privateKey: JsonWebKey, data: Uint8Array | Uint8Array[], dsaEncoding?: CryptoDsaEncoding): Uint8Array;
113
- static readonly sign: (privateKey: JsonWebKey, data: Uint8Array | Uint8Array[], dsaEncoding?: CryptoDsaEncoding) => Uint8Array;
114
- abstract verify(publicKey: JsonWebKey, data: Uint8Array, signature: Uint8Array, dsaEncoding?: CryptoDsaEncoding): void;
115
- static readonly verify: (publicKey: JsonWebKey, data: Uint8Array, signature: Uint8Array, dsaEncoding?: CryptoDsaEncoding) => void;
116
- abstract createKeyPair(): PrivateKey;
117
- static readonly createKeyPair: () => PrivateKey;
102
+ }>;
103
+ abstract ecdhGenerateSecret(peerPublicKey: Uint8Array, ecdh: any): MaybePromise<Uint8Array>;
104
+ static readonly ecdhGenerateSecret: (peerPublicKey: Uint8Array, ecdh: any) => MaybePromise<Uint8Array<ArrayBufferLike>>;
105
+ abstract hash(data: Uint8Array | Uint8Array[]): MaybePromise<Uint8Array>;
106
+ static readonly hash: (data: Uint8Array | Uint8Array[]) => MaybePromise<Uint8Array<ArrayBufferLike>>;
107
+ abstract pbkdf2(secret: Uint8Array, salt: Uint8Array, iteration: number, keyLength: number): MaybePromise<Uint8Array>;
108
+ static readonly pbkdf2: (secret: Uint8Array, salt: Uint8Array, iteration: number, keyLength: number) => MaybePromise<Uint8Array<ArrayBufferLike>>;
109
+ abstract hkdf(secret: Uint8Array, salt: Uint8Array, info: Uint8Array, length?: number): MaybePromise<Uint8Array>;
110
+ static readonly hkdf: (secret: Uint8Array, salt: Uint8Array, info: Uint8Array, length?: number) => MaybePromise<Uint8Array<ArrayBufferLike>>;
111
+ abstract hmac(key: Uint8Array, data: Uint8Array): MaybePromise<Uint8Array>;
112
+ static readonly hmac: (key: Uint8Array, data: Uint8Array) => MaybePromise<Uint8Array<ArrayBufferLike>>;
113
+ abstract sign(privateKey: JsonWebKey, data: Uint8Array | Uint8Array[], dsaEncoding?: CryptoDsaEncoding): MaybePromise<Uint8Array>;
114
+ static readonly sign: (privateKey: JsonWebKey, data: Uint8Array | Uint8Array[], dsaEncoding?: CryptoDsaEncoding) => MaybePromise<Uint8Array<ArrayBufferLike>>;
115
+ abstract verify(publicKey: JsonWebKey, data: Uint8Array, signature: Uint8Array, dsaEncoding?: CryptoDsaEncoding): MaybePromise<void>;
116
+ static readonly verify: (publicKey: JsonWebKey, data: Uint8Array, signature: Uint8Array, dsaEncoding?: CryptoDsaEncoding) => MaybePromise<void>;
117
+ abstract createKeyPair(): MaybePromise<PrivateKey>;
118
+ static readonly createKeyPair: () => MaybePromise<PrivateKey>;
118
119
  }
119
120
  //# sourceMappingURL=Crypto.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Crypto.d.ts","sourceRoot":"","sources":["../../../src/crypto/Crypto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Crypto.d.ts","sourceRoot":"","sources":["../../../src/crypto/Crypto.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/crypto/Crypto.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -96,14 +96,14 @@ class Spake2p {
96
96
  return this.computeSecretAndVerifiers(X, Y, Z.toRawBytes(false), V.toRawBytes(false));
97
97
  }
98
98
  async computeSecretAndVerifiers(X, Y, Z, V) {
99
- const TT_HASH = this.computeTranscriptHash(X, Y, Z, V);
99
+ const TT_HASH = await this.computeTranscriptHash(X, Y, Z, V);
100
100
  const Ka = TT_HASH.slice(0, 16);
101
101
  const Ke = TT_HASH.slice(16, 32);
102
102
  const KcAB = await import_Crypto.Crypto.hkdf(Ka, new Uint8Array(0), import_Bytes.Bytes.fromString("ConfirmationKeys"), 32);
103
103
  const KcA = KcAB.slice(0, 16);
104
104
  const KcB = KcAB.slice(16, 32);
105
- const hAY = import_Crypto.Crypto.hmac(KcA, Y);
106
- const hBX = import_Crypto.Crypto.hmac(KcB, X);
105
+ const hAY = await import_Crypto.Crypto.hmac(KcA, Y);
106
+ const hBX = await import_Crypto.Crypto.hmac(KcB, X);
107
107
  return { Ke, hAY, hBX };
108
108
  }
109
109
  computeTranscriptHash(X, Y, Z, V) {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/crypto/Spake2p.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -144,16 +144,16 @@ export declare const Transaction: {
144
144
  */
145
145
  act<T>(via: string, actor: (transaction: Transaction) => MaybePromise<T>): MaybePromise<T>;
146
146
  ReadOnly: {
147
- "__#15411@#participants": Set<Participant>;
148
- "__#15411@#roles": Map<{}, Participant>;
149
- "__#15411@#resources": Set<Resource>;
150
- "__#15411@#status": Status;
151
- "__#15411@#waitingOn"?: Iterable<Transaction>;
152
- "__#15411@#via": string;
153
- "__#15411@#shared"?: import("../index.js").Observable<[]>;
154
- "__#15411@#closed"?: import("../index.js").Observable<[]>;
155
- "__#15411@#isAsync": boolean;
156
- "__#15411@#reportingLocks": boolean;
147
+ "__#15412@#participants": Set<Participant>;
148
+ "__#15412@#roles": Map<{}, Participant>;
149
+ "__#15412@#resources": Set<Resource>;
150
+ "__#15412@#status": Status;
151
+ "__#15412@#waitingOn"?: Iterable<Transaction>;
152
+ "__#15412@#via": string;
153
+ "__#15412@#shared"?: import("../index.js").Observable<[]>;
154
+ "__#15412@#closed"?: import("../index.js").Observable<[]>;
155
+ "__#15412@#isAsync": boolean;
156
+ "__#15412@#reportingLocks": boolean;
157
157
  close(): void;
158
158
  readonly via: string;
159
159
  readonly status: Status;
@@ -175,15 +175,15 @@ export declare const Transaction: {
175
175
  waitFor(others: Set<Transaction>): Promise<void>;
176
176
  toString(): string;
177
177
  treatAsSlow(): void;
178
- "__#15411@#finalize"(status: Status, why: string, finalizer: () => MaybePromise): Promise<void> | undefined;
179
- "__#15411@#executePreCommit"(): MaybePromise<void>;
180
- "__#15411@#executeCommit"(): MaybePromise;
181
- "__#15411@#executeCommit1"(): MaybePromise;
182
- "__#15411@#executeCommit2"(): Promise<void> | undefined;
183
- "__#15411@#executePostCommit"(participants: Participant[]): MaybePromise;
184
- "__#15411@#executeRollback"(): Promise<void> | undefined;
185
- "__#15411@#locksChanged"(resources: Set<Resource>, how?: string): void;
186
- "__#15411@#assertAvailable"(): void;
178
+ "__#15412@#finalize"(status: Status, why: string, finalizer: () => MaybePromise): Promise<void> | undefined;
179
+ "__#15412@#executePreCommit"(): MaybePromise<void>;
180
+ "__#15412@#executeCommit"(): MaybePromise;
181
+ "__#15412@#executeCommit1"(): MaybePromise;
182
+ "__#15412@#executeCommit2"(): Promise<void> | undefined;
183
+ "__#15412@#executePostCommit"(participants: Participant[]): MaybePromise;
184
+ "__#15412@#executeRollback"(): Promise<void> | undefined;
185
+ "__#15412@#locksChanged"(resources: Set<Resource>, how?: string): void;
186
+ "__#15412@#assertAvailable"(): void;
187
187
  };
188
188
  Status: typeof Status;
189
189
  Resource: typeof Resource;
@@ -3,6 +3,7 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import { MaybePromise } from "#util/Promises.js";
6
7
  import * as mod from "@noble/curves/abstract/modular";
7
8
  import * as utils from "@noble/curves/abstract/utils";
8
9
  import { MatterError } from "../MatterError.js";
@@ -83,37 +84,37 @@ export declare abstract class Crypto {
83
84
  static readonly getRandomUInt32: () => number;
84
85
  static readonly getRandomBigUInt64: () => bigint;
85
86
  static readonly getRandomBigInt: (size: number, maxValue?: bigint) => bigint;
86
- abstract ecdhGeneratePublicKey(): {
87
+ abstract ecdhGeneratePublicKey(): MaybePromise<{
87
88
  publicKey: Uint8Array;
88
89
  ecdh: any;
89
- };
90
- static readonly ecdhGeneratePublicKey: () => {
90
+ }>;
91
+ static readonly ecdhGeneratePublicKey: () => MaybePromise<{
91
92
  publicKey: Uint8Array;
92
93
  ecdh: any;
93
- };
94
- abstract ecdhGeneratePublicKeyAndSecret(peerPublicKey: Uint8Array): {
94
+ }>;
95
+ abstract ecdhGeneratePublicKeyAndSecret(peerPublicKey: Uint8Array): MaybePromise<{
95
96
  publicKey: Uint8Array;
96
97
  sharedSecret: Uint8Array;
97
- };
98
- static readonly ecdhGeneratePublicKeyAndSecret: (peerPublicKey: Uint8Array) => {
98
+ }>;
99
+ static readonly ecdhGeneratePublicKeyAndSecret: (peerPublicKey: Uint8Array) => MaybePromise<{
99
100
  publicKey: Uint8Array;
100
101
  sharedSecret: Uint8Array;
101
- };
102
- abstract ecdhGenerateSecret(peerPublicKey: Uint8Array, ecdh: any): Uint8Array;
103
- static readonly ecdhGenerateSecret: (peerPublicKey: Uint8Array, ecdh: any) => Uint8Array;
104
- abstract hash(data: Uint8Array | Uint8Array[]): Uint8Array;
105
- static readonly hash: (data: Uint8Array | Uint8Array[]) => Uint8Array;
106
- abstract pbkdf2(secret: Uint8Array, salt: Uint8Array, iteration: number, keyLength: number): Promise<Uint8Array>;
107
- static readonly pbkdf2: (secret: Uint8Array, salt: Uint8Array, iteration: number, keyLength: number) => Promise<Uint8Array>;
108
- abstract hkdf(secret: Uint8Array, salt: Uint8Array, info: Uint8Array, length?: number): Promise<Uint8Array>;
109
- static readonly hkdf: (secret: Uint8Array, salt: Uint8Array, info: Uint8Array, length?: number) => Promise<Uint8Array>;
110
- abstract hmac(key: Uint8Array, data: Uint8Array): Uint8Array;
111
- static readonly hmac: (key: Uint8Array, data: Uint8Array) => Uint8Array;
112
- abstract sign(privateKey: JsonWebKey, data: Uint8Array | Uint8Array[], dsaEncoding?: CryptoDsaEncoding): Uint8Array;
113
- static readonly sign: (privateKey: JsonWebKey, data: Uint8Array | Uint8Array[], dsaEncoding?: CryptoDsaEncoding) => Uint8Array;
114
- abstract verify(publicKey: JsonWebKey, data: Uint8Array, signature: Uint8Array, dsaEncoding?: CryptoDsaEncoding): void;
115
- static readonly verify: (publicKey: JsonWebKey, data: Uint8Array, signature: Uint8Array, dsaEncoding?: CryptoDsaEncoding) => void;
116
- abstract createKeyPair(): PrivateKey;
117
- static readonly createKeyPair: () => PrivateKey;
102
+ }>;
103
+ abstract ecdhGenerateSecret(peerPublicKey: Uint8Array, ecdh: any): MaybePromise<Uint8Array>;
104
+ static readonly ecdhGenerateSecret: (peerPublicKey: Uint8Array, ecdh: any) => MaybePromise<Uint8Array<ArrayBufferLike>>;
105
+ abstract hash(data: Uint8Array | Uint8Array[]): MaybePromise<Uint8Array>;
106
+ static readonly hash: (data: Uint8Array | Uint8Array[]) => MaybePromise<Uint8Array<ArrayBufferLike>>;
107
+ abstract pbkdf2(secret: Uint8Array, salt: Uint8Array, iteration: number, keyLength: number): MaybePromise<Uint8Array>;
108
+ static readonly pbkdf2: (secret: Uint8Array, salt: Uint8Array, iteration: number, keyLength: number) => MaybePromise<Uint8Array<ArrayBufferLike>>;
109
+ abstract hkdf(secret: Uint8Array, salt: Uint8Array, info: Uint8Array, length?: number): MaybePromise<Uint8Array>;
110
+ static readonly hkdf: (secret: Uint8Array, salt: Uint8Array, info: Uint8Array, length?: number) => MaybePromise<Uint8Array<ArrayBufferLike>>;
111
+ abstract hmac(key: Uint8Array, data: Uint8Array): MaybePromise<Uint8Array>;
112
+ static readonly hmac: (key: Uint8Array, data: Uint8Array) => MaybePromise<Uint8Array<ArrayBufferLike>>;
113
+ abstract sign(privateKey: JsonWebKey, data: Uint8Array | Uint8Array[], dsaEncoding?: CryptoDsaEncoding): MaybePromise<Uint8Array>;
114
+ static readonly sign: (privateKey: JsonWebKey, data: Uint8Array | Uint8Array[], dsaEncoding?: CryptoDsaEncoding) => MaybePromise<Uint8Array<ArrayBufferLike>>;
115
+ abstract verify(publicKey: JsonWebKey, data: Uint8Array, signature: Uint8Array, dsaEncoding?: CryptoDsaEncoding): MaybePromise<void>;
116
+ static readonly verify: (publicKey: JsonWebKey, data: Uint8Array, signature: Uint8Array, dsaEncoding?: CryptoDsaEncoding) => MaybePromise<void>;
117
+ abstract createKeyPair(): MaybePromise<PrivateKey>;
118
+ static readonly createKeyPair: () => MaybePromise<PrivateKey>;
118
119
  }
119
120
  //# sourceMappingURL=Crypto.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Crypto.d.ts","sourceRoot":"","sources":["../../../src/crypto/Crypto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Crypto.d.ts","sourceRoot":"","sources":["../../../src/crypto/Crypto.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/crypto/Crypto.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -73,14 +73,14 @@ class Spake2p {
73
73
  return this.computeSecretAndVerifiers(X, Y, Z.toRawBytes(false), V.toRawBytes(false));
74
74
  }
75
75
  async computeSecretAndVerifiers(X, Y, Z, V) {
76
- const TT_HASH = this.computeTranscriptHash(X, Y, Z, V);
76
+ const TT_HASH = await this.computeTranscriptHash(X, Y, Z, V);
77
77
  const Ka = TT_HASH.slice(0, 16);
78
78
  const Ke = TT_HASH.slice(16, 32);
79
79
  const KcAB = await Crypto.hkdf(Ka, new Uint8Array(0), Bytes.fromString("ConfirmationKeys"), 32);
80
80
  const KcA = KcAB.slice(0, 16);
81
81
  const KcB = KcAB.slice(16, 32);
82
- const hAY = Crypto.hmac(KcA, Y);
83
- const hBX = Crypto.hmac(KcB, X);
82
+ const hAY = await Crypto.hmac(KcA, Y);
83
+ const hBX = await Crypto.hmac(KcB, X);
84
84
  return { Ke, hAY, hBX };
85
85
  }
86
86
  computeTranscriptHash(X, Y, Z, V) {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/crypto/Spake2p.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -144,16 +144,16 @@ export declare const Transaction: {
144
144
  */
145
145
  act<T>(via: string, actor: (transaction: Transaction) => MaybePromise<T>): MaybePromise<T>;
146
146
  ReadOnly: {
147
- "__#15411@#participants": Set<Participant>;
148
- "__#15411@#roles": Map<{}, Participant>;
149
- "__#15411@#resources": Set<Resource>;
150
- "__#15411@#status": Status;
151
- "__#15411@#waitingOn"?: Iterable<Transaction>;
152
- "__#15411@#via": string;
153
- "__#15411@#shared"?: import("../index.js").Observable<[]>;
154
- "__#15411@#closed"?: import("../index.js").Observable<[]>;
155
- "__#15411@#isAsync": boolean;
156
- "__#15411@#reportingLocks": boolean;
147
+ "__#15412@#participants": Set<Participant>;
148
+ "__#15412@#roles": Map<{}, Participant>;
149
+ "__#15412@#resources": Set<Resource>;
150
+ "__#15412@#status": Status;
151
+ "__#15412@#waitingOn"?: Iterable<Transaction>;
152
+ "__#15412@#via": string;
153
+ "__#15412@#shared"?: import("../index.js").Observable<[]>;
154
+ "__#15412@#closed"?: import("../index.js").Observable<[]>;
155
+ "__#15412@#isAsync": boolean;
156
+ "__#15412@#reportingLocks": boolean;
157
157
  close(): void;
158
158
  readonly via: string;
159
159
  readonly status: Status;
@@ -175,15 +175,15 @@ export declare const Transaction: {
175
175
  waitFor(others: Set<Transaction>): Promise<void>;
176
176
  toString(): string;
177
177
  treatAsSlow(): void;
178
- "__#15411@#finalize"(status: Status, why: string, finalizer: () => MaybePromise): Promise<void> | undefined;
179
- "__#15411@#executePreCommit"(): MaybePromise<void>;
180
- "__#15411@#executeCommit"(): MaybePromise;
181
- "__#15411@#executeCommit1"(): MaybePromise;
182
- "__#15411@#executeCommit2"(): Promise<void> | undefined;
183
- "__#15411@#executePostCommit"(participants: Participant[]): MaybePromise;
184
- "__#15411@#executeRollback"(): Promise<void> | undefined;
185
- "__#15411@#locksChanged"(resources: Set<Resource>, how?: string): void;
186
- "__#15411@#assertAvailable"(): void;
178
+ "__#15412@#finalize"(status: Status, why: string, finalizer: () => MaybePromise): Promise<void> | undefined;
179
+ "__#15412@#executePreCommit"(): MaybePromise<void>;
180
+ "__#15412@#executeCommit"(): MaybePromise;
181
+ "__#15412@#executeCommit1"(): MaybePromise;
182
+ "__#15412@#executeCommit2"(): Promise<void> | undefined;
183
+ "__#15412@#executePostCommit"(participants: Participant[]): MaybePromise;
184
+ "__#15412@#executeRollback"(): Promise<void> | undefined;
185
+ "__#15412@#locksChanged"(resources: Set<Resource>, how?: string): void;
186
+ "__#15412@#assertAvailable"(): void;
187
187
  };
188
188
  Status: typeof Status;
189
189
  Resource: typeof Resource;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@matter/general",
3
- "version": "0.13.1-alpha.0-20250504-87f265a2e",
3
+ "version": "0.13.1-alpha.0-20250508-047aa0277",
4
4
  "description": "Non-Matter support for Matter.js",
5
5
  "keywords": [
6
6
  "iot",
@@ -36,7 +36,7 @@
36
36
  "@noble/curves": "^1.8.2"
37
37
  },
38
38
  "devDependencies": {
39
- "@matter/testing": "0.13.1-alpha.0-20250504-87f265a2e"
39
+ "@matter/testing": "0.13.1-alpha.0-20250508-047aa0277"
40
40
  },
41
41
  "files": [
42
42
  "dist/**/*",
@@ -5,6 +5,7 @@
5
5
  */
6
6
 
7
7
  import { Boot } from "#util/Boot.js";
8
+ import { MaybePromise } from "#util/Promises.js";
8
9
  import * as mod from "@noble/curves/abstract/modular";
9
10
  import * as utils from "@noble/curves/abstract/utils";
10
11
  import { p256 } from "@noble/curves/p256";
@@ -66,67 +67,62 @@ export abstract class Crypto {
66
67
  }
67
68
  };
68
69
 
69
- abstract ecdhGeneratePublicKey(): { publicKey: Uint8Array; ecdh: any };
70
- static readonly ecdhGeneratePublicKey = (): { publicKey: Uint8Array; ecdh: any } =>
71
- Crypto.get().ecdhGeneratePublicKey();
70
+ abstract ecdhGeneratePublicKey(): MaybePromise<{ publicKey: Uint8Array; ecdh: any }>;
71
+ static readonly ecdhGeneratePublicKey = () => Crypto.get().ecdhGeneratePublicKey();
72
72
 
73
- abstract ecdhGeneratePublicKeyAndSecret(peerPublicKey: Uint8Array): {
73
+ abstract ecdhGeneratePublicKeyAndSecret(peerPublicKey: Uint8Array): MaybePromise<{
74
74
  publicKey: Uint8Array;
75
75
  sharedSecret: Uint8Array;
76
- };
77
- static readonly ecdhGeneratePublicKeyAndSecret = (
78
- peerPublicKey: Uint8Array,
79
- ): { publicKey: Uint8Array; sharedSecret: Uint8Array } =>
76
+ }>;
77
+ static readonly ecdhGeneratePublicKeyAndSecret = (peerPublicKey: Uint8Array) =>
80
78
  Crypto.get().ecdhGeneratePublicKeyAndSecret(peerPublicKey);
81
79
 
82
- abstract ecdhGenerateSecret(peerPublicKey: Uint8Array, ecdh: any): Uint8Array;
83
- static readonly ecdhGenerateSecret = (peerPublicKey: Uint8Array, ecdh: any): Uint8Array =>
80
+ abstract ecdhGenerateSecret(peerPublicKey: Uint8Array, ecdh: any): MaybePromise<Uint8Array>;
81
+ static readonly ecdhGenerateSecret = (peerPublicKey: Uint8Array, ecdh: any) =>
84
82
  Crypto.get().ecdhGenerateSecret(peerPublicKey, ecdh);
85
83
 
86
- abstract hash(data: Uint8Array | Uint8Array[]): Uint8Array;
87
- static readonly hash = (data: Uint8Array | Uint8Array[]): Uint8Array => Crypto.get().hash(data);
84
+ abstract hash(data: Uint8Array | Uint8Array[]): MaybePromise<Uint8Array>;
85
+ static readonly hash = (data: Uint8Array | Uint8Array[]) => Crypto.get().hash(data);
88
86
 
89
- abstract pbkdf2(secret: Uint8Array, salt: Uint8Array, iteration: number, keyLength: number): Promise<Uint8Array>;
90
- static readonly pbkdf2 = (
87
+ abstract pbkdf2(
91
88
  secret: Uint8Array,
92
89
  salt: Uint8Array,
93
90
  iteration: number,
94
91
  keyLength: number,
95
- ): Promise<Uint8Array> => Crypto.get().pbkdf2(secret, salt, iteration, keyLength);
92
+ ): MaybePromise<Uint8Array>;
93
+ static readonly pbkdf2 = (secret: Uint8Array, salt: Uint8Array, iteration: number, keyLength: number) =>
94
+ Crypto.get().pbkdf2(secret, salt, iteration, keyLength);
96
95
 
97
- abstract hkdf(secret: Uint8Array, salt: Uint8Array, info: Uint8Array, length?: number): Promise<Uint8Array>;
98
- static readonly hkdf = (
99
- secret: Uint8Array,
100
- salt: Uint8Array,
101
- info: Uint8Array,
102
- length?: number,
103
- ): Promise<Uint8Array> => Crypto.get().hkdf(secret, salt, info, length);
96
+ abstract hkdf(secret: Uint8Array, salt: Uint8Array, info: Uint8Array, length?: number): MaybePromise<Uint8Array>;
97
+ static readonly hkdf = (secret: Uint8Array, salt: Uint8Array, info: Uint8Array, length?: number) =>
98
+ Crypto.get().hkdf(secret, salt, info, length);
104
99
 
105
- abstract hmac(key: Uint8Array, data: Uint8Array): Uint8Array;
106
- static readonly hmac = (key: Uint8Array, data: Uint8Array): Uint8Array => Crypto.get().hmac(key, data);
100
+ abstract hmac(key: Uint8Array, data: Uint8Array): MaybePromise<Uint8Array>;
101
+ static readonly hmac = (key: Uint8Array, data: Uint8Array) => Crypto.get().hmac(key, data);
107
102
 
108
- abstract sign(privateKey: JsonWebKey, data: Uint8Array | Uint8Array[], dsaEncoding?: CryptoDsaEncoding): Uint8Array;
109
- static readonly sign = (
103
+ abstract sign(
110
104
  privateKey: JsonWebKey,
111
105
  data: Uint8Array | Uint8Array[],
112
106
  dsaEncoding?: CryptoDsaEncoding,
113
- ): Uint8Array => Crypto.get().sign(privateKey, data, dsaEncoding);
107
+ ): MaybePromise<Uint8Array>;
108
+ static readonly sign = (privateKey: JsonWebKey, data: Uint8Array | Uint8Array[], dsaEncoding?: CryptoDsaEncoding) =>
109
+ Crypto.get().sign(privateKey, data, dsaEncoding);
114
110
 
115
111
  abstract verify(
116
112
  publicKey: JsonWebKey,
117
113
  data: Uint8Array,
118
114
  signature: Uint8Array,
119
115
  dsaEncoding?: CryptoDsaEncoding,
120
- ): void;
116
+ ): MaybePromise<void>;
121
117
  static readonly verify = (
122
118
  publicKey: JsonWebKey,
123
119
  data: Uint8Array,
124
120
  signature: Uint8Array,
125
121
  dsaEncoding?: CryptoDsaEncoding,
126
- ): void => Crypto.get().verify(publicKey, data, signature, dsaEncoding);
122
+ ) => Crypto.get().verify(publicKey, data, signature, dsaEncoding);
127
123
 
128
- abstract createKeyPair(): PrivateKey;
129
- static readonly createKeyPair = (): PrivateKey => Crypto.get().createKeyPair();
124
+ abstract createKeyPair(): MaybePromise<PrivateKey>;
125
+ static readonly createKeyPair = () => Crypto.get().createKeyPair();
130
126
  }
131
127
 
132
128
  Boot.init(() => {
@@ -92,7 +92,7 @@ export class Spake2p {
92
92
  }
93
93
 
94
94
  private async computeSecretAndVerifiers(X: Uint8Array, Y: Uint8Array, Z: Uint8Array, V: Uint8Array) {
95
- const TT_HASH = this.computeTranscriptHash(X, Y, Z, V);
95
+ const TT_HASH = await this.computeTranscriptHash(X, Y, Z, V);
96
96
  const Ka = TT_HASH.slice(0, 16);
97
97
  const Ke = TT_HASH.slice(16, 32);
98
98
 
@@ -100,8 +100,8 @@ export class Spake2p {
100
100
  const KcA = KcAB.slice(0, 16);
101
101
  const KcB = KcAB.slice(16, 32);
102
102
 
103
- const hAY = Crypto.hmac(KcA, Y);
104
- const hBX = Crypto.hmac(KcB, X);
103
+ const hAY = await Crypto.hmac(KcA, Y);
104
+ const hBX = await Crypto.hmac(KcB, X);
105
105
 
106
106
  return { Ke, hAY, hBX };
107
107
  }