@bsv/sdk 1.9.30 → 1.10.1

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.
Files changed (64) hide show
  1. package/dist/cjs/package.json +3 -2
  2. package/dist/cjs/src/auth/Peer.js +68 -48
  3. package/dist/cjs/src/auth/Peer.js.map +1 -1
  4. package/dist/cjs/src/messages/EncryptedMessage.js +19 -0
  5. package/dist/cjs/src/messages/EncryptedMessage.js.map +1 -1
  6. package/dist/cjs/src/primitives/AESGCM.js +72 -27
  7. package/dist/cjs/src/primitives/AESGCM.js.map +1 -1
  8. package/dist/cjs/src/primitives/BigNumber.js +28 -54
  9. package/dist/cjs/src/primitives/BigNumber.js.map +1 -1
  10. package/dist/cjs/src/primitives/ECDSA.js +36 -1
  11. package/dist/cjs/src/primitives/ECDSA.js.map +1 -1
  12. package/dist/cjs/src/primitives/PrivateKey.js +27 -0
  13. package/dist/cjs/src/primitives/PrivateKey.js.map +1 -1
  14. package/dist/cjs/src/primitives/ReductionContext.js +35 -46
  15. package/dist/cjs/src/primitives/ReductionContext.js.map +1 -1
  16. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  17. package/dist/esm/src/auth/Peer.js +68 -48
  18. package/dist/esm/src/auth/Peer.js.map +1 -1
  19. package/dist/esm/src/messages/EncryptedMessage.js +19 -0
  20. package/dist/esm/src/messages/EncryptedMessage.js.map +1 -1
  21. package/dist/esm/src/primitives/AESGCM.js +71 -26
  22. package/dist/esm/src/primitives/AESGCM.js.map +1 -1
  23. package/dist/esm/src/primitives/BigNumber.js +28 -54
  24. package/dist/esm/src/primitives/BigNumber.js.map +1 -1
  25. package/dist/esm/src/primitives/ECDSA.js +36 -1
  26. package/dist/esm/src/primitives/ECDSA.js.map +1 -1
  27. package/dist/esm/src/primitives/PrivateKey.js +27 -0
  28. package/dist/esm/src/primitives/PrivateKey.js.map +1 -1
  29. package/dist/esm/src/primitives/ReductionContext.js +35 -46
  30. package/dist/esm/src/primitives/ReductionContext.js.map +1 -1
  31. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  32. package/dist/types/src/auth/Peer.d.ts.map +1 -1
  33. package/dist/types/src/auth/types.d.ts +2 -0
  34. package/dist/types/src/auth/types.d.ts.map +1 -1
  35. package/dist/types/src/messages/EncryptedMessage.d.ts +19 -0
  36. package/dist/types/src/messages/EncryptedMessage.d.ts.map +1 -1
  37. package/dist/types/src/primitives/AESGCM.d.ts +18 -0
  38. package/dist/types/src/primitives/AESGCM.d.ts.map +1 -1
  39. package/dist/types/src/primitives/BigNumber.d.ts +8 -0
  40. package/dist/types/src/primitives/BigNumber.d.ts.map +1 -1
  41. package/dist/types/src/primitives/ECDSA.d.ts +24 -0
  42. package/dist/types/src/primitives/ECDSA.d.ts.map +1 -1
  43. package/dist/types/src/primitives/PrivateKey.d.ts +27 -0
  44. package/dist/types/src/primitives/PrivateKey.d.ts.map +1 -1
  45. package/dist/types/src/primitives/ReductionContext.d.ts +9 -0
  46. package/dist/types/src/primitives/ReductionContext.d.ts.map +1 -1
  47. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  48. package/dist/umd/bundle.js +3 -3
  49. package/dist/umd/bundle.js.map +1 -1
  50. package/docs/index.md +15 -1
  51. package/docs/reference/auth.md +2 -0
  52. package/docs/reference/primitives.md +91 -31
  53. package/package.json +3 -2
  54. package/src/auth/Peer.ts +122 -57
  55. package/src/auth/__tests/Peer.test.ts +166 -257
  56. package/src/auth/types.ts +2 -0
  57. package/src/messages/EncryptedMessage.ts +19 -0
  58. package/src/primitives/AESGCM.ts +75 -34
  59. package/src/primitives/BigNumber.ts +27 -31
  60. package/src/primitives/ECDSA.ts +41 -2
  61. package/src/primitives/PrivateKey.ts +27 -0
  62. package/src/primitives/ReductionContext.ts +44 -48
  63. package/src/primitives/__tests/AESGCM.test.ts +31 -0
  64. package/src/primitives/__tests/ECDSA.test.ts +16 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Peer.d.ts","sourceRoot":"","sources":["../../../../src/auth/Peer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Peer.d.ts","sourceRoot":"","sources":["../../../../src/auth/Peer.ts"],"names":[],"mappings":"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"}
@@ -28,5 +28,7 @@ export interface PeerSession {
28
28
  peerNonce?: string;
29
29
  peerIdentityKey?: string;
30
30
  lastUpdate: number;
31
+ certificatesRequired?: boolean;
32
+ certificatesValidated?: boolean;
31
33
  }
32
34
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/auth/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAA;AAE/E,MAAM,WAAW,sCAAsC;IACrD,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;CACtC;AAGD,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,KAAK,EAAE,sCAAsC,CAAA;CAC9C;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EACT,gBAAgB,GAChB,iBAAiB,GACjB,oBAAoB,GACpB,qBAAqB,GACrB,SAAS,CAAA;IACX,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,qBAAqB,EAAE,CAAA;IACtC,qBAAqB,CAAC,EAAE,uBAAuB,CAAA;IAC/C,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;CACrB;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7C,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CAC7E;AAED,MAAM,WAAW,WAAW;IAC1B,eAAe,EAAE,OAAO,CAAA;IACxB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,UAAU,EAAE,MAAM,CAAA;CACnB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/auth/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAA;AAE/E,MAAM,WAAW,sCAAsC;IACrD,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;CACtC;AAGD,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,KAAK,EAAE,sCAAsC,CAAA;CAC9C;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EACT,gBAAgB,GAChB,iBAAiB,GACjB,oBAAoB,GACpB,qBAAqB,GACrB,SAAS,CAAA;IACX,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,qBAAqB,EAAE,CAAA;IACtC,qBAAqB,CAAC,EAAE,uBAAuB,CAAA;IAC/C,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;CACrB;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7C,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CAC7E;AAED,MAAM,WAAW,WAAW;IAC1B,eAAe,EAAE,OAAO,CAAA;IACxB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,UAAU,EAAE,MAAM,CAAA;IAClB,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAChC"}
@@ -8,6 +8,25 @@ import PrivateKey from '../primitives/PrivateKey.js';
8
8
  *
9
9
  * @returns The encrypted message
10
10
  */
11
+ /**
12
+ * SECURITY NOTE – NON-AUTHENTICATED KEY EXCHANGE
13
+ *
14
+ * This encrypted message protocol does NOT implement a formally authenticated
15
+ * key exchange (AKE). Session keys are deterministically derived from long-term
16
+ * identity keys and a sender-chosen invoice value.
17
+ *
18
+ * As a result, this protocol does NOT provide:
19
+ * - Forward secrecy
20
+ * - Replay protection
21
+ * - Explicit authentication of peer identity
22
+ *
23
+ * This scheme SHOULD NOT be used for high-value, long-lived, or sensitive
24
+ * communications. It is intended for lightweight messaging where both parties
25
+ * already possess each other's long-term public keys and accept these risks.
26
+ *
27
+ * Future versions may introduce a protocol upgrade based on a standard AKE
28
+ * (e.g. X3DH, Noise, or SIGMA).
29
+ */
11
30
  export declare const encrypt: (message: number[], sender: PrivateKey, recipient: PublicKey) => number[];
12
31
  /**
13
32
  * Decrypts a message from one party to another using the BRC-78 message encryption protocol.
@@ -1 +1 @@
1
- {"version":3,"file":"EncryptedMessage.d.ts","sourceRoot":"","sources":["../../../../src/messages/EncryptedMessage.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,4BAA4B,CAAA;AAClD,OAAO,UAAU,MAAM,6BAA6B,CAAA;AAOpD;;;;;;;GAOG;AACH,eAAO,MAAM,OAAO,GAClB,SAAS,MAAM,EAAE,EACjB,QAAQ,UAAU,EAClB,WAAW,SAAS,KACnB,MAAM,EAkBR,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,OAAO,GAAI,SAAS,MAAM,EAAE,EAAE,WAAW,UAAU,KAAG,MAAM,EA0BxE,CAAA"}
1
+ {"version":3,"file":"EncryptedMessage.d.ts","sourceRoot":"","sources":["../../../../src/messages/EncryptedMessage.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,4BAA4B,CAAA;AAClD,OAAO,UAAU,MAAM,6BAA6B,CAAA;AAOpD;;;;;;;GAOG;AACH;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,OAAO,GAClB,SAAS,MAAM,EAAE,EACjB,QAAQ,UAAU,EAClB,WAAW,SAAS,KACnB,MAAM,EAkBR,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,OAAO,GAAI,SAAS,MAAM,EAAE,EAAE,WAAW,UAAU,KAAG,MAAM,EA0BxE,CAAA"}
@@ -5,6 +5,24 @@ export declare const getBytes64: (numericValue: number) => number[];
5
5
  type Bytes = Uint8Array;
6
6
  export declare const exclusiveOR: (block0: Bytes, block1: Bytes) => Bytes;
7
7
  export declare const rightShift: (block: Bytes) => Bytes;
8
+ /**
9
+ * SECURITY NOTE – TIMING SIDE-CHANNEL MITIGATION
10
+ *
11
+ * This GHASH multiplication implementation avoids data-dependent conditional
12
+ * branches by using mask-based operations instead. This reduces timing
13
+ * side-channel leakage compared to a naive implementation that branches on
14
+ * secret bits.
15
+ *
16
+ * IMPORTANT: JavaScript and TypedArray operations do NOT provide constant-time
17
+ * execution guarantees. While this implementation mitigates obvious control-
18
+ * flow timing leaks, it must not be considered constant-time in a strict
19
+ * cryptographic sense and is not suitable for hostile shared-CPU or
20
+ * multi-tenant environments.
21
+ *
22
+ * Applications requiring strict constant-time AES-GCM SHOULD use a dedicated,
23
+ * audited cryptographic library (e.g. noble-ciphers, WebCrypto, or BearSSL
24
+ * bindings).
25
+ */
8
26
  export declare const multiply: (block0: Bytes, block1: Bytes) => Bytes;
9
27
  export declare const incrementLeastSignificantThirtyTwoBits: (block: Bytes) => Bytes;
10
28
  export declare function ghash(input: Bytes, hashSubKey: Bytes): Bytes;
@@ -1 +1 @@
1
- {"version":3,"file":"AESGCM.d.ts","sourceRoot":"","sources":["../../../../src/primitives/AESGCM.ts"],"names":[],"mappings":"AAyIA,wBAAgB,GAAG,CAAE,KAAK,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAgD7D;AAED,eAAO,MAAM,QAAQ,GACnB,WAAW,MAAM,EAAE,EACnB,WAAW,MAAM,EACjB,UAAU,MAAM,KACf,CAAC,GAAG,CAEN,CAAA;AAED,eAAO,MAAM,QAAQ,GAAa,cAAc,MAAM,KAAG,MAAM,EAO9D,CAAA;AAED,eAAO,MAAM,UAAU,GAAa,cAAc,MAAM,KAAG,MAAM,EAkBhE,CAAA;AAED,KAAK,KAAK,GAAG,UAAU,CAAA;AA2BvB,eAAO,MAAM,WAAW,GAAa,QAAQ,KAAK,EAAE,QAAQ,KAAK,KAAG,KAOnE,CAAA;AAQD,eAAO,MAAM,UAAU,GAAa,OAAO,KAAK,KAAG,KAelD,CAAA;AAED,eAAO,MAAM,QAAQ,GAAa,QAAQ,KAAK,EAAE,QAAQ,KAAK,KAAG,KAoBhE,CAAA;AAED,eAAO,MAAM,sCAAsC,GACjD,OAAO,KAAK,KACX,KAYF,CAAA;AAED,wBAAgB,KAAK,CAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,GAAG,KAAK,CAa7D;AAqED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,wBAAgB,MAAM,CACpB,SAAS,EAAE,KAAK,EAChB,oBAAoB,EAAE,KAAK,EAC3B,GAAG,EAAE,KAAK,GACT;IAAE,MAAM,EAAE,KAAK,CAAC;IAAC,iBAAiB,EAAE,KAAK,CAAA;CAAE,CAiD7C;AAED,wBAAgB,aAAa,CAC3B,UAAU,EAAE,KAAK,EACjB,oBAAoB,EAAE,KAAK,EAC3B,iBAAiB,EAAE,KAAK,EACxB,GAAG,EAAE,KAAK,GACT,KAAK,GAAG,IAAI,CAoEd"}
1
+ {"version":3,"file":"AESGCM.d.ts","sourceRoot":"","sources":["../../../../src/primitives/AESGCM.ts"],"names":[],"mappings":"AAoKA,wBAAgB,GAAG,CAAE,KAAK,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAgD7D;AAED,eAAO,MAAM,QAAQ,GACnB,WAAW,MAAM,EAAE,EACnB,WAAW,MAAM,EACjB,UAAU,MAAM,KACf,CAAC,GAAG,CAEN,CAAA;AAED,eAAO,MAAM,QAAQ,GAAa,cAAc,MAAM,KAAG,MAAM,EAO9D,CAAA;AAED,eAAO,MAAM,UAAU,GAAa,cAAc,MAAM,KAAG,MAAM,EAkBhE,CAAA;AAED,KAAK,KAAK,GAAG,UAAU,CAAA;AA2BvB,eAAO,MAAM,WAAW,GAAa,QAAQ,KAAK,EAAE,QAAQ,KAAK,KAAG,KAOnE,CAAA;AAED,eAAO,MAAM,UAAU,GAAa,OAAO,KAAK,KAAG,KAelD,CAAA;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,QAAQ,GAAa,QAAQ,KAAK,EAAE,QAAQ,KAAK,KAAG,KAyBhE,CAAA;AAED,eAAO,MAAM,sCAAsC,GACjD,OAAO,KAAK,KACX,KASF,CAAA;AAED,wBAAgB,KAAK,CAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,GAAG,KAAK,CAa7D;AAqED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,wBAAgB,MAAM,CACpB,SAAS,EAAE,KAAK,EAChB,oBAAoB,EAAE,KAAK,EAC3B,GAAG,EAAE,KAAK,GACT;IAAE,MAAM,EAAE,KAAK,CAAC;IAAC,iBAAiB,EAAE,KAAK,CAAA;CAAE,CAiD7C;AAED,wBAAgB,aAAa,CAC3B,UAAU,EAAE,KAAK,EACjB,oBAAoB,EAAE,KAAK,EAC3B,iBAAiB,EAAE,KAAK,EACxB,GAAG,EAAE,KAAK,GACT,KAAK,GAAG,IAAI,CAoEd"}
@@ -423,6 +423,14 @@ export default class BigNumber {
423
423
  * @param p - The `BigNumber` specifying the modulus field.
424
424
  * @returns The multiplicative inverse `BigNumber` in the modulus field specified by `p`.
425
425
  */
426
+ /**
427
+ * SECURITY NOTE:
428
+ * This implementation avoids variable-time extended Euclidean algorithms
429
+ * to reduce timing side-channel leakage. However, JavaScript BigInt arithmetic
430
+ * does not provide constant-time guarantees. This implementation is suitable
431
+ * for browser and single-tenant environments but is not hardened against
432
+ * high-resolution timing attacks in shared CPU contexts.
433
+ */
426
434
  _invmp(p: BigNumber): BigNumber;
427
435
  /**
428
436
  * Performs multiplication between the BigNumber instance and a given BigNumber.
@@ -1 +1 @@
1
- {"version":3,"file":"BigNumber.d.ts","sourceRoot":"","sources":["../../../../src/primitives/BigNumber.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BigNumber.d.ts","sourceRoot":"","sources":["../../../../src/primitives/BigNumber.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,21 @@ import Point from './Point.js';
16
16
  * const key = new BigNumber('123456')
17
17
  * const signature = sign(msg, key)
18
18
  */
19
+ /**
20
+ * SECURITY NOTE:
21
+ *
22
+ * This function implements ECDSA signing and expects `msg` to be the output of
23
+ * a cryptographic hash function (e.g. SHA-256), not an arbitrary-length message.
24
+ *
25
+ * Per FIPS 186-4 / SEC 1, the message representative used by ECDSA must not
26
+ * exceed the bit length of the curve order `n`. Inputs larger than `n` must be
27
+ * hashed before signing.
28
+ *
29
+ * As a short-term mitigation for TOB-22, this implementation explicitly rejects
30
+ * messages whose bit length exceeds that of the curve order.
31
+ *
32
+ * Long-term, callers SHOULD always hash messages before invoking `sign()`.
33
+ */
19
34
  export declare const sign: (msg: BigNumber, key: BigNumber, forceLowS?: boolean, customK?: BigNumber | ((iter: number) => BigNumber)) => Signature;
20
35
  /**
21
36
  * Verifies a digital signature of a given message.
@@ -35,5 +50,14 @@ export declare const sign: (msg: BigNumber, key: BigNumber, forceLowS?: boolean,
35
50
  * const signature = sign(msg, new BigNumber('123456'))
36
51
  * const isVerified = verify(msg, sig, key)
37
52
  */
53
+ /**
54
+ * SECURITY NOTE:
55
+ *
56
+ * This verification routine assumes that `msg` is a hashed message
57
+ * representative produced using the same hash function used during signing.
58
+ *
59
+ * As part of TOB-22 short-term hardening, messages exceeding the curve order
60
+ * bit length are rejected to prevent misuse with non-hashed inputs.
61
+ */
38
62
  export declare const verify: (msg: BigNumber, sig: Signature, key: Point) => boolean;
39
63
  //# sourceMappingURL=ECDSA.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ECDSA.d.ts","sourceRoot":"","sources":["../../../../src/primitives/ECDSA.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,gBAAgB,CAAA;AACtC,OAAO,SAAS,MAAM,gBAAgB,CAAA;AAEtC,OAAO,KAAyH,MAAM,YAAY,CAAA;AAoDlJ;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,IAAI,GACf,KAAK,SAAS,EACd,KAAK,SAAS,EACd,YAAW,OAAe,EAC1B,UAAU,SAAS,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,SAAS,CAAC,KAClD,SAsEF,CAAA;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,MAAM,GAAI,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,KAAK,KAAK,KAAG,OA4CnE,CAAA"}
1
+ {"version":3,"file":"ECDSA.d.ts","sourceRoot":"","sources":["../../../../src/primitives/ECDSA.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,gBAAgB,CAAA;AACtC,OAAO,SAAS,MAAM,gBAAgB,CAAA;AAEtC,OAAO,KAAyH,MAAM,YAAY,CAAA;AAsDlJ;;;;;;;;;;;;;;GAcG;AACH;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,IAAI,GACf,KAAK,SAAS,EACd,KAAK,SAAS,EACd,YAAW,OAAe,EAC1B,UAAU,SAAS,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,SAAS,CAAC,KAClD,SA6EF,CAAA;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH;;;;;;;;GAQG;AACH,eAAO,MAAM,MAAM,GAAI,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,KAAK,KAAK,KAAG,OAkDnE,CAAA"}
@@ -220,6 +220,33 @@ export default class PrivateKey extends BigNumber {
220
220
  * const sharedSecret = privateKey.deriveSharedSecret(publicKey);
221
221
  */
222
222
  deriveSharedSecret(key: PublicKey): Point;
223
+ /**
224
+ * SECURITY NOTE – DETERMINISTIC CHILD KEY DERIVATION
225
+ *
226
+ * This method derives child private keys deterministically from the caller’s
227
+ * long-term private key, the counterparty’s public key, and a caller-supplied
228
+ * invoice number using HMAC over an ECDH shared secret (BRC-42 style derivation).
229
+ *
230
+ * This construction does NOT implement a formally authenticated key exchange
231
+ * (AKE) and does NOT provide the following security properties:
232
+ *
233
+ * - Forward secrecy: Compromise of a long-term private key compromises all
234
+ * past and future child keys derived from it.
235
+ * - Replay protection: Child keys are deterministic for a given invoice
236
+ * number and key pair; previously observed messages can be replayed.
237
+ * - Explicit authentication / identity binding: Possession of a public key
238
+ * alone does not guarantee the intended peer identity, enabling potential
239
+ * identity misbinding attacks if higher-level identity verification is absent.
240
+ *
241
+ * This derivation is intended for lightweight, deterministic key hierarchies
242
+ * where both parties already possess and trust each other’s long-term public
243
+ * keys. It SHOULD NOT be used as a drop-in replacement for a standard
244
+ * authenticated key exchange (e.g. X3DH, Noise, or SIGMA) in high-security or
245
+ * high-value contexts.
246
+ *
247
+ * Any future protocol providing forward secrecy, replay protection, or strong
248
+ * peer authentication will require a versioned, breaking change.
249
+ */
223
250
  /**
224
251
  * Derives a child key with BRC-42.
225
252
  * @param publicKey The public key of the other party
@@ -1 +1 @@
1
- {"version":3,"file":"PrivateKey.d.ts","sourceRoot":"","sources":["../../../../src/primitives/PrivateKey.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PrivateKey.d.ts","sourceRoot":"","sources":["../../../../src/primitives/PrivateKey.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,gBAAgB,CAAA;AACtC,OAAO,SAAS,MAAM,gBAAgB,CAAA;AACtC,OAAO,SAAS,MAAM,gBAAgB,CAAA;AACtC,OAAO,KAAK,MAAM,YAAY,CAAA;AAM9B,OAAmB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAEhE;;;;;;;;;;;;;GAaG;AAEH,qBAAa,SAAS;IACpB,MAAM,EAAE,kBAAkB,EAAE,CAAA;IAC5B,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;gBAGf,MAAM,EAAE,kBAAkB,EAAE,EAC5B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM;IAOnB,MAAM,CAAC,gBAAgB,CAAE,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS;IA0BrD,cAAc,IAAK,MAAM,EAAE;CAK5B;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,SAAS;IAC/C;;;;;;;;;OASG;IACH,MAAM,CAAC,UAAU,IAAK,UAAU;IAIhC;;;;;;;;;QASI;IACJ,MAAM,CAAC,UAAU,CAAE,GAAG,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,GAAG,KAAa,GAAG,UAAU;IAIzE;;;;;;;;QAQI;IACJ,MAAM,CAAC,OAAO,CAAE,GAAG,EAAE,MAAM,GAAG,UAAU;IAIxC;;;;;;;;;QASI;IACJ,MAAM,CAAC,OAAO,CAAE,GAAG,EAAE,MAAM,EAAE,YAAY,GAAE,MAAU,GAAG,UAAU;IAWlE;;;;;;;;;;;;;;;OAeG;gBAED,MAAM,GAAE,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,EAAM,EAClD,IAAI,GAAE,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,KAAU,EACvC,MAAM,GAAE,IAAI,GAAG,IAAW,EAC1B,IAAI,GAAE,OAAO,GAAG,SAAS,GAAG,OAAiB;IAqB/C;;;OAGG;IACH,YAAY,IAAK;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,SAAS,CAAA;KAAE;IAOtD;;OAEG;IACH,OAAO,IAAK,OAAO;IAInB;;;;;;;;;;;;;OAaG;IACH,IAAI,CACF,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM,EACtB,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,EACpB,SAAS,GAAE,OAAc,EACzB,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,SAAS,CAAC,GAAG,SAAS,GAClD,SAAS;IAKZ;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAE,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,CAAC,EAAE,KAAK,GAAG,OAAO;IAKrE;;;;;;;;;;;OAWG;IACH,WAAW,IAAK,SAAS;IAMzB;;;;;;;;;;;;;;;;;OAiBG;IACH,KAAK,CAAE,MAAM,GAAE,MAAM,EAAW,GAAG,MAAM;IAOzC;;;;;;;;;;;;;OAaG;IACH,SAAS,CAAE,MAAM,GAAE,MAAM,EAAE,GAAG,MAAe,GAAG,MAAM;IAItD;;;;;;;;;;OAUG;IACH,KAAK,IAAK,MAAM;IAIhB;;;;;;;;QAQI;IACJ,QAAQ,CAAE,IAAI,GAAE,MAAM,GAAG,KAAa,EAAE,OAAO,GAAE,MAAW,GAAG,MAAM;IAIrE;;;;;;;;;;;;OAYG;IACH,kBAAkB,CAAE,GAAG,EAAE,SAAS,GAAG,KAAK;IAO1C;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH;;;;;;;OAOG;IACH,WAAW,CACT,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,MAAM,EACrB,iBAAiB,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC,EAC1E,0BAA0B,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,KAAK,KAAK,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,GACnF,UAAU;IAqBb;;;;;;;;;;;OAWG;IACH,WAAW,CAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,SAAS;IAoD/D;;;;;;;;;OASG;IACH,cAAc,CAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE;IAIjE;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,gBAAgB,CAAE,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU;IAItD;;;;;;;;QAQI;IACJ,MAAM,CAAC,aAAa,CAAE,SAAS,EAAE,SAAS,GAAG,UAAU;CAyBxD"}
@@ -1,5 +1,14 @@
1
1
  import BigNumber from './BigNumber.js';
2
2
  import Mersenne from './Mersenne.js';
3
+ /**
4
+ * SECURITY NOTE:
5
+ * This reduction context avoids obvious variable-time constructs (such as
6
+ * sliding-window exponentiation and conditional modular reduction) to reduce
7
+ * timing side-channel leakage. However, JavaScript BigInt arithmetic does not
8
+ * provide constant-time guarantees. These mitigations improve resistance to
9
+ * coarse timing attacks but do not make the implementation suitable for
10
+ * hostile multi-tenant or shared-CPU environments.
11
+ */
3
12
  /**
4
13
  * A base reduction engine that provides several arithmetic operations over
5
14
  * big numbers under a modulus context. It's particularly suitable for
@@ -1 +1 @@
1
- {"version":3,"file":"ReductionContext.d.ts","sourceRoot":"","sources":["../../../../src/primitives/ReductionContext.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,gBAAgB,CAAA;AAEtC,OAAO,QAAQ,MAAM,eAAe,CAAA;AAEpC;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,OAAO,gBAAgB;IACnC,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAA;IACtB,CAAC,EAAE,SAAS,CAAA;IAEZ;;;;;;;;;OASG;gBACU,CAAC,EAAE,SAAS,GAAG,MAAM;IAYlC;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,MAAM;IAId;;;;;;;;;;OAUG;IACH,OAAO,CAAE,CAAC,EAAE,SAAS,GAAG,IAAI;IAK5B;;;;;;;;;;;;OAYG;IACH,OAAO,CAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,IAAI;IAW1C;;;;;;;;;;;;OAYG;IACH,IAAI,CAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAO9B;;;;;;;;;;;;OAYG;IACH,GAAG,CAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAQ7B;;;;;;;;;;;;;OAaG;IACH,GAAG,CAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAU3C;;;;;;;;;;;;;;;OAeG;IACH,IAAI,CAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAU5C;;;;;;;;;;;;;OAaG;IACH,GAAG,CAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAU3C;;;;;;;;;;;;;;;OAeG;IACH,IAAI,CAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAU5C;;;;;;;;;;;;;OAaG;IACH,GAAG,CAAE,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS;IAK1C;;;;;;;;;;;;;;;OAeG;IACH,IAAI,CAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAK5C;;;;;;;;;;;;;OAaG;IACH,GAAG,CAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAK3C;;;;;;;;;;;;;;OAcG;IACH,IAAI,CAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAI9B;;;;;;;;;;;;OAYG;IACH,GAAG,CAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAI7B;;;;;;;;;;;;OAYG;IACH,IAAI,CAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IA0D9B;;;;;;;;;;;;OAYG;IACH,IAAI,CAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAU9B;;;;;;;;;;;;;OAaG;IACH,GAAG,CAAE,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,GAAG,SAAS;IAiD7C;;;;;;;;;;;;OAYG;IACH,SAAS,CAAE,GAAG,EAAE,SAAS,GAAG,SAAS;IAMrC;;;;;;;;;;;;;OAaG;IACH,WAAW,CAAE,GAAG,EAAE,SAAS,GAAG,SAAS;CAKxC"}
1
+ {"version":3,"file":"ReductionContext.d.ts","sourceRoot":"","sources":["../../../../src/primitives/ReductionContext.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,gBAAgB,CAAA;AAEtC,OAAO,QAAQ,MAAM,eAAe,CAAA;AAEpC;;;;;;;;GAQG;AAEH;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,OAAO,gBAAgB;IACnC,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAA;IACtB,CAAC,EAAE,SAAS,CAAA;IAEZ;;;;;;;;;OASG;gBACU,CAAC,EAAE,SAAS,GAAG,MAAM;IAYlC;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,MAAM;IAId;;;;;;;;;;OAUG;IACH,OAAO,CAAE,CAAC,EAAE,SAAS,GAAG,IAAI;IAK5B;;;;;;;;;;;;OAYG;IACH,OAAO,CAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,IAAI;IAW1C;;;;;;;;;;;;OAYG;IACH,IAAI,CAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAO9B;;;;;;;;;;;;OAYG;IACH,GAAG,CAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAQ7B;;;;;;;;;;;;;OAaG;IACH,GAAG,CAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAoB3C;;;;;;;;;;;;;;;OAeG;IACH,IAAI,CAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAa5C;;;;;;;;;;;;;OAaG;IACH,GAAG,CAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAU3C;;;;;;;;;;;;;;;OAeG;IACH,IAAI,CAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAU5C;;;;;;;;;;;;;OAaG;IACH,GAAG,CAAE,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS;IAK1C;;;;;;;;;;;;;;;OAeG;IACH,IAAI,CAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAK5C;;;;;;;;;;;;;OAaG;IACH,GAAG,CAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAK3C;;;;;;;;;;;;;;OAcG;IACH,IAAI,CAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAI9B;;;;;;;;;;;;OAYG;IACH,GAAG,CAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAI7B;;;;;;;;;;;;OAYG;IACH,IAAI,CAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IA0D9B;;;;;;;;;;;;OAYG;IACH,IAAI,CAAE,CAAC,EAAE,SAAS,GAAG,SAAS;IAU9B;;;;;;;;;;;;;OAaG;IACH,GAAG,CAAE,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,GAAG,SAAS;IAsB7C;;;;;;;;;;;;OAYG;IACH,SAAS,CAAE,GAAG,EAAE,SAAS,GAAG,SAAS;IAMrC;;;;;;;;;;;;;OAaG;IACH,WAAW,CAAE,GAAG,EAAE,SAAS,GAAG,SAAS;CAKxC"}