@did-btcr2/method 0.37.0 → 0.39.0

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 (245) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/browser.js +47868 -34771
  3. package/dist/browser.mjs +47867 -34770
  4. package/dist/cjs/index.js +462 -6060
  5. package/dist/esm/core/beacon/beacon.js +101 -10
  6. package/dist/esm/core/beacon/beacon.js.map +1 -1
  7. package/dist/esm/core/beacon/fee-estimator.js +12 -27
  8. package/dist/esm/core/beacon/fee-estimator.js.map +1 -1
  9. package/dist/esm/core/did-sender-resolver.js +26 -0
  10. package/dist/esm/core/did-sender-resolver.js.map +1 -0
  11. package/dist/esm/index.js +3 -17
  12. package/dist/esm/index.js.map +1 -1
  13. package/dist/types/core/beacon/beacon.d.ts +59 -3
  14. package/dist/types/core/beacon/beacon.d.ts.map +1 -1
  15. package/dist/types/core/beacon/fee-estimator.d.ts +10 -37
  16. package/dist/types/core/beacon/fee-estimator.d.ts.map +1 -1
  17. package/dist/types/core/did-sender-resolver.d.ts +14 -0
  18. package/dist/types/core/did-sender-resolver.d.ts.map +1 -0
  19. package/dist/types/index.d.ts +2 -16
  20. package/dist/types/index.d.ts.map +1 -1
  21. package/package.json +6 -5
  22. package/src/core/beacon/beacon.ts +131 -12
  23. package/src/core/beacon/fee-estimator.ts +15 -49
  24. package/src/core/did-sender-resolver.ts +25 -0
  25. package/src/index.ts +3 -17
  26. package/dist/esm/core/aggregation/beacon-strategy.js +0 -76
  27. package/dist/esm/core/aggregation/beacon-strategy.js.map +0 -1
  28. package/dist/esm/core/aggregation/cohort.js +0 -316
  29. package/dist/esm/core/aggregation/cohort.js.map +0 -1
  30. package/dist/esm/core/aggregation/conditions.js +0 -102
  31. package/dist/esm/core/aggregation/conditions.js.map +0 -1
  32. package/dist/esm/core/aggregation/errors.js +0 -22
  33. package/dist/esm/core/aggregation/errors.js.map +0 -1
  34. package/dist/esm/core/aggregation/fallback-spend.js +0 -132
  35. package/dist/esm/core/aggregation/fallback-spend.js.map +0 -1
  36. package/dist/esm/core/aggregation/logger.js +0 -15
  37. package/dist/esm/core/aggregation/logger.js.map +0 -1
  38. package/dist/esm/core/aggregation/messages/base.js +0 -36
  39. package/dist/esm/core/aggregation/messages/base.js.map +0 -1
  40. package/dist/esm/core/aggregation/messages/bodies.js +0 -149
  41. package/dist/esm/core/aggregation/messages/bodies.js.map +0 -1
  42. package/dist/esm/core/aggregation/messages/constants.js +0 -37
  43. package/dist/esm/core/aggregation/messages/constants.js.map +0 -1
  44. package/dist/esm/core/aggregation/messages/factories.js +0 -139
  45. package/dist/esm/core/aggregation/messages/factories.js.map +0 -1
  46. package/dist/esm/core/aggregation/messages/guards.js +0 -40
  47. package/dist/esm/core/aggregation/messages/guards.js.map +0 -1
  48. package/dist/esm/core/aggregation/messages/index.js +0 -6
  49. package/dist/esm/core/aggregation/messages/index.js.map +0 -1
  50. package/dist/esm/core/aggregation/participant.js +0 -588
  51. package/dist/esm/core/aggregation/participant.js.map +0 -1
  52. package/dist/esm/core/aggregation/phases.js +0 -45
  53. package/dist/esm/core/aggregation/phases.js.map +0 -1
  54. package/dist/esm/core/aggregation/recovery-policy.js +0 -156
  55. package/dist/esm/core/aggregation/recovery-policy.js.map +0 -1
  56. package/dist/esm/core/aggregation/recovery-spend.js +0 -106
  57. package/dist/esm/core/aggregation/recovery-spend.js.map +0 -1
  58. package/dist/esm/core/aggregation/runner/aggregation-runner.js +0 -74
  59. package/dist/esm/core/aggregation/runner/aggregation-runner.js.map +0 -1
  60. package/dist/esm/core/aggregation/runner/events.js +0 -2
  61. package/dist/esm/core/aggregation/runner/events.js.map +0 -1
  62. package/dist/esm/core/aggregation/runner/index.js +0 -6
  63. package/dist/esm/core/aggregation/runner/index.js.map +0 -1
  64. package/dist/esm/core/aggregation/runner/participant-runner.js +0 -407
  65. package/dist/esm/core/aggregation/runner/participant-runner.js.map +0 -1
  66. package/dist/esm/core/aggregation/runner/service-runner.js +0 -694
  67. package/dist/esm/core/aggregation/runner/service-runner.js.map +0 -1
  68. package/dist/esm/core/aggregation/runner/typed-emitter.js +0 -80
  69. package/dist/esm/core/aggregation/runner/typed-emitter.js.map +0 -1
  70. package/dist/esm/core/aggregation/service.js +0 -774
  71. package/dist/esm/core/aggregation/service.js.map +0 -1
  72. package/dist/esm/core/aggregation/signer.js +0 -33
  73. package/dist/esm/core/aggregation/signer.js.map +0 -1
  74. package/dist/esm/core/aggregation/signing-session.js +0 -195
  75. package/dist/esm/core/aggregation/signing-session.js.map +0 -1
  76. package/dist/esm/core/aggregation/transport/didcomm.js +0 -41
  77. package/dist/esm/core/aggregation/transport/didcomm.js.map +0 -1
  78. package/dist/esm/core/aggregation/transport/error.js +0 -12
  79. package/dist/esm/core/aggregation/transport/error.js.map +0 -1
  80. package/dist/esm/core/aggregation/transport/factory.js +0 -29
  81. package/dist/esm/core/aggregation/transport/factory.js.map +0 -1
  82. package/dist/esm/core/aggregation/transport/http/client.js +0 -350
  83. package/dist/esm/core/aggregation/transport/http/client.js.map +0 -1
  84. package/dist/esm/core/aggregation/transport/http/envelope.js +0 -126
  85. package/dist/esm/core/aggregation/transport/http/envelope.js.map +0 -1
  86. package/dist/esm/core/aggregation/transport/http/errors.js +0 -11
  87. package/dist/esm/core/aggregation/transport/http/errors.js.map +0 -1
  88. package/dist/esm/core/aggregation/transport/http/inbox-buffer.js +0 -45
  89. package/dist/esm/core/aggregation/transport/http/inbox-buffer.js.map +0 -1
  90. package/dist/esm/core/aggregation/transport/http/index.js +0 -12
  91. package/dist/esm/core/aggregation/transport/http/index.js.map +0 -1
  92. package/dist/esm/core/aggregation/transport/http/nonce-cache.js +0 -38
  93. package/dist/esm/core/aggregation/transport/http/nonce-cache.js.map +0 -1
  94. package/dist/esm/core/aggregation/transport/http/protocol.js +0 -28
  95. package/dist/esm/core/aggregation/transport/http/protocol.js.map +0 -1
  96. package/dist/esm/core/aggregation/transport/http/rate-limiter.js +0 -45
  97. package/dist/esm/core/aggregation/transport/http/rate-limiter.js.map +0 -1
  98. package/dist/esm/core/aggregation/transport/http/request-auth.js +0 -100
  99. package/dist/esm/core/aggregation/transport/http/request-auth.js.map +0 -1
  100. package/dist/esm/core/aggregation/transport/http/server.js +0 -481
  101. package/dist/esm/core/aggregation/transport/http/server.js.map +0 -1
  102. package/dist/esm/core/aggregation/transport/http/sse-stream.js +0 -110
  103. package/dist/esm/core/aggregation/transport/http/sse-stream.js.map +0 -1
  104. package/dist/esm/core/aggregation/transport/http/sse-writer.js +0 -25
  105. package/dist/esm/core/aggregation/transport/http/sse-writer.js.map +0 -1
  106. package/dist/esm/core/aggregation/transport/in-memory.js +0 -149
  107. package/dist/esm/core/aggregation/transport/in-memory.js.map +0 -1
  108. package/dist/esm/core/aggregation/transport/index.js +0 -8
  109. package/dist/esm/core/aggregation/transport/index.js.map +0 -1
  110. package/dist/esm/core/aggregation/transport/nostr.js +0 -491
  111. package/dist/esm/core/aggregation/transport/nostr.js.map +0 -1
  112. package/dist/esm/core/aggregation/transport/transport.js +0 -2
  113. package/dist/esm/core/aggregation/transport/transport.js.map +0 -1
  114. package/dist/types/core/aggregation/beacon-strategy.d.ts +0 -56
  115. package/dist/types/core/aggregation/beacon-strategy.d.ts.map +0 -1
  116. package/dist/types/core/aggregation/cohort.d.ts +0 -182
  117. package/dist/types/core/aggregation/cohort.d.ts.map +0 -1
  118. package/dist/types/core/aggregation/conditions.d.ts +0 -86
  119. package/dist/types/core/aggregation/conditions.d.ts.map +0 -1
  120. package/dist/types/core/aggregation/errors.d.ts +0 -14
  121. package/dist/types/core/aggregation/errors.d.ts.map +0 -1
  122. package/dist/types/core/aggregation/fallback-spend.d.ts +0 -94
  123. package/dist/types/core/aggregation/fallback-spend.d.ts.map +0 -1
  124. package/dist/types/core/aggregation/logger.d.ts +0 -22
  125. package/dist/types/core/aggregation/logger.d.ts.map +0 -1
  126. package/dist/types/core/aggregation/messages/base.d.ts +0 -58
  127. package/dist/types/core/aggregation/messages/base.d.ts.map +0 -1
  128. package/dist/types/core/aggregation/messages/bodies.d.ts +0 -177
  129. package/dist/types/core/aggregation/messages/bodies.d.ts.map +0 -1
  130. package/dist/types/core/aggregation/messages/constants.d.ts +0 -31
  131. package/dist/types/core/aggregation/messages/constants.d.ts.map +0 -1
  132. package/dist/types/core/aggregation/messages/factories.d.ts +0 -217
  133. package/dist/types/core/aggregation/messages/factories.d.ts.map +0 -1
  134. package/dist/types/core/aggregation/messages/guards.d.ts +0 -11
  135. package/dist/types/core/aggregation/messages/guards.d.ts.map +0 -1
  136. package/dist/types/core/aggregation/messages/index.d.ts +0 -6
  137. package/dist/types/core/aggregation/messages/index.d.ts.map +0 -1
  138. package/dist/types/core/aggregation/participant.d.ts +0 -162
  139. package/dist/types/core/aggregation/participant.d.ts.map +0 -1
  140. package/dist/types/core/aggregation/phases.d.ts +0 -55
  141. package/dist/types/core/aggregation/phases.d.ts.map +0 -1
  142. package/dist/types/core/aggregation/recovery-policy.d.ts +0 -132
  143. package/dist/types/core/aggregation/recovery-policy.d.ts.map +0 -1
  144. package/dist/types/core/aggregation/recovery-spend.d.ts +0 -94
  145. package/dist/types/core/aggregation/recovery-spend.d.ts.map +0 -1
  146. package/dist/types/core/aggregation/runner/aggregation-runner.d.ts +0 -66
  147. package/dist/types/core/aggregation/runner/aggregation-runner.d.ts.map +0 -1
  148. package/dist/types/core/aggregation/runner/events.d.ts +0 -147
  149. package/dist/types/core/aggregation/runner/events.d.ts.map +0 -1
  150. package/dist/types/core/aggregation/runner/index.d.ts +0 -6
  151. package/dist/types/core/aggregation/runner/index.d.ts.map +0 -1
  152. package/dist/types/core/aggregation/runner/participant-runner.d.ts +0 -122
  153. package/dist/types/core/aggregation/runner/participant-runner.d.ts.map +0 -1
  154. package/dist/types/core/aggregation/runner/service-runner.d.ts +0 -211
  155. package/dist/types/core/aggregation/runner/service-runner.d.ts.map +0 -1
  156. package/dist/types/core/aggregation/runner/typed-emitter.d.ts +0 -41
  157. package/dist/types/core/aggregation/runner/typed-emitter.d.ts.map +0 -1
  158. package/dist/types/core/aggregation/service.d.ts +0 -177
  159. package/dist/types/core/aggregation/service.d.ts.map +0 -1
  160. package/dist/types/core/aggregation/signer.d.ts +0 -50
  161. package/dist/types/core/aggregation/signer.d.ts.map +0 -1
  162. package/dist/types/core/aggregation/signing-session.d.ts +0 -81
  163. package/dist/types/core/aggregation/signing-session.d.ts.map +0 -1
  164. package/dist/types/core/aggregation/transport/didcomm.d.ts +0 -23
  165. package/dist/types/core/aggregation/transport/didcomm.d.ts.map +0 -1
  166. package/dist/types/core/aggregation/transport/error.d.ts +0 -8
  167. package/dist/types/core/aggregation/transport/error.d.ts.map +0 -1
  168. package/dist/types/core/aggregation/transport/factory.d.ts +0 -28
  169. package/dist/types/core/aggregation/transport/factory.d.ts.map +0 -1
  170. package/dist/types/core/aggregation/transport/http/client.d.ts +0 -48
  171. package/dist/types/core/aggregation/transport/http/client.d.ts.map +0 -1
  172. package/dist/types/core/aggregation/transport/http/envelope.d.ts +0 -64
  173. package/dist/types/core/aggregation/transport/http/envelope.d.ts.map +0 -1
  174. package/dist/types/core/aggregation/transport/http/errors.d.ts +0 -9
  175. package/dist/types/core/aggregation/transport/http/errors.d.ts.map +0 -1
  176. package/dist/types/core/aggregation/transport/http/inbox-buffer.d.ts +0 -32
  177. package/dist/types/core/aggregation/transport/http/inbox-buffer.d.ts.map +0 -1
  178. package/dist/types/core/aggregation/transport/http/index.d.ts +0 -12
  179. package/dist/types/core/aggregation/transport/http/index.d.ts.map +0 -1
  180. package/dist/types/core/aggregation/transport/http/nonce-cache.d.ts +0 -26
  181. package/dist/types/core/aggregation/transport/http/nonce-cache.d.ts.map +0 -1
  182. package/dist/types/core/aggregation/transport/http/protocol.d.ts +0 -53
  183. package/dist/types/core/aggregation/transport/http/protocol.d.ts.map +0 -1
  184. package/dist/types/core/aggregation/transport/http/rate-limiter.d.ts +0 -41
  185. package/dist/types/core/aggregation/transport/http/rate-limiter.d.ts.map +0 -1
  186. package/dist/types/core/aggregation/transport/http/request-auth.d.ts +0 -50
  187. package/dist/types/core/aggregation/transport/http/request-auth.d.ts.map +0 -1
  188. package/dist/types/core/aggregation/transport/http/server.d.ts +0 -110
  189. package/dist/types/core/aggregation/transport/http/server.d.ts.map +0 -1
  190. package/dist/types/core/aggregation/transport/http/sse-stream.d.ts +0 -34
  191. package/dist/types/core/aggregation/transport/http/sse-stream.d.ts.map +0 -1
  192. package/dist/types/core/aggregation/transport/http/sse-writer.d.ts +0 -12
  193. package/dist/types/core/aggregation/transport/http/sse-writer.d.ts.map +0 -1
  194. package/dist/types/core/aggregation/transport/in-memory.d.ts +0 -64
  195. package/dist/types/core/aggregation/transport/in-memory.d.ts.map +0 -1
  196. package/dist/types/core/aggregation/transport/index.d.ts +0 -8
  197. package/dist/types/core/aggregation/transport/index.d.ts.map +0 -1
  198. package/dist/types/core/aggregation/transport/nostr.d.ts +0 -153
  199. package/dist/types/core/aggregation/transport/nostr.d.ts.map +0 -1
  200. package/dist/types/core/aggregation/transport/transport.d.ts +0 -62
  201. package/dist/types/core/aggregation/transport/transport.d.ts.map +0 -1
  202. package/src/core/aggregation/beacon-strategy.ts +0 -142
  203. package/src/core/aggregation/cohort.ts +0 -415
  204. package/src/core/aggregation/conditions.ts +0 -172
  205. package/src/core/aggregation/errors.ts +0 -25
  206. package/src/core/aggregation/fallback-spend.ts +0 -223
  207. package/src/core/aggregation/logger.ts +0 -33
  208. package/src/core/aggregation/messages/base.ts +0 -80
  209. package/src/core/aggregation/messages/bodies.ts +0 -328
  210. package/src/core/aggregation/messages/constants.ts +0 -40
  211. package/src/core/aggregation/messages/factories.ts +0 -297
  212. package/src/core/aggregation/messages/guards.ts +0 -61
  213. package/src/core/aggregation/messages/index.ts +0 -5
  214. package/src/core/aggregation/participant.ts +0 -779
  215. package/src/core/aggregation/phases.ts +0 -91
  216. package/src/core/aggregation/recovery-policy.ts +0 -237
  217. package/src/core/aggregation/recovery-spend.ts +0 -192
  218. package/src/core/aggregation/runner/aggregation-runner.ts +0 -118
  219. package/src/core/aggregation/runner/events.ts +0 -129
  220. package/src/core/aggregation/runner/index.ts +0 -5
  221. package/src/core/aggregation/runner/participant-runner.ts +0 -488
  222. package/src/core/aggregation/runner/service-runner.ts +0 -866
  223. package/src/core/aggregation/runner/typed-emitter.ts +0 -87
  224. package/src/core/aggregation/service.ts +0 -1000
  225. package/src/core/aggregation/signer.ts +0 -67
  226. package/src/core/aggregation/signing-session.ts +0 -290
  227. package/src/core/aggregation/transport/didcomm.ts +0 -59
  228. package/src/core/aggregation/transport/error.ts +0 -13
  229. package/src/core/aggregation/transport/factory.ts +0 -65
  230. package/src/core/aggregation/transport/http/client.ts +0 -409
  231. package/src/core/aggregation/transport/http/envelope.ts +0 -204
  232. package/src/core/aggregation/transport/http/errors.ts +0 -11
  233. package/src/core/aggregation/transport/http/inbox-buffer.ts +0 -53
  234. package/src/core/aggregation/transport/http/index.ts +0 -11
  235. package/src/core/aggregation/transport/http/nonce-cache.ts +0 -43
  236. package/src/core/aggregation/transport/http/protocol.ts +0 -57
  237. package/src/core/aggregation/transport/http/rate-limiter.ts +0 -75
  238. package/src/core/aggregation/transport/http/request-auth.ts +0 -164
  239. package/src/core/aggregation/transport/http/server.ts +0 -615
  240. package/src/core/aggregation/transport/http/sse-stream.ts +0 -121
  241. package/src/core/aggregation/transport/http/sse-writer.ts +0 -23
  242. package/src/core/aggregation/transport/in-memory.ts +0 -178
  243. package/src/core/aggregation/transport/index.ts +0 -7
  244. package/src/core/aggregation/transport/nostr.ts +0 -576
  245. package/src/core/aggregation/transport/transport.ts +0 -79
@@ -1 +0,0 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../../src/core/aggregation/service.ts"],"names":[],"mappings":"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"}
@@ -1,33 +0,0 @@
1
- import { wipe } from '@did-btcr2/keypair';
2
- /**
3
- * {@link AggregationSigner} backed by an in-memory {@link SchnorrKeyPair}.
4
- *
5
- * The keypair is held privately (never exposed as a public field) and each
6
- * `withSecret` call pulls a fresh copy of the secret bytes, hands it to the
7
- * callback, and wipes that copy on return. The underlying keypair is the
8
- * caller's to own and destroy; this signer never mutates or destroys it.
9
- *
10
- * @class KeyPairAggregationSigner
11
- * @implements {AggregationSigner}
12
- */
13
- export class KeyPairAggregationSigner {
14
- publicKey;
15
- #keys;
16
- /** @param {SchnorrKeyPair} keys The keypair whose secret backs this signer. */
17
- constructor(keys) {
18
- this.#keys = keys;
19
- this.publicKey = keys.publicKey.compressed;
20
- }
21
- withSecret(fn) {
22
- // `.bytes` returns a fresh copy; wipe it once the operation completes so the
23
- // raw scalar does not linger on the heap beyond a single MuSig2 step.
24
- const secretKey = this.#keys.secretKey.bytes;
25
- try {
26
- return fn(secretKey);
27
- }
28
- finally {
29
- wipe(secretKey);
30
- }
31
- }
32
- }
33
- //# sourceMappingURL=signer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"signer.js","sourceRoot":"","sources":["../../../../src/core/aggregation/signer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAkC1C;;;;;;;;;;GAUG;AACH,MAAM,OAAO,wBAAwB;IAC1B,SAAS,CAAa;IACtB,KAAK,CAAiB;IAE/B,+EAA+E;IAC/E,YAAY,IAAoB;QAC9B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;IAC7C,CAAC;IAED,UAAU,CAAI,EAAgC;QAC5C,6EAA6E;QAC7E,sEAAsE;QACtE,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC;QAC7C,IAAI,CAAC;YACH,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC;QACvB,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,SAAS,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;CACF"}
@@ -1,195 +0,0 @@
1
- import { wipe } from '@did-btcr2/keypair';
2
- import { SigHash } from '@scure/btc-signer';
3
- import * as musig2 from '@scure/btc-signer/musig2';
4
- import { SigningSessionError } from './errors.js';
5
- import { SigningSessionPhase } from './phases.js';
6
- /**
7
- * MuSig2 signing session for a beacon transaction.
8
- *
9
- * Implements the BIP-327 signing protocol over a Taproot key-path-only
10
- * transaction. The session is used by both AggregationService (collecting
11
- * nonces and partial signatures, computing the final signature) and
12
- * AggregationParticipant (generating their nonce and partial signature).
13
- *
14
- * @class BeaconSigningSession
15
- */
16
- export class BeaconSigningSession {
17
- /** Unique identifier for this signing session. */
18
- id;
19
- /** The cohort this session signs for. */
20
- cohort;
21
- /** The Bitcoin transaction being signed. */
22
- pendingTx;
23
- /** Previous output scripts for Taproot sighash computation (BIP-341). */
24
- prevOutScripts;
25
- /** Previous output values for Taproot sighash computation. */
26
- prevOutValues;
27
- /** Map of participant publicKey-hex to public nonce contribution. */
28
- nonceContributions = new Map();
29
- /** Aggregated MuSig2 nonce (66 bytes). */
30
- aggregatedNonce;
31
- /** Map of participant DID to partial signature. */
32
- partialSignatures = new Map();
33
- /** Final 64-byte Schnorr signature. */
34
- signature;
35
- /** Current signing session phase. */
36
- phase;
37
- /**
38
- * Participant's MuSig2 secret nonce, held only on the participant side
39
- * between {@link generateNonceContribution} and {@link generatePartialSignature}.
40
- * Private and cleared on every terminal path (success, failure, or teardown
41
- * via {@link clearSecrets}) so a spent or abandoned nonce cannot be reused or
42
- * serialized.
43
- */
44
- #secretNonce;
45
- constructor({ id, cohort, pendingTx, prevOutScripts, prevOutValues }) {
46
- this.id = id || crypto.randomUUID();
47
- this.cohort = cohort;
48
- this.pendingTx = pendingTx;
49
- this.prevOutScripts = prevOutScripts || [];
50
- this.prevOutValues = prevOutValues || [];
51
- this.phase = SigningSessionPhase.AwaitingNonceContributions;
52
- }
53
- /**
54
- * Computes the Taproot sighash (BIP-341) for the first input.
55
- */
56
- get sigHash() {
57
- if (!this.prevOutScripts.length || !this.prevOutValues.length) {
58
- throw new SigningSessionError('Cannot compute sighash: missing prevOutScripts or prevOutValues.', 'SIGHASH_ERROR');
59
- }
60
- return this.pendingTx.preimageWitnessV1(0, this.prevOutScripts, SigHash.DEFAULT, this.prevOutValues);
61
- }
62
- addNonceContribution(participantDid, nonceContribution) {
63
- if (this.phase !== SigningSessionPhase.AwaitingNonceContributions) {
64
- throw new SigningSessionError(`Nonce contributions not expected. Current phase: ${this.phase}`, 'INVALID_PHASE', { phase: this.phase });
65
- }
66
- if (!this.cohort.participants.includes(participantDid)) {
67
- throw new SigningSessionError(`Participant ${participantDid} is not a member of cohort ${this.cohort.id}.`, 'UNKNOWN_PARTICIPANT', { cohortId: this.cohort.id, participantDid });
68
- }
69
- if (nonceContribution.length !== 66) {
70
- throw new SigningSessionError(`Invalid nonce contribution: expected 66 bytes, got ${nonceContribution.length}.`, 'INVALID_NONCE_LENGTH');
71
- }
72
- if (this.nonceContributions.has(participantDid)) {
73
- throw new SigningSessionError(`Duplicate nonce contribution from ${participantDid}.`, 'DUPLICATE_NONCE');
74
- }
75
- this.nonceContributions.set(participantDid, nonceContribution);
76
- if (this.nonceContributions.size === this.cohort.participants.length) {
77
- this.phase = SigningSessionPhase.NonceContributionsReceived;
78
- }
79
- }
80
- generateAggregatedNonce() {
81
- if (this.phase !== SigningSessionPhase.NonceContributionsReceived) {
82
- throw new SigningSessionError(`Cannot aggregate nonces: phase is ${this.phase}, expected NonceContributionsReceived.`, 'INVALID_PHASE');
83
- }
84
- this.aggregatedNonce = musig2.nonceAggregate([...this.nonceContributions.values()]);
85
- this.phase = SigningSessionPhase.AwaitingPartialSignatures;
86
- return this.aggregatedNonce;
87
- }
88
- addPartialSignature(participantDid, partialSig) {
89
- if (this.phase !== SigningSessionPhase.AwaitingPartialSignatures) {
90
- throw new SigningSessionError(`Partial signatures not expected. Current phase: ${this.phase}`, 'INVALID_PHASE');
91
- }
92
- if (!this.cohort.participants.includes(participantDid)) {
93
- throw new SigningSessionError(`Participant ${participantDid} is not a member of cohort ${this.cohort.id}.`, 'UNKNOWN_PARTICIPANT', { cohortId: this.cohort.id, participantDid });
94
- }
95
- if (this.partialSignatures.has(participantDid)) {
96
- throw new SigningSessionError(`Duplicate partial signature from ${participantDid}.`, 'DUPLICATE_PARTIAL_SIG');
97
- }
98
- this.partialSignatures.set(participantDid, partialSig);
99
- if (this.partialSignatures.size === this.cohort.participants.length) {
100
- this.phase = SigningSessionPhase.PartialSignaturesReceived;
101
- }
102
- }
103
- generateFinalSignature() {
104
- if (this.phase !== SigningSessionPhase.PartialSignaturesReceived) {
105
- throw new SigningSessionError(`Cannot generate final signature: phase is ${this.phase}.`, 'INVALID_PHASE');
106
- }
107
- if (!this.aggregatedNonce) {
108
- throw new SigningSessionError('Aggregated nonce missing.', 'MISSING_AGGREGATED_NONCE');
109
- }
110
- const session = new musig2.Session(this.aggregatedNonce, this.cohort.cohortKeys, this.sigHash, [this.cohort.tapTweak], [true]);
111
- // Pre-verify each partial signature against the signer's public key before
112
- // aggregating (BIP-327 §2.3.5). Delegating verification to partialSigAgg
113
- // alone makes it impossible to attribute a bad contribution; pinpointing
114
- // the offending participant lets the service blame and retry without the
115
- // whole cohort.
116
- //
117
- // partialSigVerify(partialSig, pubNonces, i) needs pubNonces ordered to
118
- // match cohort.cohortKeys, and `i` is the signer's position in that array.
119
- const pubNoncesByIndex = new Array(this.cohort.cohortKeys.length);
120
- for (const [did, nonce] of this.nonceContributions) {
121
- const idx = this.cohort.indexOfParticipant(did);
122
- if (idx < 0) {
123
- throw new SigningSessionError(`Cannot verify nonce from ${did}: participant key missing from cohort.`, 'UNKNOWN_PARTICIPANT_KEY', { participantDid: did });
124
- }
125
- pubNoncesByIndex[idx] = nonce;
126
- }
127
- for (const [did, partialSig] of this.partialSignatures) {
128
- const idx = this.cohort.indexOfParticipant(did);
129
- if (idx < 0) {
130
- throw new SigningSessionError(`Cannot verify partial signature from ${did}: participant key missing from cohort.`, 'UNKNOWN_PARTICIPANT_KEY', { participantDid: did });
131
- }
132
- const ok = session.partialSigVerify(partialSig, pubNoncesByIndex, idx);
133
- if (!ok) {
134
- throw new SigningSessionError(`Bad partial signature from ${did}.`, 'BAD_PARTIAL_SIG', { participantDid: did, index: idx });
135
- }
136
- }
137
- this.signature = session.partialSigAgg([...this.partialSignatures.values()]);
138
- this.phase = SigningSessionPhase.Complete;
139
- return this.signature;
140
- }
141
- /**
142
- * Generates a fresh MuSig2 nonce contribution for the participant.
143
- * Stores the secret nonce internally for use in `generatePartialSignature()`.
144
- */
145
- generateNonceContribution(participantPublicKey, participantSecretKey) {
146
- const aggPublicKey = musig2.keyAggExport(musig2.keyAggregate(this.cohort.cohortKeys));
147
- const nonces = musig2.nonceGen(participantPublicKey, participantSecretKey, aggPublicKey);
148
- this.#secretNonce = nonces.secret;
149
- return nonces.public;
150
- }
151
- /**
152
- * Generates a partial signature using the participant's secret key + secret nonce.
153
- * Requires the aggregated nonce to have been set first (via the service).
154
- *
155
- * Clears the stored secret nonce after use on every path (success or throw)
156
- * via {@link clearSecrets}. JS cannot truly erase memory (GC may relocate
157
- * buffers), but overwriting the bytes shortens the exposure window and
158
- * prevents accidental reuse or serialization of a spent nonce - reuse of a
159
- * MuSig2 nonce leaks the secret key.
160
- */
161
- generatePartialSignature(participantSecretKey) {
162
- if (!this.aggregatedNonce) {
163
- throw new SigningSessionError('Aggregated nonce not available.', 'MISSING_AGGREGATED_NONCE');
164
- }
165
- if (!this.#secretNonce) {
166
- throw new SigningSessionError('Secret nonce not available - generateNonceContribution() must be called first.', 'MISSING_SECRET_NONCE');
167
- }
168
- const session = new musig2.Session(this.aggregatedNonce, this.cohort.cohortKeys, this.sigHash, [this.cohort.tapTweak], [true]);
169
- try {
170
- return session.sign(this.#secretNonce, participantSecretKey);
171
- }
172
- finally {
173
- this.clearSecrets();
174
- }
175
- }
176
- /**
177
- * Zeroize any retained secret nonce. Safe to call repeatedly and on any path
178
- * (completion, failure, or teardown of an abandoned session). Callers that
179
- * drop a session before it reaches a partial signature should invoke this so
180
- * the secret nonce does not linger on the live object.
181
- */
182
- clearSecrets() {
183
- if (this.#secretNonce) {
184
- wipe(this.#secretNonce);
185
- this.#secretNonce = undefined;
186
- }
187
- }
188
- isComplete() {
189
- return this.phase === SigningSessionPhase.Complete;
190
- }
191
- isFailed() {
192
- return this.phase === SigningSessionPhase.Failed;
193
- }
194
- }
195
- //# sourceMappingURL=signing-session.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"signing-session.js","sourceRoot":"","sources":["../../../../src/core/aggregation/signing-session.ts"],"names":[],"mappings":"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"}
@@ -1,41 +0,0 @@
1
- import { NotImplementedError } from '@did-btcr2/common';
2
- /**
3
- * DIDComm Transport (stub).
4
- *
5
- * @class DidCommTransport
6
- * @implements {Transport}
7
- */
8
- export class DidCommTransport {
9
- name = 'didcomm';
10
- start() {
11
- throw new NotImplementedError('DidCommTransport not implemented. Use NostrTransport instead.');
12
- }
13
- registerActor(_did, _keys) {
14
- throw new NotImplementedError('DidCommTransport not implemented.');
15
- }
16
- getActorPk(_did) {
17
- throw new NotImplementedError('DidCommTransport not implemented.');
18
- }
19
- registerPeer(_did, _communicationPk) {
20
- throw new NotImplementedError('DidCommTransport not implemented.');
21
- }
22
- getPeerPk(_did) {
23
- throw new NotImplementedError('DidCommTransport not implemented.');
24
- }
25
- registerMessageHandler(_actorDid, _messageType, _handler) {
26
- throw new NotImplementedError('DidCommTransport not implemented.');
27
- }
28
- unregisterMessageHandler(_actorDid, _messageType) {
29
- throw new NotImplementedError('DidCommTransport not implemented.');
30
- }
31
- unregisterActor(_did) {
32
- throw new NotImplementedError('DidCommTransport not implemented.');
33
- }
34
- async sendMessage(_message, _sender, _recipient) {
35
- throw new NotImplementedError('DidCommTransport not implemented.');
36
- }
37
- publishRepeating(_message, _sender, _intervalMs, _recipient) {
38
- throw new NotImplementedError('DidCommTransport not implemented.');
39
- }
40
- }
41
- //# sourceMappingURL=didcomm.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"didcomm.js","sourceRoot":"","sources":["../../../../../src/core/aggregation/transport/didcomm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAKxD;;;;;GAKG;AACH,MAAM,OAAO,gBAAgB;IACpB,IAAI,GAAW,SAAS,CAAC;IAEzB,KAAK;QACV,MAAM,IAAI,mBAAmB,CAAC,+DAA+D,CAAC,CAAC;IACjG,CAAC;IAEM,aAAa,CAAC,IAAY,EAAE,KAAqB;QACtD,MAAM,IAAI,mBAAmB,CAAC,mCAAmC,CAAC,CAAC;IACrE,CAAC;IAEM,UAAU,CAAC,IAAY;QAC5B,MAAM,IAAI,mBAAmB,CAAC,mCAAmC,CAAC,CAAC;IACrE,CAAC;IAEM,YAAY,CAAC,IAAY,EAAE,gBAA4B;QAC5D,MAAM,IAAI,mBAAmB,CAAC,mCAAmC,CAAC,CAAC;IACrE,CAAC;IAEM,SAAS,CAAC,IAAY;QAC3B,MAAM,IAAI,mBAAmB,CAAC,mCAAmC,CAAC,CAAC;IACrE,CAAC;IAEM,sBAAsB,CAAC,SAAiB,EAAE,YAAoB,EAAE,QAAwB;QAC7F,MAAM,IAAI,mBAAmB,CAAC,mCAAmC,CAAC,CAAC;IACrE,CAAC;IAEM,wBAAwB,CAAC,SAAiB,EAAE,YAAoB;QACrE,MAAM,IAAI,mBAAmB,CAAC,mCAAmC,CAAC,CAAC;IACrE,CAAC;IAEM,eAAe,CAAC,IAAY;QACjC,MAAM,IAAI,mBAAmB,CAAC,mCAAmC,CAAC,CAAC;IACrE,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,QAAqB,EAAE,OAAe,EAAE,UAAmB;QAClF,MAAM,IAAI,mBAAmB,CAAC,mCAAmC,CAAC,CAAC;IACrE,CAAC;IAEM,gBAAgB,CACrB,QAAqB,EACrB,OAAe,EACf,WAAmB,EACnB,UAAmB;QAEnB,MAAM,IAAI,mBAAmB,CAAC,mCAAmC,CAAC,CAAC;IACrE,CAAC;CACF"}
@@ -1,12 +0,0 @@
1
- import { MethodError } from '@did-btcr2/common';
2
- export class TransportError extends MethodError {
3
- constructor(message, type = 'TransportError', data) {
4
- super(message, type, data);
5
- }
6
- }
7
- export class TransportAdapterError extends MethodError {
8
- constructor(message, type = 'TransportAdapterError', data) {
9
- super(message, type, data);
10
- }
11
- }
12
- //# sourceMappingURL=error.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"error.js","sourceRoot":"","sources":["../../../../../src/core/aggregation/transport/error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,MAAM,OAAO,cAAe,SAAQ,WAAW;IAC7C,YAAY,OAAe,EAAE,OAAe,gBAAgB,EAAE,IAA0B;QACtF,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC7B,CAAC;CACF;AAED,MAAM,OAAO,qBAAsB,SAAQ,WAAW;IACpD,YAAY,OAAe,EAAE,OAAe,uBAAuB,EAAE,IAA0B;QAC7F,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC7B,CAAC;CACF"}
@@ -1,29 +0,0 @@
1
- import { NotImplementedError } from '@did-btcr2/common';
2
- import { TransportError } from './error.js';
3
- import { HttpClientTransport } from './http/client.js';
4
- import { HttpServerTransport } from './http/server.js';
5
- import { NostrTransport } from './nostr.js';
6
- /** Factory for creating Transport instances. */
7
- export class TransportFactory {
8
- static establish(config) {
9
- switch (config.type) {
10
- case 'nostr':
11
- return new NostrTransport({
12
- relays: config.relays,
13
- logger: config.logger,
14
- broadcastLookbackMs: config.broadcastLookbackMs,
15
- });
16
- case 'didcomm':
17
- throw new NotImplementedError('DIDComm transport not implemented yet.');
18
- case 'http':
19
- if (config.role === 'client')
20
- return new HttpClientTransport(config);
21
- if (config.role === 'server')
22
- return new HttpServerTransport(config);
23
- throw new NotImplementedError(`HTTP transport role not implemented: ${config.role}`);
24
- default:
25
- throw new TransportError(`Invalid transport type: ${config.type}`, 'INVALID_TRANSPORT_TYPE', { config });
26
- }
27
- }
28
- }
29
- //# sourceMappingURL=factory.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../../../src/core/aggregation/transport/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AA+B5C,gDAAgD;AAChD,MAAM,OAAO,gBAAgB;IAC3B,MAAM,CAAC,SAAS,CAAC,MAAuB;QACtC,QAAO,MAAM,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,OAAO;gBACV,OAAO,IAAI,cAAc,CAAC;oBACxB,MAAM,EAAgB,MAAM,CAAC,MAAM;oBACnC,MAAM,EAAgB,MAAM,CAAC,MAAM;oBACnC,mBAAmB,EAAG,MAAM,CAAC,mBAAmB;iBACjD,CAAC,CAAC;YACL,KAAK,SAAS;gBACZ,MAAM,IAAI,mBAAmB,CAAC,wCAAwC,CAAC,CAAC;YAC1E,KAAK,MAAM;gBACT,IAAG,MAAM,CAAC,IAAI,KAAK,QAAQ;oBAAE,OAAO,IAAI,mBAAmB,CAAC,MAAM,CAAC,CAAC;gBACpE,IAAG,MAAM,CAAC,IAAI,KAAK,QAAQ;oBAAE,OAAO,IAAI,mBAAmB,CAAC,MAAM,CAAC,CAAC;gBACpE,MAAM,IAAI,mBAAmB,CAC3B,wCAAyC,MAA2B,CAAC,IAAI,EAAE,CAC5E,CAAC;YACJ;gBACE,MAAM,IAAI,cAAc,CACtB,2BAA4B,MAA2B,CAAC,IAAI,EAAE,EAC9D,wBAAwB,EACxB,EAAE,MAAM,EAAE,CACX,CAAC;QACN,CAAC;IACH,CAAC;CACF"}