@matter/general 0.16.0-alpha.0-20250902-38a7cc156 → 0.16.0-alpha.0-20250909-aecad94f3

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.
@@ -5,7 +5,8 @@
5
5
  */
6
6
  import { Bytes } from "#util/Bytes.js";
7
7
  import { MaybePromise } from "#util/Promises.js";
8
- import * as mod from "@noble/curves/abstract/modular";
8
+ import * as mod from "@noble/curves/abstract/modular.js";
9
+ import * as utils from "@noble/curves/utils.js";
9
10
  import { PrivateKey, PublicKey } from "./Key.js";
10
11
  export declare const ec: {
11
12
  mod(a: bigint, b: bigint): bigint;
@@ -21,55 +22,49 @@ export declare const ec: {
21
22
  FpLegendre<T>(Fp: mod.IField<T>, n: T): -1 | 0 | 1;
22
23
  FpIsSquare<T>(Fp: mod.IField<T>, n: T): boolean;
23
24
  nLength(n: bigint, nBitLength?: number): mod.NLength;
24
- Field(ORDER: bigint, bitLenOrOpts?: number | Partial<{
25
- sqrt: (n: bigint) => bigint;
25
+ Field(ORDER: bigint, opts?: Partial<{
26
26
  isLE: boolean;
27
27
  BITS: number;
28
- modFromBytes: boolean;
28
+ sqrt: (n: bigint) => bigint;
29
29
  allowedLengths?: readonly number[];
30
- }>, isLE?: boolean, opts?: {
31
- sqrt?: (n: bigint) => bigint;
32
- }): Readonly<mod.IField<bigint> & Required<Pick<mod.IField<bigint>, "isOdd">>>;
30
+ modFromBytes: boolean;
31
+ }>): Readonly<mod.IField<bigint> & Required<Pick<mod.IField<bigint>, "isOdd">>>;
33
32
  FpSqrtOdd<T>(Fp: mod.IField<T>, elm: T): T;
34
33
  FpSqrtEven<T>(Fp: mod.IField<T>, elm: T): T;
35
- hashToPrivateScalar(hash: string | Uint8Array, groupOrder: bigint, isLE?: boolean): bigint;
36
34
  getFieldBytesLength(fieldOrder: bigint): number;
37
35
  getMinHashLength(fieldOrder: bigint): number;
38
36
  mapHashToField(key: Uint8Array, fieldOrder: bigint, isLE?: boolean): Uint8Array;
39
37
  isNegativeLE: (num: bigint, modulo: bigint) => boolean;
40
- abytes: typeof import("@noble/hashes/utils").abytes;
41
- anumber: typeof import("@noble/hashes/utils").anumber;
42
- bytesToHex: typeof import("@noble/hashes/utils").bytesToHex;
43
- bytesToUtf8: typeof import("@noble/hashes/utils").bytesToUtf8;
44
- concatBytes: typeof import("@noble/hashes/utils").concatBytes;
45
- hexToBytes: typeof import("@noble/hashes/utils").hexToBytes;
46
- isBytes: typeof import("@noble/hashes/utils").isBytes;
47
- randomBytes: typeof import("@noble/hashes/utils").randomBytes;
48
- utf8ToBytes: typeof import("@noble/hashes/utils").utf8ToBytes;
49
- abool: typeof import("@noble/curves/utils").abool;
50
- numberToHexUnpadded: typeof import("@noble/curves/utils").numberToHexUnpadded;
51
- hexToNumber: typeof import("@noble/curves/utils").hexToNumber;
52
- bytesToNumberBE: typeof import("@noble/curves/utils").bytesToNumberBE;
53
- bytesToNumberLE: typeof import("@noble/curves/utils").bytesToNumberLE;
54
- numberToBytesBE: typeof import("@noble/curves/utils").numberToBytesBE;
55
- numberToBytesLE: typeof import("@noble/curves/utils").numberToBytesLE;
56
- numberToVarBytesBE: typeof import("@noble/curves/utils").numberToVarBytesBE;
57
- ensureBytes: typeof import("@noble/curves/utils").ensureBytes;
58
- equalBytes: typeof import("@noble/curves/utils").equalBytes;
59
- copyBytes: typeof import("@noble/curves/utils").copyBytes;
60
- asciiToBytes: typeof import("@noble/curves/utils").asciiToBytes;
61
- inRange: typeof import("@noble/curves/utils").inRange;
62
- aInRange: typeof import("@noble/curves/utils").aInRange;
63
- bitLen: typeof import("@noble/curves/utils").bitLen;
64
- bitGet: typeof import("@noble/curves/utils").bitGet;
65
- bitSet: typeof import("@noble/curves/utils").bitSet;
66
- bitMask: typeof import("@noble/curves/utils").bitMask;
67
- createHmacDrbg: typeof import("@noble/curves/utils").createHmacDrbg;
68
- notImplemented: typeof import("@noble/curves/utils").notImplemented;
69
- memoized: typeof import("@noble/curves/utils").memoized;
70
- validateObject: typeof import("@noble/curves/utils").validateObject;
71
- isHash: typeof import("@noble/curves/utils").isHash;
72
- p256: import("@noble/curves/_shortw_utils").CurveFnWithCreate;
38
+ abool(value: boolean, title?: string): boolean;
39
+ asafenumber(value: number, title?: string): void;
40
+ numberToHexUnpadded(num: number | bigint): string;
41
+ hexToNumber(hex: string): bigint;
42
+ bytesToNumberBE(bytes: Uint8Array): bigint;
43
+ bytesToNumberLE(bytes: Uint8Array): bigint;
44
+ numberToBytesBE(n: number | bigint, len: number): Uint8Array;
45
+ numberToBytesLE(n: number | bigint, len: number): Uint8Array;
46
+ numberToVarBytesBE(n: number | bigint): Uint8Array;
47
+ equalBytes(a: Uint8Array, b: Uint8Array): boolean;
48
+ copyBytes(bytes: Uint8Array): Uint8Array;
49
+ asciiToBytes(ascii: string): Uint8Array;
50
+ inRange(n: bigint, min: bigint, max: bigint): boolean;
51
+ aInRange(title: string, n: bigint, min: bigint, max: bigint): void;
52
+ bitLen(n: bigint): number;
53
+ bitGet(n: bigint, pos: number): bigint;
54
+ bitSet(n: bigint, pos: number, value: boolean): bigint;
55
+ createHmacDrbg<T>(hashLen: number, qByteLen: number, hmacFn: (key: Uint8Array, message: Uint8Array) => Uint8Array): (seed: Uint8Array, predicate: (v: Uint8Array) => T | undefined) => T;
56
+ validateObject(object: Record<string, any>, fields?: Record<string, string>, optFields?: Record<string, string>): void;
57
+ memoized<T extends object, R, O extends any[]>(fn: (arg: T, ...args: O) => R): (arg: T, ...args: O) => R;
58
+ abytes: typeof utils.abytes;
59
+ anumber: typeof utils.anumber;
60
+ bytesToHex: typeof utils.bytesToHex;
61
+ concatBytes: typeof utils.concatBytes;
62
+ hexToBytes: typeof utils.hexToBytes;
63
+ isBytes: typeof utils.isBytes;
64
+ randomBytes: typeof utils.randomBytes;
65
+ bitMask: (n: number) => bigint;
66
+ notImplemented: () => never;
67
+ p256: import("@noble/curves/abstract/weierstrass.js").ECDSA;
73
68
  };
74
69
  export declare const CRYPTO_ENCRYPT_ALGORITHM = "aes-128-ccm";
75
70
  export declare const CRYPTO_HASH_ALGORITHM = "sha256";
@@ -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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"}
@@ -41,16 +41,16 @@ module.exports = __toCommonJS(Crypto_exports);
41
41
  var import_Diagnostic = require("#log/Diagnostic.js");
42
42
  var import_Logger = require("#log/Logger.js");
43
43
  var import_Bytes = require("#util/Bytes.js");
44
- var mod = __toESM(require("@noble/curves/abstract/modular"), 1);
45
- var utils = __toESM(require("@noble/curves/abstract/utils"), 1);
46
- var import_p256 = require("@noble/curves/p256");
44
+ var mod = __toESM(require("@noble/curves/abstract/modular.js"), 1);
45
+ var import_nist = require("@noble/curves/nist.js");
46
+ var utils = __toESM(require("@noble/curves/utils.js"), 1);
47
47
  /**
48
48
  * @license
49
49
  * Copyright 2022-2025 Matter.js Authors
50
50
  * SPDX-License-Identifier: Apache-2.0
51
51
  */
52
52
  const ec = {
53
- p256: import_p256.p256,
53
+ p256: import_nist.p256,
54
54
  ...utils,
55
55
  ...mod
56
56
  };
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/crypto/Crypto.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,wBAA2B;AAC3B,oBAAuB;AACvB,mBAAsB;AAEtB,UAAqB;AACrB,YAAuB;AACvB,kBAAqB;AAbrB;AAAA;AAAA;AAAA;AAAA;AAgBO,MAAM,KAAK;AAAA,EACd;AAAA,EACA,GAAG;AAAA,EACH,GAAG;AACP;AAEO,MAAM,2BAA2B;AACjC,MAAM,wBAAwB;AAC9B,MAAM,kBAAkB;AACxB,MAAM,sBAAsB;AAC5B,MAAM,yBAAyB;AAC/B,MAAM,8BAA8B;AAG3C,MAAM,SAAS,qBAAO,IAAI,QAAQ;AAa3B,MAAe,OAAO;AAAA,EAsEzB,IAAI,cAAc;AACd,WAAO,mBAAM,GAAG,KAAK,YAAY,CAAC,CAAC,EAAE,CAAC;AAAA,EAC1C;AAAA,EAEA,IAAI,eAAe;AACf,WAAO,mBAAM,WAAW,KAAK,YAAY,CAAC,CAAC,EAAE,UAAU,CAAC;AAAA,EAC5D;AAAA,EAEA,IAAI,eAAe;AACf,WAAO,mBAAM,WAAW,KAAK,YAAY,CAAC,CAAC,EAAE,UAAU,CAAC;AAAA,EAC5D;AAAA,EAEA,IAAI,kBAAkB;AAClB,WAAO,mBAAM,WAAW,KAAK,YAAY,CAAC,CAAC,EAAE,aAAa,CAAC;AAAA,EAC/D;AAAA,EAEA,aAAa,MAAc,UAAmB;AAC1C,QAAI,aAAa,QAAW;AACxB,aAAO,mBAAM,SAAS,KAAK,YAAY,IAAI,CAAC;AAAA,IAChD;AAEA,WAAO,MAAM;AACT,YAAM,SAAS,mBAAM,SAAS,KAAK,YAAY,IAAI,CAAC;AACpD,UAAI,SAAS,SAAU,QAAO;AAAA,IAClC;AAAA,EACJ;AAAA,EAEA,YAAY,WAAoB;AAC5B,UAAM,UAAU,CAAC,SAAS,6BAAW,OAAO,KAAK,kBAAkB,GAAG,uBAAuB;AAC7F,QAAI,WAAW;AACX,cAAQ,KAAK,OAAO,SAAS;AAAA,IACjC;AACA,WAAO,MAAM,GAAG,OAAO;AAAA,EAC3B;AACJ;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,wBAA2B;AAC3B,oBAAuB;AACvB,mBAAsB;AAEtB,UAAqB;AACrB,kBAAqB;AACrB,YAAuB;AAbvB;AAAA;AAAA;AAAA;AAAA;AAgBO,MAAM,KAAK;AAAA,EACd;AAAA,EACA,GAAG;AAAA,EACH,GAAG;AACP;AAEO,MAAM,2BAA2B;AACjC,MAAM,wBAAwB;AAC9B,MAAM,kBAAkB;AACxB,MAAM,sBAAsB;AAC5B,MAAM,yBAAyB;AAC/B,MAAM,8BAA8B;AAG3C,MAAM,SAAS,qBAAO,IAAI,QAAQ;AAa3B,MAAe,OAAO;AAAA,EAsEzB,IAAI,cAAc;AACd,WAAO,mBAAM,GAAG,KAAK,YAAY,CAAC,CAAC,EAAE,CAAC;AAAA,EAC1C;AAAA,EAEA,IAAI,eAAe;AACf,WAAO,mBAAM,WAAW,KAAK,YAAY,CAAC,CAAC,EAAE,UAAU,CAAC;AAAA,EAC5D;AAAA,EAEA,IAAI,eAAe;AACf,WAAO,mBAAM,WAAW,KAAK,YAAY,CAAC,CAAC,EAAE,UAAU,CAAC;AAAA,EAC5D;AAAA,EAEA,IAAI,kBAAkB;AAClB,WAAO,mBAAM,WAAW,KAAK,YAAY,CAAC,CAAC,EAAE,aAAa,CAAC;AAAA,EAC/D;AAAA,EAEA,aAAa,MAAc,UAAmB;AAC1C,QAAI,aAAa,QAAW;AACxB,aAAO,mBAAM,SAAS,KAAK,YAAY,IAAI,CAAC;AAAA,IAChD;AAEA,WAAO,MAAM;AACT,YAAM,SAAS,mBAAM,SAAS,KAAK,YAAY,IAAI,CAAC;AACpD,UAAI,SAAS,SAAU,QAAO;AAAA,IAClC;AAAA,EACJ;AAAA,EAEA,YAAY,WAAoB;AAC5B,UAAM,UAAU,CAAC,SAAS,6BAAW,OAAO,KAAK,kBAAkB,GAAG,uBAAuB;AAC7F,QAAI,WAAW;AACX,cAAQ,KAAK,OAAO,SAAS;AAAA,IACjC;AACA,WAAO,MAAM,GAAG,OAAO;AAAA,EAC3B;AACJ;",
5
5
  "names": []
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Key.d.ts","sourceRoot":"","sources":["../../../src/crypto/Key.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Key.d.ts","sourceRoot":"","sources":["../../../src/crypto/Key.ts"],"names":[],"mappings":"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"}
@@ -39,7 +39,7 @@ var import_CryptoError = require("./CryptoError.js");
39
39
  */
40
40
  const {
41
41
  numberToBytesBE,
42
- p256: { Point, getSharedSecret }
42
+ p256: { getPublicKey, Point, getSharedSecret }
43
43
  } = import_Crypto.ec;
44
44
  const JWK_KEYS = [
45
45
  "crv",
@@ -308,7 +308,8 @@ function Key(properties) {
308
308
  default:
309
309
  throw new import_CryptoError.KeyInputError(`Unsupported elliptic curve ${crv}`);
310
310
  }
311
- const ecKey = Point.fromPrivateKey(import_Bytes.Bytes.of(that.privateKey));
311
+ const pubKeyBytes = getPublicKey(import_Bytes.Bytes.of(that.privateKey));
312
+ const ecKey = Point.fromBytes(pubKeyBytes);
312
313
  that.xBits = numberToBytesBE(ecKey.x, keyLength);
313
314
  that.yBits = numberToBytesBE(ecKey.y, keyLength);
314
315
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/crypto/Key.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["KeyType", "CurveType", "Asn1ObjectID", "Translators", "publicBits", "Aliases", "Base64Codecs", "AssertedAliases", "Key"]
6
6
  }
@@ -69,7 +69,7 @@ function MockCrypto(index = 128, implementation = import_StandardCrypto.Standard
69
69
  return result;
70
70
  };
71
71
  crypto.createKeyPair = function getRandomDataNONENTROPIC() {
72
- const privateBits = import_Crypto.ec.mapHashToField(import_Bytes.Bytes.of(crypto.randomBytes(48)), import_Crypto.ec.p256.CURVE.n);
72
+ const privateBits = import_Crypto.ec.mapHashToField(import_Bytes.Bytes.of(crypto.randomBytes(48)), import_Crypto.ec.p256.Point.CURVE().n);
73
73
  return (0, import_Key.Key)({
74
74
  kty: import_Key.KeyType.EC,
75
75
  crv: import_Key.CurveType.p256,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/crypto/MockCrypto.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,yBAAoC;AACpC,mBAAsB;AACtB,oBAA2B;AAC3B,iBAAoD;AACpD,4BAA+B;AAV/B;AAAA;AAAA;AAAA;AAAA;AAkCO,SAAS,WAAW,QAAgB,KAAM,iBAAmC,sCAAgB;AAChG,MAAI,QAAQ,KAAK,QAAQ,KAAK;AAC1B,UAAM,IAAI,uCAAoB,uCAAuC;AAAA,EACzE;AAEA,QAAM,SAAS,IAAI,eAAe;AAElC,QAAM,EAAE,aAAa,cAAc,IAAI;AAEvC,SAAO,iBAAiB,QAAQ;AAAA,IAC5B,OAAO;AAAA,MACH,MAAM;AACF,eAAO;AAAA,MACX;AAAA,MAEA,IAAI,UAAkB;AAClB,gBAAQ,WAAW;AAAA,MACvB;AAAA,IACJ;AAAA,IAEA,UAAU;AAAA,MACN,MAAM;AACF,eAAO,OAAO,gBAAgB;AAAA,MAClC;AAAA,MAEA,IAAI,UAAmB;AACnB,YAAI,UAAU;AACV,iBAAO,cAAc;AACrB,iBAAO,gBAAgB;AAAA,QAC3B,OAAO;AACH,yBAAe;AAAA,QACnB;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ,CAAC;AAED,iBAAe;AAEf,SAAO;AAEP,WAAS,iBAAiB;AAEtB,WAAO,cAAc,SAAS,yBAAyB,QAAQ;AAC3D,YAAM,SAAS,IAAI,WAAW,MAAM;AACpC,aAAO,KAAK,KAAK;AACjB,aAAO;AAAA,IACX;AAGA,WAAO,gBAAgB,SAAS,2BAA2B;AACvD,YAAM,cAAc,iBAAG,eAAe,mBAAM,GAAG,OAAO,YAAY,EAAE,CAAC,GAAG,iBAAG,KAAK,MAAM,CAAC;AACvF,iBAAO,gBAAI;AAAA,QACP,KAAK,mBAAQ;AAAA,QACb,KAAK,qBAAU;AAAA,QACf;AAAA,MACJ,CAAC;AAAA,IACL;AAAA,EACJ;AACJ;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,yBAAoC;AACpC,mBAAsB;AACtB,oBAA2B;AAC3B,iBAAoD;AACpD,4BAA+B;AAV/B;AAAA;AAAA;AAAA;AAAA;AAkCO,SAAS,WAAW,QAAgB,KAAM,iBAAmC,sCAAgB;AAChG,MAAI,QAAQ,KAAK,QAAQ,KAAK;AAC1B,UAAM,IAAI,uCAAoB,uCAAuC;AAAA,EACzE;AAEA,QAAM,SAAS,IAAI,eAAe;AAElC,QAAM,EAAE,aAAa,cAAc,IAAI;AAEvC,SAAO,iBAAiB,QAAQ;AAAA,IAC5B,OAAO;AAAA,MACH,MAAM;AACF,eAAO;AAAA,MACX;AAAA,MAEA,IAAI,UAAkB;AAClB,gBAAQ,WAAW;AAAA,MACvB;AAAA,IACJ;AAAA,IAEA,UAAU;AAAA,MACN,MAAM;AACF,eAAO,OAAO,gBAAgB;AAAA,MAClC;AAAA,MAEA,IAAI,UAAmB;AACnB,YAAI,UAAU;AACV,iBAAO,cAAc;AACrB,iBAAO,gBAAgB;AAAA,QAC3B,OAAO;AACH,yBAAe;AAAA,QACnB;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ,CAAC;AAED,iBAAe;AAEf,SAAO;AAEP,WAAS,iBAAiB;AAEtB,WAAO,cAAc,SAAS,yBAAyB,QAAQ;AAC3D,YAAM,SAAS,IAAI,WAAW,MAAM;AACpC,aAAO,KAAK,KAAK;AACjB,aAAO;AAAA,IACX;AAGA,WAAO,gBAAgB,SAAS,2BAA2B;AACvD,YAAM,cAAc,iBAAG,eAAe,mBAAM,GAAG,OAAO,YAAY,EAAE,CAAC,GAAG,iBAAG,KAAK,MAAM,MAAM,EAAE,CAAC;AAC/F,iBAAO,gBAAI;AAAA,QACP,KAAK,mBAAQ;AAAA,QACb,KAAK,qBAAU;AAAA,QACf;AAAA,MACJ,CAAC;AAAA,IACL;AAAA,EACJ;AACJ;",
5
5
  "names": []
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Spake2p.d.ts","sourceRoot":"","sources":["../../../src/crypto/Spake2p.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,KAAK,EAAU,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAM,MAAM,aAAa,CAAC;AAgBzC,MAAM,WAAW,eAAe;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,KAAK,CAAC;CACf;AAED,qBAAa,OAAO;;WAMH,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM;;;;WAW9E,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM;;;;IAMrF,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM;gBAK5C,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM;IAOtE,QAAQ,IAAI,KAAK;IAKjB,QAAQ,IAAI,KAAK;IAKX,8BAA8B,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK;;;;;IAa7D,8BAA8B,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK;;;;;YAanD,yBAAyB;IAiBvC,OAAO,CAAC,qBAAqB;IAe7B,OAAO,CAAC,YAAY;CAIvB"}
1
+ {"version":3,"file":"Spake2p.d.ts","sourceRoot":"","sources":["../../../src/crypto/Spake2p.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,KAAK,EAAU,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAM,MAAM,aAAa,CAAC;AAgBzC,MAAM,WAAW,eAAe;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,KAAK,CAAC;CACf;AAED,qBAAa,OAAO;;WAMH,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM;;;;WAY9E,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM;;;;IAMrF,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM;gBAM5C,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM;IAOtE,QAAQ,IAAI,KAAK;IAKjB,QAAQ,IAAI,KAAK;IAKX,8BAA8B,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK;;;;;IAa7D,8BAA8B,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK;;;;;YAanD,yBAAyB;IAiBvC,OAAO,CAAC,qBAAqB;IAe7B,OAAO,CAAC,YAAY;CAIvB"}
@@ -32,13 +32,13 @@ var import_CryptoConstants = require("./CryptoConstants.js");
32
32
  * SPDX-License-Identifier: Apache-2.0
33
33
  */
34
34
  const {
35
- p256: { ProjectivePoint, CURVE: P256_CURVE },
35
+ p256: { Point },
36
36
  numberToBytesBE,
37
37
  bytesToNumberBE,
38
38
  mod
39
39
  } = import_Crypto.ec;
40
- const M = ProjectivePoint.fromHex("02886e2f97ace46e55ba9dd7242579f2993b64e16ef3dcab95afd497333d8fa12f");
41
- const N = ProjectivePoint.fromHex("03d8bbd6c639c62937b04d997f38c3770719c629d7014d49a24b4f98baa1292b49");
40
+ const M = Point.fromHex("02886e2f97ace46e55ba9dd7242579f2993b64e16ef3dcab95afd497333d8fa12f");
41
+ const N = Point.fromHex("03d8bbd6c639c62937b04d997f38c3770719c629d7014d49a24b4f98baa1292b49");
42
42
  const CRYPTO_W_SIZE_BYTES = import_CryptoConstants.CRYPTO_GROUP_SIZE_BYTES + 8;
43
43
  class Spake2p {
44
44
  #crypto;
@@ -51,17 +51,19 @@ class Spake2p {
51
51
  const ws = import_Bytes.Bytes.of(
52
52
  await crypto.createPbkdf2Key(pinWriter.toByteArray(), salt, iterations, CRYPTO_W_SIZE_BYTES * 2)
53
53
  );
54
- const w0 = mod(bytesToNumberBE(ws.slice(0, 40)), P256_CURVE.n);
55
- const w1 = mod(bytesToNumberBE(ws.slice(40, 80)), P256_CURVE.n);
54
+ const curve = Point.CURVE();
55
+ const w0 = mod(bytesToNumberBE(ws.slice(0, 40)), curve.n);
56
+ const w1 = mod(bytesToNumberBE(ws.slice(40, 80)), curve.n);
56
57
  return { w0, w1 };
57
58
  }
58
59
  static async computeW0L(crypto, pbkdfParameters, pin) {
59
60
  const { w0, w1 } = await this.computeW0W1(crypto, pbkdfParameters, pin);
60
- const L = ProjectivePoint.BASE.multiply(w1).toRawBytes(false);
61
+ const L = Point.BASE.multiply(w1).toBytes(false);
61
62
  return { w0, L };
62
63
  }
63
64
  static create(crypto, context, w0) {
64
- const random = crypto.randomBigInt(32, P256_CURVE.Fp.ORDER);
65
+ const curve = Point.CURVE();
66
+ const random = crypto.randomBigInt(32, curve.p);
65
67
  return new Spake2p(crypto, context, random, w0);
66
68
  }
67
69
  constructor(crypto, context, random, w0) {
@@ -71,15 +73,15 @@ class Spake2p {
71
73
  this.#w0 = w0;
72
74
  }
73
75
  computeX() {
74
- const X = ProjectivePoint.BASE.multiply(this.#random).add(M.multiply(this.#w0));
75
- return X.toRawBytes(false);
76
+ const X = Point.BASE.multiply(this.#random).add(M.multiply(this.#w0));
77
+ return X.toBytes(false);
76
78
  }
77
79
  computeY() {
78
- const Y = ProjectivePoint.BASE.multiply(this.#random).add(N.multiply(this.#w0));
79
- return Y.toRawBytes(false);
80
+ const Y = Point.BASE.multiply(this.#random).add(N.multiply(this.#w0));
81
+ return Y.toBytes(false);
80
82
  }
81
83
  async computeSecretAndVerifiersFromY(w1, X, Y) {
82
- const YPoint = ProjectivePoint.fromHex(import_Bytes.Bytes.of(Y));
84
+ const YPoint = Point.fromBytes(import_Bytes.Bytes.of(Y));
83
85
  try {
84
86
  YPoint.assertValidity();
85
87
  } catch (error) {
@@ -88,11 +90,11 @@ class Spake2p {
88
90
  const yNwo = YPoint.add(N.multiply(this.#w0).negate());
89
91
  const Z = yNwo.multiply(this.#random);
90
92
  const V = yNwo.multiply(w1);
91
- return this.computeSecretAndVerifiers(X, Y, import_Bytes.Bytes.of(Z.toRawBytes(false)), import_Bytes.Bytes.of(V.toRawBytes(false)));
93
+ return this.computeSecretAndVerifiers(X, Y, Z.toBytes(false), V.toBytes(false));
92
94
  }
93
95
  async computeSecretAndVerifiersFromX(L, X, Y) {
94
- const XPoint = ProjectivePoint.fromHex(import_Bytes.Bytes.of(X));
95
- const LPoint = ProjectivePoint.fromHex(import_Bytes.Bytes.of(L));
96
+ const XPoint = Point.fromBytes(import_Bytes.Bytes.of(X));
97
+ const LPoint = Point.fromBytes(import_Bytes.Bytes.of(L));
96
98
  try {
97
99
  XPoint.assertValidity();
98
100
  } catch (error) {
@@ -100,7 +102,7 @@ class Spake2p {
100
102
  }
101
103
  const Z = XPoint.add(M.multiply(this.#w0).negate()).multiply(this.#random);
102
104
  const V = LPoint.multiply(this.#random);
103
- return this.computeSecretAndVerifiers(X, Y, import_Bytes.Bytes.of(Z.toRawBytes(false)), import_Bytes.Bytes.of(V.toRawBytes(false)));
105
+ return this.computeSecretAndVerifiers(X, Y, Z.toBytes(false), V.toBytes(false));
104
106
  }
105
107
  async computeSecretAndVerifiers(X, Y, Z, V) {
106
108
  const TT_HASH = import_Bytes.Bytes.of(await this.computeTranscriptHash(X, Y, Z, V));
@@ -120,8 +122,8 @@ class Spake2p {
120
122
  this.addToContext(TTwriter, this.#context);
121
123
  this.addToContext(TTwriter, import_Bytes.Bytes.fromString(""));
122
124
  this.addToContext(TTwriter, import_Bytes.Bytes.fromString(""));
123
- this.addToContext(TTwriter, import_Bytes.Bytes.of(M.toRawBytes(false)));
124
- this.addToContext(TTwriter, import_Bytes.Bytes.of(N.toRawBytes(false)));
125
+ this.addToContext(TTwriter, M.toBytes(false));
126
+ this.addToContext(TTwriter, N.toBytes(false));
125
127
  this.addToContext(TTwriter, X);
126
128
  this.addToContext(TTwriter, Y);
127
129
  this.addToContext(TTwriter, Z);
@@ -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
  }
@@ -5,7 +5,8 @@
5
5
  */
6
6
  import { Bytes } from "#util/Bytes.js";
7
7
  import { MaybePromise } from "#util/Promises.js";
8
- import * as mod from "@noble/curves/abstract/modular";
8
+ import * as mod from "@noble/curves/abstract/modular.js";
9
+ import * as utils from "@noble/curves/utils.js";
9
10
  import { PrivateKey, PublicKey } from "./Key.js";
10
11
  export declare const ec: {
11
12
  mod(a: bigint, b: bigint): bigint;
@@ -21,55 +22,49 @@ export declare const ec: {
21
22
  FpLegendre<T>(Fp: mod.IField<T>, n: T): -1 | 0 | 1;
22
23
  FpIsSquare<T>(Fp: mod.IField<T>, n: T): boolean;
23
24
  nLength(n: bigint, nBitLength?: number): mod.NLength;
24
- Field(ORDER: bigint, bitLenOrOpts?: number | Partial<{
25
- sqrt: (n: bigint) => bigint;
25
+ Field(ORDER: bigint, opts?: Partial<{
26
26
  isLE: boolean;
27
27
  BITS: number;
28
- modFromBytes: boolean;
28
+ sqrt: (n: bigint) => bigint;
29
29
  allowedLengths?: readonly number[];
30
- }>, isLE?: boolean, opts?: {
31
- sqrt?: (n: bigint) => bigint;
32
- }): Readonly<mod.IField<bigint> & Required<Pick<mod.IField<bigint>, "isOdd">>>;
30
+ modFromBytes: boolean;
31
+ }>): Readonly<mod.IField<bigint> & Required<Pick<mod.IField<bigint>, "isOdd">>>;
33
32
  FpSqrtOdd<T>(Fp: mod.IField<T>, elm: T): T;
34
33
  FpSqrtEven<T>(Fp: mod.IField<T>, elm: T): T;
35
- hashToPrivateScalar(hash: string | Uint8Array, groupOrder: bigint, isLE?: boolean): bigint;
36
34
  getFieldBytesLength(fieldOrder: bigint): number;
37
35
  getMinHashLength(fieldOrder: bigint): number;
38
36
  mapHashToField(key: Uint8Array, fieldOrder: bigint, isLE?: boolean): Uint8Array;
39
37
  isNegativeLE: (num: bigint, modulo: bigint) => boolean;
40
- abytes: typeof import("@noble/hashes/utils").abytes;
41
- anumber: typeof import("@noble/hashes/utils").anumber;
42
- bytesToHex: typeof import("@noble/hashes/utils").bytesToHex;
43
- bytesToUtf8: typeof import("@noble/hashes/utils").bytesToUtf8;
44
- concatBytes: typeof import("@noble/hashes/utils").concatBytes;
45
- hexToBytes: typeof import("@noble/hashes/utils").hexToBytes;
46
- isBytes: typeof import("@noble/hashes/utils").isBytes;
47
- randomBytes: typeof import("@noble/hashes/utils").randomBytes;
48
- utf8ToBytes: typeof import("@noble/hashes/utils").utf8ToBytes;
49
- abool: typeof import("@noble/curves/utils").abool;
50
- numberToHexUnpadded: typeof import("@noble/curves/utils").numberToHexUnpadded;
51
- hexToNumber: typeof import("@noble/curves/utils").hexToNumber;
52
- bytesToNumberBE: typeof import("@noble/curves/utils").bytesToNumberBE;
53
- bytesToNumberLE: typeof import("@noble/curves/utils").bytesToNumberLE;
54
- numberToBytesBE: typeof import("@noble/curves/utils").numberToBytesBE;
55
- numberToBytesLE: typeof import("@noble/curves/utils").numberToBytesLE;
56
- numberToVarBytesBE: typeof import("@noble/curves/utils").numberToVarBytesBE;
57
- ensureBytes: typeof import("@noble/curves/utils").ensureBytes;
58
- equalBytes: typeof import("@noble/curves/utils").equalBytes;
59
- copyBytes: typeof import("@noble/curves/utils").copyBytes;
60
- asciiToBytes: typeof import("@noble/curves/utils").asciiToBytes;
61
- inRange: typeof import("@noble/curves/utils").inRange;
62
- aInRange: typeof import("@noble/curves/utils").aInRange;
63
- bitLen: typeof import("@noble/curves/utils").bitLen;
64
- bitGet: typeof import("@noble/curves/utils").bitGet;
65
- bitSet: typeof import("@noble/curves/utils").bitSet;
66
- bitMask: typeof import("@noble/curves/utils").bitMask;
67
- createHmacDrbg: typeof import("@noble/curves/utils").createHmacDrbg;
68
- notImplemented: typeof import("@noble/curves/utils").notImplemented;
69
- memoized: typeof import("@noble/curves/utils").memoized;
70
- validateObject: typeof import("@noble/curves/utils").validateObject;
71
- isHash: typeof import("@noble/curves/utils").isHash;
72
- p256: import("@noble/curves/_shortw_utils").CurveFnWithCreate;
38
+ abool(value: boolean, title?: string): boolean;
39
+ asafenumber(value: number, title?: string): void;
40
+ numberToHexUnpadded(num: number | bigint): string;
41
+ hexToNumber(hex: string): bigint;
42
+ bytesToNumberBE(bytes: Uint8Array): bigint;
43
+ bytesToNumberLE(bytes: Uint8Array): bigint;
44
+ numberToBytesBE(n: number | bigint, len: number): Uint8Array;
45
+ numberToBytesLE(n: number | bigint, len: number): Uint8Array;
46
+ numberToVarBytesBE(n: number | bigint): Uint8Array;
47
+ equalBytes(a: Uint8Array, b: Uint8Array): boolean;
48
+ copyBytes(bytes: Uint8Array): Uint8Array;
49
+ asciiToBytes(ascii: string): Uint8Array;
50
+ inRange(n: bigint, min: bigint, max: bigint): boolean;
51
+ aInRange(title: string, n: bigint, min: bigint, max: bigint): void;
52
+ bitLen(n: bigint): number;
53
+ bitGet(n: bigint, pos: number): bigint;
54
+ bitSet(n: bigint, pos: number, value: boolean): bigint;
55
+ createHmacDrbg<T>(hashLen: number, qByteLen: number, hmacFn: (key: Uint8Array, message: Uint8Array) => Uint8Array): (seed: Uint8Array, predicate: (v: Uint8Array) => T | undefined) => T;
56
+ validateObject(object: Record<string, any>, fields?: Record<string, string>, optFields?: Record<string, string>): void;
57
+ memoized<T extends object, R, O extends any[]>(fn: (arg: T, ...args: O) => R): (arg: T, ...args: O) => R;
58
+ abytes: typeof utils.abytes;
59
+ anumber: typeof utils.anumber;
60
+ bytesToHex: typeof utils.bytesToHex;
61
+ concatBytes: typeof utils.concatBytes;
62
+ hexToBytes: typeof utils.hexToBytes;
63
+ isBytes: typeof utils.isBytes;
64
+ randomBytes: typeof utils.randomBytes;
65
+ bitMask: (n: number) => bigint;
66
+ notImplemented: () => never;
67
+ p256: import("@noble/curves/abstract/weierstrass.js").ECDSA;
73
68
  };
74
69
  export declare const CRYPTO_ENCRYPT_ALGORITHM = "aes-128-ccm";
75
70
  export declare const CRYPTO_HASH_ALGORITHM = "sha256";
@@ -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":"AAAA;;;;GAIG;AAKH,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,KAAK,GAAG,MAAM,mCAAmC,CAAC;AAEzD,OAAO,KAAK,KAAK,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAEjD,eAAO,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gEAqGK,GAAI,yBACD,GAAI;;;;;;;;;;;CAlG1B,CAAC;AAEF,eAAO,MAAM,wBAAwB,gBAAgB,CAAC;AACtD,eAAO,MAAM,qBAAqB,WAAW,CAAC;AAC9C,eAAO,MAAM,eAAe,eAAe,CAAC;AAC5C,eAAO,MAAM,mBAAmB,KAAK,CAAC;AACtC,eAAO,MAAM,sBAAsB,KAAK,CAAC;AACzC,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAC9C,MAAM,MAAM,iBAAiB,GAAG,YAAY,GAAG,KAAK,CAAC;AAIrD;;;;;;;;;;GAUG;AACH,8BAAsB,MAAM;IACxB;;OAEG;IACH,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IAEpC;;OAEG;IACH,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK;IAE3E;;OAEG;IACH,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK;IAE3E;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK;IAE3C;;OAEG;IACH,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,GAAG,KAAK,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC;IAElE;;OAEG;IACH,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC;IAE/G;;OAEG;IACH,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC;IAErG;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC;IAE/D;;OAEG;IACH,QAAQ,CAAC,SAAS,CACd,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,KAAK,GAAG,KAAK,EAAE,EACrB,WAAW,CAAC,EAAE,iBAAiB,GAChC,YAAY,CAAC,KAAK,CAAC;IAEtB;;OAEG;IACH,QAAQ,CAAC,WAAW,CAChB,SAAS,EAAE,UAAU,EACrB,IAAI,EAAE,KAAK,EACX,SAAS,EAAE,KAAK,EAChB,WAAW,CAAC,EAAE,iBAAiB,GAChC,YAAY,CAAC,IAAI,CAAC;IAErB;;OAEG;IACH,QAAQ,CAAC,aAAa,IAAI,YAAY,CAAC,UAAU,CAAC;IAElD;;OAEG;IACH,QAAQ,CAAC,gBAAgB,CAAC,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;IAEnF,IAAI,WAAW,WAEd;IAED,IAAI,YAAY,WAEf;IAED,IAAI,YAAY,WAEf;IAED,IAAI,eAAe,WAElB;IAED,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IAW5C,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM;CAOjC"}
@@ -6,9 +6,9 @@
6
6
  import { Diagnostic } from "#log/Diagnostic.js";
7
7
  import { Logger } from "#log/Logger.js";
8
8
  import { Bytes } from "#util/Bytes.js";
9
- import * as mod from "@noble/curves/abstract/modular";
10
- import * as utils from "@noble/curves/abstract/utils";
11
- import { p256 } from "@noble/curves/p256";
9
+ import * as mod from "@noble/curves/abstract/modular.js";
10
+ import { p256 } from "@noble/curves/nist.js";
11
+ import * as utils from "@noble/curves/utils.js";
12
12
  const ec = {
13
13
  p256,
14
14
  ...utils,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/crypto/Crypto.ts"],
4
- "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,SAAS,kBAAkB;AAC3B,SAAS,cAAc;AACvB,SAAS,aAAa;AAEtB,YAAY,SAAS;AACrB,YAAY,WAAW;AACvB,SAAS,YAAY;AAGd,MAAM,KAAK;AAAA,EACd;AAAA,EACA,GAAG;AAAA,EACH,GAAG;AACP;AAEO,MAAM,2BAA2B;AACjC,MAAM,wBAAwB;AAC9B,MAAM,kBAAkB;AACxB,MAAM,sBAAsB;AAC5B,MAAM,yBAAyB;AAC/B,MAAM,8BAA8B;AAG3C,MAAM,SAAS,OAAO,IAAI,QAAQ;AAa3B,MAAe,OAAO;AAAA,EAsEzB,IAAI,cAAc;AACd,WAAO,MAAM,GAAG,KAAK,YAAY,CAAC,CAAC,EAAE,CAAC;AAAA,EAC1C;AAAA,EAEA,IAAI,eAAe;AACf,WAAO,MAAM,WAAW,KAAK,YAAY,CAAC,CAAC,EAAE,UAAU,CAAC;AAAA,EAC5D;AAAA,EAEA,IAAI,eAAe;AACf,WAAO,MAAM,WAAW,KAAK,YAAY,CAAC,CAAC,EAAE,UAAU,CAAC;AAAA,EAC5D;AAAA,EAEA,IAAI,kBAAkB;AAClB,WAAO,MAAM,WAAW,KAAK,YAAY,CAAC,CAAC,EAAE,aAAa,CAAC;AAAA,EAC/D;AAAA,EAEA,aAAa,MAAc,UAAmB;AAC1C,QAAI,aAAa,QAAW;AACxB,aAAO,MAAM,SAAS,KAAK,YAAY,IAAI,CAAC;AAAA,IAChD;AAEA,WAAO,MAAM;AACT,YAAM,SAAS,MAAM,SAAS,KAAK,YAAY,IAAI,CAAC;AACpD,UAAI,SAAS,SAAU,QAAO;AAAA,IAClC;AAAA,EACJ;AAAA,EAEA,YAAY,WAAoB;AAC5B,UAAM,UAAU,CAAC,SAAS,WAAW,OAAO,KAAK,kBAAkB,GAAG,uBAAuB;AAC7F,QAAI,WAAW;AACX,cAAQ,KAAK,OAAO,SAAS;AAAA,IACjC;AACA,WAAO,MAAM,GAAG,OAAO;AAAA,EAC3B;AACJ;",
4
+ "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,SAAS,kBAAkB;AAC3B,SAAS,cAAc;AACvB,SAAS,aAAa;AAEtB,YAAY,SAAS;AACrB,SAAS,YAAY;AACrB,YAAY,WAAW;AAGhB,MAAM,KAAK;AAAA,EACd;AAAA,EACA,GAAG;AAAA,EACH,GAAG;AACP;AAEO,MAAM,2BAA2B;AACjC,MAAM,wBAAwB;AAC9B,MAAM,kBAAkB;AACxB,MAAM,sBAAsB;AAC5B,MAAM,yBAAyB;AAC/B,MAAM,8BAA8B;AAG3C,MAAM,SAAS,OAAO,IAAI,QAAQ;AAa3B,MAAe,OAAO;AAAA,EAsEzB,IAAI,cAAc;AACd,WAAO,MAAM,GAAG,KAAK,YAAY,CAAC,CAAC,EAAE,CAAC;AAAA,EAC1C;AAAA,EAEA,IAAI,eAAe;AACf,WAAO,MAAM,WAAW,KAAK,YAAY,CAAC,CAAC,EAAE,UAAU,CAAC;AAAA,EAC5D;AAAA,EAEA,IAAI,eAAe;AACf,WAAO,MAAM,WAAW,KAAK,YAAY,CAAC,CAAC,EAAE,UAAU,CAAC;AAAA,EAC5D;AAAA,EAEA,IAAI,kBAAkB;AAClB,WAAO,MAAM,WAAW,KAAK,YAAY,CAAC,CAAC,EAAE,aAAa,CAAC;AAAA,EAC/D;AAAA,EAEA,aAAa,MAAc,UAAmB;AAC1C,QAAI,aAAa,QAAW;AACxB,aAAO,MAAM,SAAS,KAAK,YAAY,IAAI,CAAC;AAAA,IAChD;AAEA,WAAO,MAAM;AACT,YAAM,SAAS,MAAM,SAAS,KAAK,YAAY,IAAI,CAAC;AACpD,UAAI,SAAS,SAAU,QAAO;AAAA,IAClC;AAAA,EACJ;AAAA,EAEA,YAAY,WAAoB;AAC5B,UAAM,UAAU,CAAC,SAAS,WAAW,OAAO,KAAK,kBAAkB,GAAG,uBAAuB;AAC7F,QAAI,WAAW;AACX,cAAQ,KAAK,OAAO,SAAS;AAAA,IACjC;AACA,WAAO,MAAM,GAAG,OAAO;AAAA,EAC3B;AACJ;",
5
5
  "names": []
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Key.d.ts","sourceRoot":"","sources":["../../../src/crypto/Key.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Key.d.ts","sourceRoot":"","sources":["../../../src/crypto/Key.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ import { ec } from "./Crypto.js";
11
11
  import { KeyInputError } from "./CryptoError.js";
12
12
  const {
13
13
  numberToBytesBE,
14
- p256: { Point, getSharedSecret }
14
+ p256: { getPublicKey, Point, getSharedSecret }
15
15
  } = ec;
16
16
  const JWK_KEYS = [
17
17
  "crv",
@@ -280,7 +280,8 @@ function Key(properties) {
280
280
  default:
281
281
  throw new KeyInputError(`Unsupported elliptic curve ${crv}`);
282
282
  }
283
- const ecKey = Point.fromPrivateKey(Bytes.of(that.privateKey));
283
+ const pubKeyBytes = getPublicKey(Bytes.of(that.privateKey));
284
+ const ecKey = Point.fromBytes(pubKeyBytes);
284
285
  that.xBits = numberToBytesBE(ecKey.x, keyLength);
285
286
  that.yBits = numberToBytesBE(ecKey.y, keyLength);
286
287
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/crypto/Key.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["KeyType", "CurveType", "Asn1ObjectID", "Translators", "publicBits", "Aliases", "Base64Codecs", "AssertedAliases", "Key"]
6
6
  }
@@ -46,7 +46,7 @@ function MockCrypto(index = 128, implementation = StandardCrypto) {
46
46
  return result;
47
47
  };
48
48
  crypto.createKeyPair = function getRandomDataNONENTROPIC() {
49
- const privateBits = ec.mapHashToField(Bytes.of(crypto.randomBytes(48)), ec.p256.CURVE.n);
49
+ const privateBits = ec.mapHashToField(Bytes.of(crypto.randomBytes(48)), ec.p256.Point.CURVE().n);
50
50
  return Key({
51
51
  kty: KeyType.EC,
52
52
  crv: CurveType.p256,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/crypto/MockCrypto.ts"],
4
- "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,2BAA2B;AACpC,SAAS,aAAa;AACtB,SAAiB,UAAU;AAC3B,SAAS,WAAW,KAAK,eAA2B;AACpD,SAAS,sBAAsB;AAwBxB,SAAS,WAAW,QAAgB,KAAM,iBAAmC,gBAAgB;AAChG,MAAI,QAAQ,KAAK,QAAQ,KAAK;AAC1B,UAAM,IAAI,oBAAoB,uCAAuC;AAAA,EACzE;AAEA,QAAM,SAAS,IAAI,eAAe;AAElC,QAAM,EAAE,aAAa,cAAc,IAAI;AAEvC,SAAO,iBAAiB,QAAQ;AAAA,IAC5B,OAAO;AAAA,MACH,MAAM;AACF,eAAO;AAAA,MACX;AAAA,MAEA,IAAI,UAAkB;AAClB,gBAAQ,WAAW;AAAA,MACvB;AAAA,IACJ;AAAA,IAEA,UAAU;AAAA,MACN,MAAM;AACF,eAAO,OAAO,gBAAgB;AAAA,MAClC;AAAA,MAEA,IAAI,UAAmB;AACnB,YAAI,UAAU;AACV,iBAAO,cAAc;AACrB,iBAAO,gBAAgB;AAAA,QAC3B,OAAO;AACH,yBAAe;AAAA,QACnB;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ,CAAC;AAED,iBAAe;AAEf,SAAO;AAEP,WAAS,iBAAiB;AAEtB,WAAO,cAAc,SAAS,yBAAyB,QAAQ;AAC3D,YAAM,SAAS,IAAI,WAAW,MAAM;AACpC,aAAO,KAAK,KAAK;AACjB,aAAO;AAAA,IACX;AAGA,WAAO,gBAAgB,SAAS,2BAA2B;AACvD,YAAM,cAAc,GAAG,eAAe,MAAM,GAAG,OAAO,YAAY,EAAE,CAAC,GAAG,GAAG,KAAK,MAAM,CAAC;AACvF,aAAO,IAAI;AAAA,QACP,KAAK,QAAQ;AAAA,QACb,KAAK,UAAU;AAAA,QACf;AAAA,MACJ,CAAC;AAAA,IACL;AAAA,EACJ;AACJ;",
4
+ "mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,2BAA2B;AACpC,SAAS,aAAa;AACtB,SAAiB,UAAU;AAC3B,SAAS,WAAW,KAAK,eAA2B;AACpD,SAAS,sBAAsB;AAwBxB,SAAS,WAAW,QAAgB,KAAM,iBAAmC,gBAAgB;AAChG,MAAI,QAAQ,KAAK,QAAQ,KAAK;AAC1B,UAAM,IAAI,oBAAoB,uCAAuC;AAAA,EACzE;AAEA,QAAM,SAAS,IAAI,eAAe;AAElC,QAAM,EAAE,aAAa,cAAc,IAAI;AAEvC,SAAO,iBAAiB,QAAQ;AAAA,IAC5B,OAAO;AAAA,MACH,MAAM;AACF,eAAO;AAAA,MACX;AAAA,MAEA,IAAI,UAAkB;AAClB,gBAAQ,WAAW;AAAA,MACvB;AAAA,IACJ;AAAA,IAEA,UAAU;AAAA,MACN,MAAM;AACF,eAAO,OAAO,gBAAgB;AAAA,MAClC;AAAA,MAEA,IAAI,UAAmB;AACnB,YAAI,UAAU;AACV,iBAAO,cAAc;AACrB,iBAAO,gBAAgB;AAAA,QAC3B,OAAO;AACH,yBAAe;AAAA,QACnB;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ,CAAC;AAED,iBAAe;AAEf,SAAO;AAEP,WAAS,iBAAiB;AAEtB,WAAO,cAAc,SAAS,yBAAyB,QAAQ;AAC3D,YAAM,SAAS,IAAI,WAAW,MAAM;AACpC,aAAO,KAAK,KAAK;AACjB,aAAO;AAAA,IACX;AAGA,WAAO,gBAAgB,SAAS,2BAA2B;AACvD,YAAM,cAAc,GAAG,eAAe,MAAM,GAAG,OAAO,YAAY,EAAE,CAAC,GAAG,GAAG,KAAK,MAAM,MAAM,EAAE,CAAC;AAC/F,aAAO,IAAI;AAAA,QACP,KAAK,QAAQ;AAAA,QACb,KAAK,UAAU;AAAA,QACf;AAAA,MACJ,CAAC;AAAA,IACL;AAAA,EACJ;AACJ;",
5
5
  "names": []
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Spake2p.d.ts","sourceRoot":"","sources":["../../../src/crypto/Spake2p.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,KAAK,EAAU,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAM,MAAM,aAAa,CAAC;AAgBzC,MAAM,WAAW,eAAe;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,KAAK,CAAC;CACf;AAED,qBAAa,OAAO;;WAMH,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM;;;;WAW9E,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM;;;;IAMrF,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM;gBAK5C,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM;IAOtE,QAAQ,IAAI,KAAK;IAKjB,QAAQ,IAAI,KAAK;IAKX,8BAA8B,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK;;;;;IAa7D,8BAA8B,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK;;;;;YAanD,yBAAyB;IAiBvC,OAAO,CAAC,qBAAqB;IAe7B,OAAO,CAAC,YAAY;CAIvB"}
1
+ {"version":3,"file":"Spake2p.d.ts","sourceRoot":"","sources":["../../../src/crypto/Spake2p.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,KAAK,EAAU,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAM,MAAM,aAAa,CAAC;AAgBzC,MAAM,WAAW,eAAe;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,KAAK,CAAC;CACf;AAED,qBAAa,OAAO;;WAMH,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM;;;;WAY9E,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM;;;;IAMrF,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM;gBAM5C,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM;IAOtE,QAAQ,IAAI,KAAK;IAKjB,QAAQ,IAAI,KAAK;IAKX,8BAA8B,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK;;;;;IAa7D,8BAA8B,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK;;;;;YAanD,yBAAyB;IAiBvC,OAAO,CAAC,qBAAqB;IAe7B,OAAO,CAAC,YAAY;CAIvB"}
@@ -9,13 +9,13 @@ import { DataWriter } from "../util/DataWriter.js";
9
9
  import { ec } from "./Crypto.js";
10
10
  import { CRYPTO_GROUP_SIZE_BYTES } from "./CryptoConstants.js";
11
11
  const {
12
- p256: { ProjectivePoint, CURVE: P256_CURVE },
12
+ p256: { Point },
13
13
  numberToBytesBE,
14
14
  bytesToNumberBE,
15
15
  mod
16
16
  } = ec;
17
- const M = ProjectivePoint.fromHex("02886e2f97ace46e55ba9dd7242579f2993b64e16ef3dcab95afd497333d8fa12f");
18
- const N = ProjectivePoint.fromHex("03d8bbd6c639c62937b04d997f38c3770719c629d7014d49a24b4f98baa1292b49");
17
+ const M = Point.fromHex("02886e2f97ace46e55ba9dd7242579f2993b64e16ef3dcab95afd497333d8fa12f");
18
+ const N = Point.fromHex("03d8bbd6c639c62937b04d997f38c3770719c629d7014d49a24b4f98baa1292b49");
19
19
  const CRYPTO_W_SIZE_BYTES = CRYPTO_GROUP_SIZE_BYTES + 8;
20
20
  class Spake2p {
21
21
  #crypto;
@@ -28,17 +28,19 @@ class Spake2p {
28
28
  const ws = Bytes.of(
29
29
  await crypto.createPbkdf2Key(pinWriter.toByteArray(), salt, iterations, CRYPTO_W_SIZE_BYTES * 2)
30
30
  );
31
- const w0 = mod(bytesToNumberBE(ws.slice(0, 40)), P256_CURVE.n);
32
- const w1 = mod(bytesToNumberBE(ws.slice(40, 80)), P256_CURVE.n);
31
+ const curve = Point.CURVE();
32
+ const w0 = mod(bytesToNumberBE(ws.slice(0, 40)), curve.n);
33
+ const w1 = mod(bytesToNumberBE(ws.slice(40, 80)), curve.n);
33
34
  return { w0, w1 };
34
35
  }
35
36
  static async computeW0L(crypto, pbkdfParameters, pin) {
36
37
  const { w0, w1 } = await this.computeW0W1(crypto, pbkdfParameters, pin);
37
- const L = ProjectivePoint.BASE.multiply(w1).toRawBytes(false);
38
+ const L = Point.BASE.multiply(w1).toBytes(false);
38
39
  return { w0, L };
39
40
  }
40
41
  static create(crypto, context, w0) {
41
- const random = crypto.randomBigInt(32, P256_CURVE.Fp.ORDER);
42
+ const curve = Point.CURVE();
43
+ const random = crypto.randomBigInt(32, curve.p);
42
44
  return new Spake2p(crypto, context, random, w0);
43
45
  }
44
46
  constructor(crypto, context, random, w0) {
@@ -48,15 +50,15 @@ class Spake2p {
48
50
  this.#w0 = w0;
49
51
  }
50
52
  computeX() {
51
- const X = ProjectivePoint.BASE.multiply(this.#random).add(M.multiply(this.#w0));
52
- return X.toRawBytes(false);
53
+ const X = Point.BASE.multiply(this.#random).add(M.multiply(this.#w0));
54
+ return X.toBytes(false);
53
55
  }
54
56
  computeY() {
55
- const Y = ProjectivePoint.BASE.multiply(this.#random).add(N.multiply(this.#w0));
56
- return Y.toRawBytes(false);
57
+ const Y = Point.BASE.multiply(this.#random).add(N.multiply(this.#w0));
58
+ return Y.toBytes(false);
57
59
  }
58
60
  async computeSecretAndVerifiersFromY(w1, X, Y) {
59
- const YPoint = ProjectivePoint.fromHex(Bytes.of(Y));
61
+ const YPoint = Point.fromBytes(Bytes.of(Y));
60
62
  try {
61
63
  YPoint.assertValidity();
62
64
  } catch (error) {
@@ -65,11 +67,11 @@ class Spake2p {
65
67
  const yNwo = YPoint.add(N.multiply(this.#w0).negate());
66
68
  const Z = yNwo.multiply(this.#random);
67
69
  const V = yNwo.multiply(w1);
68
- return this.computeSecretAndVerifiers(X, Y, Bytes.of(Z.toRawBytes(false)), Bytes.of(V.toRawBytes(false)));
70
+ return this.computeSecretAndVerifiers(X, Y, Z.toBytes(false), V.toBytes(false));
69
71
  }
70
72
  async computeSecretAndVerifiersFromX(L, X, Y) {
71
- const XPoint = ProjectivePoint.fromHex(Bytes.of(X));
72
- const LPoint = ProjectivePoint.fromHex(Bytes.of(L));
73
+ const XPoint = Point.fromBytes(Bytes.of(X));
74
+ const LPoint = Point.fromBytes(Bytes.of(L));
73
75
  try {
74
76
  XPoint.assertValidity();
75
77
  } catch (error) {
@@ -77,7 +79,7 @@ class Spake2p {
77
79
  }
78
80
  const Z = XPoint.add(M.multiply(this.#w0).negate()).multiply(this.#random);
79
81
  const V = LPoint.multiply(this.#random);
80
- return this.computeSecretAndVerifiers(X, Y, Bytes.of(Z.toRawBytes(false)), Bytes.of(V.toRawBytes(false)));
82
+ return this.computeSecretAndVerifiers(X, Y, Z.toBytes(false), V.toBytes(false));
81
83
  }
82
84
  async computeSecretAndVerifiers(X, Y, Z, V) {
83
85
  const TT_HASH = Bytes.of(await this.computeTranscriptHash(X, Y, Z, V));
@@ -97,8 +99,8 @@ class Spake2p {
97
99
  this.addToContext(TTwriter, this.#context);
98
100
  this.addToContext(TTwriter, Bytes.fromString(""));
99
101
  this.addToContext(TTwriter, Bytes.fromString(""));
100
- this.addToContext(TTwriter, Bytes.of(M.toRawBytes(false)));
101
- this.addToContext(TTwriter, Bytes.of(N.toRawBytes(false)));
102
+ this.addToContext(TTwriter, M.toBytes(false));
103
+ this.addToContext(TTwriter, N.toBytes(false));
102
104
  this.addToContext(TTwriter, X);
103
105
  this.addToContext(TTwriter, Y);
104
106
  this.addToContext(TTwriter, Z);
@@ -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
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@matter/general",
3
- "version": "0.16.0-alpha.0-20250902-38a7cc156",
3
+ "version": "0.16.0-alpha.0-20250909-aecad94f3",
4
4
  "description": "Non-Matter support for Matter.js",
5
5
  "keywords": [
6
6
  "iot",
@@ -33,10 +33,10 @@
33
33
  "embed-examples": "embedme **/README.md"
34
34
  },
35
35
  "dependencies": {
36
- "@noble/curves": "^1.9.7"
36
+ "@noble/curves": "^2.0.0"
37
37
  },
38
38
  "devDependencies": {
39
- "@matter/testing": "0.16.0-alpha.0-20250902-38a7cc156"
39
+ "@matter/testing": "0.16.0-alpha.0-20250909-aecad94f3"
40
40
  },
41
41
  "files": [
42
42
  "dist/**/*",
@@ -9,9 +9,9 @@ import { Diagnostic } from "#log/Diagnostic.js";
9
9
  import { Logger } from "#log/Logger.js";
10
10
  import { Bytes } from "#util/Bytes.js";
11
11
  import { MaybePromise } from "#util/Promises.js";
12
- import * as mod from "@noble/curves/abstract/modular";
13
- import * as utils from "@noble/curves/abstract/utils";
14
- import { p256 } from "@noble/curves/p256";
12
+ import * as mod from "@noble/curves/abstract/modular.js";
13
+ import { p256 } from "@noble/curves/nist.js";
14
+ import * as utils from "@noble/curves/utils.js";
15
15
  import { PrivateKey, PublicKey } from "./Key.js";
16
16
 
17
17
  export const ec = {
package/src/crypto/Key.ts CHANGED
@@ -13,7 +13,7 @@ import { KeyInputError } from "./CryptoError.js";
13
13
 
14
14
  const {
15
15
  numberToBytesBE,
16
- p256: { Point, getSharedSecret },
16
+ p256: { getPublicKey, Point, getSharedSecret },
17
17
  } = ec;
18
18
 
19
19
  const JWK_KEYS = [
@@ -540,7 +540,8 @@ export function Key(properties: Partial<Key>) {
540
540
  }
541
541
 
542
542
  // Compute
543
- const ecKey = Point.fromPrivateKey(Bytes.of(that.privateKey));
543
+ const pubKeyBytes = getPublicKey(Bytes.of(that.privateKey));
544
+ const ecKey = Point.fromBytes(pubKeyBytes);
544
545
 
545
546
  // Install
546
547
  that.xBits = numberToBytesBE(ecKey.x, keyLength);
@@ -82,7 +82,7 @@ export function MockCrypto(index: number = 0x80, implementation: new () => Crypt
82
82
 
83
83
  // Ensure EC key generation uses our own "entropy" source rather than the platform's
84
84
  crypto.createKeyPair = function getRandomDataNONENTROPIC() {
85
- const privateBits = ec.mapHashToField(Bytes.of(crypto.randomBytes(48)), ec.p256.CURVE.n);
85
+ const privateBits = ec.mapHashToField(Bytes.of(crypto.randomBytes(48)), ec.p256.Point.CURVE().n);
86
86
  return Key({
87
87
  kty: KeyType.EC,
88
88
  crv: CurveType.p256,
@@ -11,15 +11,15 @@ import { Crypto, ec } from "./Crypto.js";
11
11
  import { CRYPTO_GROUP_SIZE_BYTES } from "./CryptoConstants.js";
12
12
 
13
13
  const {
14
- p256: { ProjectivePoint, CURVE: P256_CURVE },
14
+ p256: { Point },
15
15
  numberToBytesBE,
16
16
  bytesToNumberBE,
17
17
  mod,
18
18
  } = ec;
19
19
 
20
20
  // M and N constants from https://datatracker.ietf.org/doc/html/draft-bar-cfrg-spake2plus-01
21
- const M = ProjectivePoint.fromHex("02886e2f97ace46e55ba9dd7242579f2993b64e16ef3dcab95afd497333d8fa12f");
22
- const N = ProjectivePoint.fromHex("03d8bbd6c639c62937b04d997f38c3770719c629d7014d49a24b4f98baa1292b49");
21
+ const M = Point.fromHex("02886e2f97ace46e55ba9dd7242579f2993b64e16ef3dcab95afd497333d8fa12f");
22
+ const N = Point.fromHex("03d8bbd6c639c62937b04d997f38c3770719c629d7014d49a24b4f98baa1292b49");
23
23
 
24
24
  const CRYPTO_W_SIZE_BYTES = CRYPTO_GROUP_SIZE_BYTES + 8;
25
25
 
@@ -40,19 +40,21 @@ export class Spake2p {
40
40
  const ws = Bytes.of(
41
41
  await crypto.createPbkdf2Key(pinWriter.toByteArray(), salt, iterations, CRYPTO_W_SIZE_BYTES * 2),
42
42
  );
43
- const w0 = mod(bytesToNumberBE(ws.slice(0, 40)), P256_CURVE.n);
44
- const w1 = mod(bytesToNumberBE(ws.slice(40, 80)), P256_CURVE.n);
43
+ const curve = Point.CURVE();
44
+ const w0 = mod(bytesToNumberBE(ws.slice(0, 40)), curve.n);
45
+ const w1 = mod(bytesToNumberBE(ws.slice(40, 80)), curve.n);
45
46
  return { w0, w1 };
46
47
  }
47
48
 
48
49
  static async computeW0L(crypto: Crypto, pbkdfParameters: PbkdfParameters, pin: number) {
49
50
  const { w0, w1 } = await this.computeW0W1(crypto, pbkdfParameters, pin);
50
- const L = ProjectivePoint.BASE.multiply(w1).toRawBytes(false);
51
+ const L = Point.BASE.multiply(w1).toBytes(false);
51
52
  return { w0, L };
52
53
  }
53
54
 
54
55
  static create(crypto: Crypto, context: Bytes, w0: bigint) {
55
- const random = crypto.randomBigInt(32, P256_CURVE.Fp.ORDER);
56
+ const curve = Point.CURVE();
57
+ const random = crypto.randomBigInt(32, curve.p);
56
58
  return new Spake2p(crypto, context, random, w0);
57
59
  }
58
60
 
@@ -64,17 +66,17 @@ export class Spake2p {
64
66
  }
65
67
 
66
68
  computeX(): Bytes {
67
- const X = ProjectivePoint.BASE.multiply(this.#random).add(M.multiply(this.#w0));
68
- return X.toRawBytes(false);
69
+ const X = Point.BASE.multiply(this.#random).add(M.multiply(this.#w0));
70
+ return X.toBytes(false);
69
71
  }
70
72
 
71
73
  computeY(): Bytes {
72
- const Y = ProjectivePoint.BASE.multiply(this.#random).add(N.multiply(this.#w0));
73
- return Y.toRawBytes(false);
74
+ const Y = Point.BASE.multiply(this.#random).add(N.multiply(this.#w0));
75
+ return Y.toBytes(false);
74
76
  }
75
77
 
76
78
  async computeSecretAndVerifiersFromY(w1: bigint, X: Bytes, Y: Bytes) {
77
- const YPoint = ProjectivePoint.fromHex(Bytes.of(Y));
79
+ const YPoint = Point.fromBytes(Bytes.of(Y));
78
80
  try {
79
81
  YPoint.assertValidity();
80
82
  } catch (error) {
@@ -83,12 +85,12 @@ export class Spake2p {
83
85
  const yNwo = YPoint.add(N.multiply(this.#w0).negate());
84
86
  const Z = yNwo.multiply(this.#random);
85
87
  const V = yNwo.multiply(w1);
86
- return this.computeSecretAndVerifiers(X, Y, Bytes.of(Z.toRawBytes(false)), Bytes.of(V.toRawBytes(false)));
88
+ return this.computeSecretAndVerifiers(X, Y, Z.toBytes(false), V.toBytes(false));
87
89
  }
88
90
 
89
91
  async computeSecretAndVerifiersFromX(L: Bytes, X: Bytes, Y: Bytes) {
90
- const XPoint = ProjectivePoint.fromHex(Bytes.of(X));
91
- const LPoint = ProjectivePoint.fromHex(Bytes.of(L));
92
+ const XPoint = Point.fromBytes(Bytes.of(X));
93
+ const LPoint = Point.fromBytes(Bytes.of(L));
92
94
  try {
93
95
  XPoint.assertValidity();
94
96
  } catch (error) {
@@ -96,7 +98,7 @@ export class Spake2p {
96
98
  }
97
99
  const Z = XPoint.add(M.multiply(this.#w0).negate()).multiply(this.#random);
98
100
  const V = LPoint.multiply(this.#random);
99
- return this.computeSecretAndVerifiers(X, Y, Bytes.of(Z.toRawBytes(false)), Bytes.of(V.toRawBytes(false)));
101
+ return this.computeSecretAndVerifiers(X, Y, Z.toBytes(false), V.toBytes(false));
100
102
  }
101
103
 
102
104
  private async computeSecretAndVerifiers(X: Bytes, Y: Bytes, Z: Bytes, V: Bytes) {
@@ -121,8 +123,8 @@ export class Spake2p {
121
123
  this.addToContext(TTwriter, this.#context);
122
124
  this.addToContext(TTwriter, Bytes.fromString(""));
123
125
  this.addToContext(TTwriter, Bytes.fromString(""));
124
- this.addToContext(TTwriter, Bytes.of(M.toRawBytes(false)));
125
- this.addToContext(TTwriter, Bytes.of(N.toRawBytes(false)));
126
+ this.addToContext(TTwriter, M.toBytes(false));
127
+ this.addToContext(TTwriter, N.toBytes(false));
126
128
  this.addToContext(TTwriter, X);
127
129
  this.addToContext(TTwriter, Y);
128
130
  this.addToContext(TTwriter, Z);