beignet 0.2.0 → 0.4.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 (215) hide show
  1. package/README.md +306 -1
  2. package/dist/cli/auth.js +238 -0
  3. package/dist/cli/auth.js.map +1 -0
  4. package/dist/cli/beignet-node.js +1034 -57
  5. package/dist/cli/beignet-node.js.map +1 -1
  6. package/dist/cli/cli.js +1257 -18
  7. package/dist/cli/cli.js.map +1 -1
  8. package/dist/cli/config.js +45 -1
  9. package/dist/cli/config.js.map +1 -1
  10. package/dist/cli/daemon.js +398 -38
  11. package/dist/cli/daemon.js.map +1 -1
  12. package/dist/cli/errors.js +2 -0
  13. package/dist/cli/errors.js.map +1 -1
  14. package/dist/cli/index.js +6 -1
  15. package/dist/cli/index.js.map +1 -1
  16. package/dist/cli/openapi.js +1343 -89
  17. package/dist/cli/openapi.js.map +1 -1
  18. package/dist/cli/restore.js +89 -0
  19. package/dist/cli/restore.js.map +1 -0
  20. package/dist/cli/wallet-storage.js +34 -0
  21. package/dist/cli/wallet-storage.js.map +1 -0
  22. package/dist/electrum/index.js +107 -12
  23. package/dist/electrum/index.js.map +1 -1
  24. package/dist/index.js +1 -0
  25. package/dist/index.js.map +1 -1
  26. package/dist/lightning/advisor/fee-tuner.js +42 -0
  27. package/dist/lightning/advisor/fee-tuner.js.map +1 -0
  28. package/dist/lightning/advisor/index.js +9 -1
  29. package/dist/lightning/advisor/index.js.map +1 -1
  30. package/dist/lightning/advisor/rebalance-planner.js +55 -0
  31. package/dist/lightning/advisor/rebalance-planner.js.map +1 -0
  32. package/dist/lightning/backup/index.js +18 -0
  33. package/dist/lightning/backup/index.js.map +1 -0
  34. package/dist/lightning/backup/scb.js +42 -0
  35. package/dist/lightning/backup/scb.js.map +1 -0
  36. package/dist/lightning/chain/chain-monitor.js +27 -0
  37. package/dist/lightning/chain/chain-monitor.js.map +1 -1
  38. package/dist/lightning/chain/output-resolver.js +66 -15
  39. package/dist/lightning/chain/output-resolver.js.map +1 -1
  40. package/dist/lightning/chain/types.js +1 -0
  41. package/dist/lightning/chain/types.js.map +1 -1
  42. package/dist/lightning/channel/channel-manager.js +91 -24
  43. package/dist/lightning/channel/channel-manager.js.map +1 -1
  44. package/dist/lightning/channel/channel-state.js.map +1 -1
  45. package/dist/lightning/channel/channel.js +122 -4
  46. package/dist/lightning/channel/channel.js.map +1 -1
  47. package/dist/lightning/channel/commitment-builder.js +4 -7
  48. package/dist/lightning/channel/commitment-builder.js.map +1 -1
  49. package/dist/lightning/channel/dual-funding.js +6 -5
  50. package/dist/lightning/channel/dual-funding.js.map +1 -1
  51. package/dist/lightning/channel/splice-tx.js.map +1 -1
  52. package/dist/lightning/channel/types.js +3 -1
  53. package/dist/lightning/channel/types.js.map +1 -1
  54. package/dist/lightning/channel/validation.js +3 -3
  55. package/dist/lightning/channel/validation.js.map +1 -1
  56. package/dist/lightning/crypto/index.js +1 -0
  57. package/dist/lightning/crypto/index.js.map +1 -1
  58. package/dist/lightning/crypto/message-signing.js +116 -0
  59. package/dist/lightning/crypto/message-signing.js.map +1 -0
  60. package/dist/lightning/crypto/xchacha20poly1305.js +77 -0
  61. package/dist/lightning/crypto/xchacha20poly1305.js.map +1 -0
  62. package/dist/lightning/features/flags.js +1 -0
  63. package/dist/lightning/features/flags.js.map +1 -1
  64. package/dist/lightning/gossip/messages.js +37 -1
  65. package/dist/lightning/gossip/messages.js.map +1 -1
  66. package/dist/lightning/index.js +2 -1
  67. package/dist/lightning/index.js.map +1 -1
  68. package/dist/lightning/keys/signer.js +24 -3
  69. package/dist/lightning/keys/signer.js.map +1 -1
  70. package/dist/lightning/keys/wallet-keys.js +1 -0
  71. package/dist/lightning/keys/wallet-keys.js.map +1 -1
  72. package/dist/lightning/message/index.js +1 -0
  73. package/dist/lightning/message/index.js.map +1 -1
  74. package/dist/lightning/message/peer-storage.js +43 -0
  75. package/dist/lightning/message/peer-storage.js.map +1 -0
  76. package/dist/lightning/message/types.js +2 -0
  77. package/dist/lightning/message/types.js.map +1 -1
  78. package/dist/lightning/node/lightning-node.js +1593 -236
  79. package/dist/lightning/node/lightning-node.js.map +1 -1
  80. package/dist/lightning/node/types.js +18 -1
  81. package/dist/lightning/node/types.js.map +1 -1
  82. package/dist/lightning/offer/offer-manager.js +2 -5
  83. package/dist/lightning/offer/offer-manager.js.map +1 -1
  84. package/dist/lightning/offer/tlv.js +3 -1
  85. package/dist/lightning/offer/tlv.js.map +1 -1
  86. package/dist/lightning/storage/encryption.js +67 -0
  87. package/dist/lightning/storage/encryption.js.map +1 -0
  88. package/dist/lightning/storage/index.js +1 -0
  89. package/dist/lightning/storage/index.js.map +1 -1
  90. package/dist/lightning/storage/serialization.js +6 -2
  91. package/dist/lightning/storage/serialization.js.map +1 -1
  92. package/dist/lightning/storage/sqlite-storage.js +405 -33
  93. package/dist/lightning/storage/sqlite-storage.js.map +1 -1
  94. package/dist/lightning/watchtower/blob.js +221 -0
  95. package/dist/lightning/watchtower/blob.js.map +1 -0
  96. package/dist/lightning/watchtower/index.js +55 -0
  97. package/dist/lightning/watchtower/index.js.map +1 -0
  98. package/dist/lightning/watchtower/justice.js +272 -0
  99. package/dist/lightning/watchtower/justice.js.map +1 -0
  100. package/dist/lightning/watchtower/tower-connection.js +208 -0
  101. package/dist/lightning/watchtower/tower-connection.js.map +1 -0
  102. package/dist/lightning/watchtower/types.js +3 -0
  103. package/dist/lightning/watchtower/types.js.map +1 -0
  104. package/dist/lightning/watchtower/watchtower-client.js +472 -0
  105. package/dist/lightning/watchtower/watchtower-client.js.map +1 -0
  106. package/dist/lightning/watchtower/wtwire.js +201 -0
  107. package/dist/lightning/watchtower/wtwire.js.map +1 -0
  108. package/dist/logger.js +41 -0
  109. package/dist/logger.js.map +1 -0
  110. package/dist/shapes/electrum.js +32 -1
  111. package/dist/shapes/electrum.js.map +1 -1
  112. package/dist/shapes/wallet.js +11 -1
  113. package/dist/shapes/wallet.js.map +1 -1
  114. package/dist/transaction/index.js +163 -15
  115. package/dist/transaction/index.js.map +1 -1
  116. package/dist/types/cli/auth.d.ts +34 -0
  117. package/dist/types/cli/beignet-node.d.ts +148 -4
  118. package/dist/types/cli/daemon.d.ts +5 -0
  119. package/dist/types/cli/errors.d.ts +2 -0
  120. package/dist/types/cli/index.d.ts +1 -0
  121. package/dist/types/cli/restore.d.ts +10 -0
  122. package/dist/types/cli/types.d.ts +235 -1
  123. package/dist/types/cli/wallet-storage.d.ts +3 -0
  124. package/dist/types/electrum/index.d.ts +12 -0
  125. package/dist/types/electrum.js +1 -0
  126. package/dist/types/electrum.js.map +1 -1
  127. package/dist/types/index.d.ts +1 -0
  128. package/dist/types/lightning/advisor/fee-tuner.d.ts +20 -0
  129. package/dist/types/lightning/advisor/index.d.ts +4 -0
  130. package/dist/types/lightning/advisor/rebalance-planner.d.ts +12 -0
  131. package/dist/types/lightning/backup/index.d.ts +1 -0
  132. package/dist/types/lightning/backup/scb.d.ts +24 -0
  133. package/dist/types/lightning/chain/chain-monitor.d.ts +1 -0
  134. package/dist/types/lightning/chain/types.d.ts +1 -0
  135. package/dist/types/lightning/channel/channel-manager.d.ts +11 -0
  136. package/dist/types/lightning/channel/channel-state.d.ts +2 -0
  137. package/dist/types/lightning/channel/channel.d.ts +11 -5
  138. package/dist/types/lightning/channel/commitment-builder.d.ts +7 -7
  139. package/dist/types/lightning/channel/dual-funding.d.ts +2 -1
  140. package/dist/types/lightning/channel/splice-tx.d.ts +2 -2
  141. package/dist/types/lightning/channel/types.d.ts +2 -0
  142. package/dist/types/lightning/channel/validation.d.ts +1 -1
  143. package/dist/types/lightning/crypto/index.d.ts +1 -0
  144. package/dist/types/lightning/crypto/message-signing.d.ts +9 -0
  145. package/dist/types/lightning/crypto/xchacha20poly1305.d.ts +3 -0
  146. package/dist/types/lightning/features/flags.d.ts +1 -0
  147. package/dist/types/lightning/gossip/messages.d.ts +4 -0
  148. package/dist/types/lightning/index.d.ts +1 -0
  149. package/dist/types/lightning/keys/signer.d.ts +18 -1
  150. package/dist/types/lightning/keys/wallet-keys.d.ts +2 -1
  151. package/dist/types/lightning/message/index.d.ts +1 -0
  152. package/dist/types/lightning/message/peer-storage.d.ts +9 -0
  153. package/dist/types/lightning/message/types.d.ts +2 -0
  154. package/dist/types/lightning/node/lightning-node.d.ts +120 -4
  155. package/dist/types/lightning/node/types.d.ts +66 -1
  156. package/dist/types/lightning/storage/encryption.d.ts +11 -0
  157. package/dist/types/lightning/storage/index.d.ts +1 -0
  158. package/dist/types/lightning/storage/serialization.d.ts +2 -0
  159. package/dist/types/lightning/storage/sqlite-storage.d.ts +43 -3
  160. package/dist/types/lightning/storage/types.d.ts +62 -0
  161. package/dist/types/lightning/watchtower/blob.d.ts +46 -0
  162. package/dist/types/lightning/watchtower/index.d.ts +9 -0
  163. package/dist/types/lightning/watchtower/justice.d.ts +30 -0
  164. package/dist/types/lightning/watchtower/tower-connection.d.ts +34 -0
  165. package/dist/types/lightning/watchtower/types.d.ts +46 -0
  166. package/dist/types/lightning/watchtower/watchtower-client.d.ts +68 -0
  167. package/dist/types/lightning/watchtower/wtwire.d.ts +90 -0
  168. package/dist/types/logger.d.ts +17 -0
  169. package/dist/types/shapes/electrum.d.ts +3 -1
  170. package/dist/types/transaction/index.d.ts +6 -0
  171. package/dist/types/transaction.js.map +1 -1
  172. package/dist/types/types/electrum.d.ts +3 -2
  173. package/dist/types/types/transaction.d.ts +1 -1
  174. package/dist/types/types/wallet.d.ts +80 -4
  175. package/dist/types/utils/descriptors.d.ts +2 -0
  176. package/dist/types/utils/fees.d.ts +3 -0
  177. package/dist/types/utils/helpers.d.ts +3 -1
  178. package/dist/types/utils/index.d.ts +5 -0
  179. package/dist/types/utils/multisig.d.ts +29 -0
  180. package/dist/types/utils/transaction.d.ts +7 -0
  181. package/dist/types/utils/wallet-storage-encryption.d.ts +3 -0
  182. package/dist/types/utils/wallet.d.ts +1 -1
  183. package/dist/types/utils/watch-only.d.ts +12 -0
  184. package/dist/types/wallet/constants.d.ts +1 -0
  185. package/dist/types/wallet/index.d.ts +63 -4
  186. package/dist/types/wallet.js +3 -0
  187. package/dist/types/wallet.js.map +1 -1
  188. package/dist/utils/derivation-path.js +8 -7
  189. package/dist/utils/derivation-path.js.map +1 -1
  190. package/dist/utils/descriptors.js +56 -0
  191. package/dist/utils/descriptors.js.map +1 -0
  192. package/dist/utils/electrum.js +14 -4
  193. package/dist/utils/electrum.js.map +1 -1
  194. package/dist/utils/fees.js +19 -0
  195. package/dist/utils/fees.js.map +1 -0
  196. package/dist/utils/helpers.js +22 -5
  197. package/dist/utils/helpers.js.map +1 -1
  198. package/dist/utils/index.js +5 -0
  199. package/dist/utils/index.js.map +1 -1
  200. package/dist/utils/multisig.js +90 -0
  201. package/dist/utils/multisig.js.map +1 -0
  202. package/dist/utils/transaction.js +30 -3
  203. package/dist/utils/transaction.js.map +1 -1
  204. package/dist/utils/wallet-storage-encryption.js +45 -0
  205. package/dist/utils/wallet-storage-encryption.js.map +1 -0
  206. package/dist/utils/wallet.js +3 -1
  207. package/dist/utils/wallet.js.map +1 -1
  208. package/dist/utils/watch-only.js +102 -0
  209. package/dist/utils/watch-only.js.map +1 -0
  210. package/dist/wallet/constants.js +2 -1
  211. package/dist/wallet/constants.js.map +1 -1
  212. package/dist/wallet/index.js +810 -51
  213. package/dist/wallet/index.js.map +1 -1
  214. package/docs/ROADMAP.md +365 -0
  215. package/package.json +1 -1
@@ -295,11 +295,9 @@ function signRemoteCommitment(state, signer, remotePerCommitmentPoint, commitmen
295
295
  const built = buildRemoteCommitment(state, remotePerCommitmentPoint, commitmentNumber);
296
296
  const signature = signer.signCommitmentTx(built.result.tx, built.fundingWitnessScript, built.fundingAmount);
297
297
  const htlcSignatures = [];
298
- if (!signer.htlcBasepointSecret ||
299
- built.result.outputMap.htlcs.length === 0) {
298
+ if (!signer.hasHtlcKeys || built.result.outputMap.htlcs.length === 0) {
300
299
  return { signature, htlcSignatures };
301
300
  }
302
- const localHtlcPrivkey = (0, derivation_1.derivePrivateKey)(signer.htlcBasepointSecret, remotePerCommitmentPoint, state.localBasepoints.htlcBasepoint);
303
301
  const keys = deriveCommitmentKeys(state.localBasepoints, state.remoteBasepoints, remotePerCommitmentPoint, false);
304
302
  const htlcOutputsMeta = built.htlcOutputs;
305
303
  const feeratePerKw = state.role === types_1.ChannelRole.OPENER
@@ -328,7 +326,7 @@ function signRemoteCommitment(state, signer, remotePerCommitmentPoint, commitmen
328
326
  const fee = BigInt(Math.floor((htlcTimeoutWeight * feeratePerKw) / 1000));
329
327
  htlcTx = (0, htlc_1.buildHtlcTimeoutTx)(commitTxid, outputIndex, meta.amount, meta.cltvExpiry, keys.revocationPubkey, keys.localDelayedPubkey, state.localConfig.toSelfDelay, fee, useAnchors, htlcLeaseExpiry);
330
328
  }
331
- const sig = signer.signHtlcTx(htlcTx, meta.script, Number(meta.amount), localHtlcPrivkey, useAnchors);
329
+ const sig = signer.signHtlcTxForCommitment(htlcTx, meta.script, Number(meta.amount), remotePerCommitmentPoint, state.localBasepoints.htlcBasepoint, useAnchors);
332
330
  htlcSignatures.push(sig);
333
331
  }
334
332
  return { signature, htlcSignatures };
@@ -385,7 +383,7 @@ function taprootHtlcOutputAndLeaf(kind, keys, paymentHash, cltvExpiry) {
385
383
  };
386
384
  }
387
385
  function signRemoteHtlcSignaturesTaproot(state, signer, remotePerCommitmentPoint, commitmentNumber) {
388
- if (!(0, types_1.isTaprootChannel)(state.channelType) || !signer.htlcBasepointSecret) {
386
+ if (!(0, types_1.isTaprootChannel)(state.channelType) || !signer.hasHtlcKeys) {
389
387
  return [];
390
388
  }
391
389
  const built = buildRemoteCommitment(state, remotePerCommitmentPoint, commitmentNumber);
@@ -394,7 +392,6 @@ function signRemoteHtlcSignaturesTaproot(state, signer, remotePerCommitmentPoint
394
392
  return [];
395
393
  const keys = deriveCommitmentKeys(state.localBasepoints, state.remoteBasepoints, remotePerCommitmentPoint, false);
396
394
  const htlcOutputsMeta = built.htlcOutputs;
397
- const localHtlcPrivkey = (0, derivation_1.derivePrivateKey)(signer.htlcBasepointSecret, remotePerCommitmentPoint, state.localBasepoints.htlcBasepoint);
398
395
  const commitTxid = built.result.tx.getId();
399
396
  const sigs = [];
400
397
  for (let k = 0; k < htlcs.length; k++) {
@@ -406,7 +403,7 @@ function signRemoteHtlcSignaturesTaproot(state, signer, remotePerCommitmentPoint
406
403
  ? (0, htlc_taproot_1.buildTaprootHtlcSuccessTx)(commitTxid, outputIndex, meta.amount, keys.revocationPubkey, keys.localDelayedPubkey, state.localConfig.toSelfDelay)
407
404
  : (0, htlc_taproot_1.buildTaprootHtlcTimeoutTx)(commitTxid, outputIndex, meta.amount, meta.cltvExpiry, keys.revocationPubkey, keys.localDelayedPubkey, state.localConfig.toSelfDelay);
408
405
  const sighash = (0, htlc_taproot_1.taprootHtlcLeafSighash)(htlcTx, output, Number(meta.amount), leafScript, leafVersion);
409
- sigs.push((0, htlc_taproot_1.signTaprootHtlcLeaf)(sighash, localHtlcPrivkey));
406
+ sigs.push(signer.signTaprootHtlcForCommitment(sighash, remotePerCommitmentPoint, state.localBasepoints.htlcBasepoint));
410
407
  }
411
408
  return sigs;
412
409
  }
@@ -1 +1 @@
1
- {"version":3,"file":"commitment-builder.js","sourceRoot":"","sources":["../../../src/lightning/channel/commitment-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commitment-builder.js","sourceRoot":"","sources":["../../../src/lightning/channel/commitment-builder.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ var DualFundingState;
14
14
  DualFundingState["ABORTED"] = "ABORTED";
15
15
  })(DualFundingState = exports.DualFundingState || (exports.DualFundingState = {}));
16
16
  class DualFundingSession {
17
- constructor(isInitiator, channelId) {
17
+ constructor(isInitiator, channelId, maxFundingSatoshis = types_1.MAX_FUNDING_SATOSHIS) {
18
18
  this._state = DualFundingState.NONE;
19
19
  this._txBuilder = null;
20
20
  this._localParams = null;
@@ -30,6 +30,7 @@ class DualFundingSession {
30
30
  this._acceptMsg = null;
31
31
  this._isInitiator = isInitiator;
32
32
  this._channelId = Buffer.from(channelId);
33
+ this._maxFundingSatoshis = maxFundingSatoshis;
33
34
  }
34
35
  getState() {
35
36
  return this._state;
@@ -500,8 +501,8 @@ class DualFundingSession {
500
501
  return this._txBuilder?.getState() ?? null;
501
502
  }
502
503
  validateLocalParams(params) {
503
- if (params.fundingSatoshis > types_1.MAX_FUNDING_SATOSHIS) {
504
- return `funding_satoshis ${params.fundingSatoshis} exceeds maximum ${types_1.MAX_FUNDING_SATOSHIS}`;
504
+ if (params.fundingSatoshis > this._maxFundingSatoshis) {
505
+ return `funding_satoshis ${params.fundingSatoshis} exceeds maximum ${this._maxFundingSatoshis}`;
505
506
  }
506
507
  if (params.dustLimitSatoshis < types_1.MIN_DUST_LIMIT_SATOSHIS) {
507
508
  return `dust_limit_satoshis ${params.dustLimitSatoshis} below minimum ${types_1.MIN_DUST_LIMIT_SATOSHIS}`;
@@ -524,8 +525,8 @@ class DualFundingSession {
524
525
  return null;
525
526
  }
526
527
  validateOpenMsg(msg) {
527
- if (msg.fundingSatoshis > types_1.MAX_FUNDING_SATOSHIS) {
528
- return `funding_satoshis ${msg.fundingSatoshis} exceeds maximum ${types_1.MAX_FUNDING_SATOSHIS}`;
528
+ if (msg.fundingSatoshis > this._maxFundingSatoshis) {
529
+ return `funding_satoshis ${msg.fundingSatoshis} exceeds maximum ${this._maxFundingSatoshis}`;
529
530
  }
530
531
  if (msg.dustLimitSatoshis < types_1.MIN_DUST_LIMIT_SATOSHIS) {
531
532
  return `dust_limit_satoshis ${msg.dustLimitSatoshis} below minimum ${types_1.MIN_DUST_LIMIT_SATOSHIS}`;
@@ -1 +1 @@
1
- {"version":3,"file":"dual-funding.js","sourceRoot":"","sources":["../../../src/lightning/channel/dual-funding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dual-funding.js","sourceRoot":"","sources":["../../../src/lightning/channel/dual-funding.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"splice-tx.js","sourceRoot":"","sources":["../../../src/lightning/channel/splice-tx.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"splice-tx.js","sourceRoot":"","sources":["../../../src/lightning/channel/splice-tx.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.REGTEST_CHAIN_HASH = exports.BITCOIN_CHAIN_HASH = exports.DEFAULT_CHANNEL_CONFIG = exports.MIN_DUST_LIMIT_SATOSHIS = exports.MAX_FUNDING_SATOSHIS = exports.MAX_ACCEPTED_HTLCS = exports.HtlcState = exports.HtlcDirection = exports.ChannelRole = exports.ChannelState = exports.isTaprootChannel = exports.isAnchorChannel = void 0;
3
+ exports.SIGNET_CHAIN_HASH = exports.REGTEST_CHAIN_HASH = exports.BITCOIN_CHAIN_HASH = exports.DEFAULT_CHANNEL_CONFIG = exports.MIN_DUST_LIMIT_SATOSHIS = exports.MAX_WUMBO_FUNDING_SATOSHIS = exports.MAX_FUNDING_SATOSHIS = exports.MAX_ACCEPTED_HTLCS = exports.HtlcState = exports.HtlcDirection = exports.ChannelRole = exports.ChannelState = exports.isTaprootChannel = exports.isAnchorChannel = void 0;
4
4
  const flags_1 = require("../features/flags");
5
5
  function isAnchorChannel(channelType) {
6
6
  if (!channelType || channelType.length === 0)
@@ -55,6 +55,7 @@ var HtlcState;
55
55
  })(HtlcState = exports.HtlcState || (exports.HtlcState = {}));
56
56
  exports.MAX_ACCEPTED_HTLCS = 483;
57
57
  exports.MAX_FUNDING_SATOSHIS = 16777216n;
58
+ exports.MAX_WUMBO_FUNDING_SATOSHIS = 1000000000n;
58
59
  exports.MIN_DUST_LIMIT_SATOSHIS = 354n;
59
60
  exports.DEFAULT_CHANNEL_CONFIG = {
60
61
  dustLimitSatoshis: 354n,
@@ -67,4 +68,5 @@ exports.DEFAULT_CHANNEL_CONFIG = {
67
68
  };
68
69
  exports.BITCOIN_CHAIN_HASH = Buffer.from('6fe28c0ab6f1b372c1a6a246ae63f74f931e8365e15a089c68d6190000000000', 'hex');
69
70
  exports.REGTEST_CHAIN_HASH = Buffer.from('06226e46111a0b59caaf126043eb5bbf28c34f3a5e332a1fc7b2b73cf188910f', 'hex');
71
+ exports.SIGNET_CHAIN_HASH = Buffer.from('f61eee3b63a380a477a063af32b2bbc97c9ff9f01f2c4225e973988108000000', 'hex');
70
72
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/lightning/channel/types.ts"],"names":[],"mappings":";;;AAIA,6CAA0D;AAM1D,SAAgB,eAAe,CAAC,WAA0B;IACzD,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3D,MAAM,KAAK,GAAG,oBAAY,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAKnD,OAAO,CACN,KAAK,CAAC,UAAU,CAAC,eAAO,CAAC,oBAAoB,CAAC;QAC9C,KAAK,CAAC,UAAU,CAAC,eAAO,CAAC,cAAc,CAAC,CACxC,CAAC;AACH,CAAC;AAXD,0CAWC;AAMD,SAAgB,gBAAgB,CAAC,WAA0B;IAC1D,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3D,OAAO,oBAAY,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,UAAU,CACrD,eAAO,CAAC,cAAc,CACtB,CAAC;AACH,CAAC;AALD,4CAKC;AAED,IAAY,YAkBX;AAlBD,WAAY,YAAY;IACvB,6BAAa,CAAA;IACb,uCAAuB,CAAA;IACvB,2CAA2B,CAAA;IAC3B,6DAA6C,CAAA;IAC7C,2DAA2C,CAAA;IAC3C,yEAAyD,CAAA;IACzD,iEAAiD,CAAA;IACjD,iCAAiB,CAAA;IACjB,+CAA+B,CAAA;IAC/B,2DAA2C,CAAA;IAC3C,6DAA6C,CAAA;IAC7C,mDAAmC,CAAA;IACnC,iEAAiD,CAAA;IACjD,qCAAqB,CAAA;IACrB,iCAAiB,CAAA;IACjB,6CAA6B,CAAA;IAC7B,mCAAmB,CAAA;AACpB,CAAC,EAlBW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAkBvB;AAED,IAAY,WAGX;AAHD,WAAY,WAAW;IACtB,gCAAiB,CAAA;IACjB,oCAAqB,CAAA;AACtB,CAAC,EAHW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAGtB;AAED,IAAY,aAGX;AAHD,WAAY,aAAa;IACxB,oCAAmB,CAAA;IACnB,sCAAqB,CAAA;AACtB,CAAC,EAHW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAGxB;AAED,IAAY,SAKX;AALD,WAAY,SAAS;IACpB,gCAAmB,CAAA;IACnB,oCAAuB,CAAA;IACvB,oCAAuB,CAAA;IACvB,8BAAiB,CAAA;AAClB,CAAC,EALW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAKpB;AAyCY,QAAA,kBAAkB,GAAG,GAAG,CAAC;AAGzB,QAAA,oBAAoB,GAAG,SAAS,CAAC;AAMjC,QAAA,uBAAuB,GAAG,IAAI,CAAC;AAG/B,QAAA,sBAAsB,GAAmB;IACrD,iBAAiB,EAAE,IAAI;IACvB,wBAAwB,EAAE,UAAY;IACtC,sBAAsB,EAAE,MAAO;IAC/B,eAAe,EAAE,KAAM;IACvB,WAAW,EAAE,GAAG;IAChB,gBAAgB,EAAE,GAAG;IACrB,YAAY,EAAE,GAAG;CACjB,CAAC;AAUW,QAAA,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAC5C,kEAAkE,EAClE,KAAK,CACL,CAAC;AAGW,QAAA,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAC5C,kEAAkE,EAClE,KAAK,CACL,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/lightning/channel/types.ts"],"names":[],"mappings":";;;AAIA,6CAA0D;AAM1D,SAAgB,eAAe,CAAC,WAA0B;IACzD,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3D,MAAM,KAAK,GAAG,oBAAY,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAKnD,OAAO,CACN,KAAK,CAAC,UAAU,CAAC,eAAO,CAAC,oBAAoB,CAAC;QAC9C,KAAK,CAAC,UAAU,CAAC,eAAO,CAAC,cAAc,CAAC,CACxC,CAAC;AACH,CAAC;AAXD,0CAWC;AAMD,SAAgB,gBAAgB,CAAC,WAA0B;IAC1D,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3D,OAAO,oBAAY,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,UAAU,CACrD,eAAO,CAAC,cAAc,CACtB,CAAC;AACH,CAAC;AALD,4CAKC;AAED,IAAY,YAkBX;AAlBD,WAAY,YAAY;IACvB,6BAAa,CAAA;IACb,uCAAuB,CAAA;IACvB,2CAA2B,CAAA;IAC3B,6DAA6C,CAAA;IAC7C,2DAA2C,CAAA;IAC3C,yEAAyD,CAAA;IACzD,iEAAiD,CAAA;IACjD,iCAAiB,CAAA;IACjB,+CAA+B,CAAA;IAC/B,2DAA2C,CAAA;IAC3C,6DAA6C,CAAA;IAC7C,mDAAmC,CAAA;IACnC,iEAAiD,CAAA;IACjD,qCAAqB,CAAA;IACrB,iCAAiB,CAAA;IACjB,6CAA6B,CAAA;IAC7B,mCAAmB,CAAA;AACpB,CAAC,EAlBW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAkBvB;AAED,IAAY,WAGX;AAHD,WAAY,WAAW;IACtB,gCAAiB,CAAA;IACjB,oCAAqB,CAAA;AACtB,CAAC,EAHW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAGtB;AAED,IAAY,aAGX;AAHD,WAAY,aAAa;IACxB,oCAAmB,CAAA;IACnB,sCAAqB,CAAA;AACtB,CAAC,EAHW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAGxB;AAED,IAAY,SAKX;AALD,WAAY,SAAS;IACpB,gCAAmB,CAAA;IACnB,oCAAuB,CAAA;IACvB,oCAAuB,CAAA;IACvB,8BAAiB,CAAA;AAClB,CAAC,EALW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAKpB;AAyCY,QAAA,kBAAkB,GAAG,GAAG,CAAC;AAGzB,QAAA,oBAAoB,GAAG,SAAS,CAAC;AAKjC,QAAA,0BAA0B,GAAG,WAAc,CAAC;AAM5C,QAAA,uBAAuB,GAAG,IAAI,CAAC;AAG/B,QAAA,sBAAsB,GAAmB;IACrD,iBAAiB,EAAE,IAAI;IACvB,wBAAwB,EAAE,UAAY;IACtC,sBAAsB,EAAE,MAAO;IAC/B,eAAe,EAAE,KAAM;IACvB,WAAW,EAAE,GAAG;IAChB,gBAAgB,EAAE,GAAG;IACrB,YAAY,EAAE,GAAG;CACjB,CAAC;AAUW,QAAA,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAC5C,kEAAkE,EAClE,KAAK,CACL,CAAC;AAGW,QAAA,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAC5C,kEAAkE,EAClE,KAAK,CACL,CAAC;AAGW,QAAA,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAC3C,kEAAkE,EAClE,KAAK,CACL,CAAC"}
@@ -34,12 +34,12 @@ function deriveV2TemporaryChannelId(openerRevocationBasepoint) {
34
34
  return deriveV2ChannelId(Buffer.alloc(33), openerRevocationBasepoint);
35
35
  }
36
36
  exports.deriveV2TemporaryChannelId = deriveV2TemporaryChannelId;
37
- function validateOpenChannelParams(msg) {
37
+ function validateOpenChannelParams(msg, maxFundingSatoshis = types_1.MAX_FUNDING_SATOSHIS) {
38
38
  if (msg.fundingSatoshis === 0n) {
39
39
  return 'funding_satoshis must be greater than 0';
40
40
  }
41
- if (msg.fundingSatoshis > types_1.MAX_FUNDING_SATOSHIS) {
42
- return `funding_satoshis ${msg.fundingSatoshis} exceeds maximum ${types_1.MAX_FUNDING_SATOSHIS}`;
41
+ if (msg.fundingSatoshis > maxFundingSatoshis) {
42
+ return `funding_satoshis ${msg.fundingSatoshis} exceeds maximum ${maxFundingSatoshis}`;
43
43
  }
44
44
  if (msg.pushMsat > msg.fundingSatoshis * 1000n) {
45
45
  return 'push_msat exceeds funding_satoshis * 1000';
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../src/lightning/channel/validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../src/lightning/channel/validation.ts"],"names":[],"mappings":"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"}
@@ -17,4 +17,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./chacha20poly1305"), exports);
18
18
  __exportStar(require("./hkdf"), exports);
19
19
  __exportStar(require("./ecdh"), exports);
20
+ __exportStar(require("./message-signing"), exports);
20
21
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lightning/crypto/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,yCAAuB;AACvB,yCAAuB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lightning/crypto/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,yCAAuB;AACvB,yCAAuB;AACvB,oDAAkC"}
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.verifyMessageSignature = exports.signMessageWithKey = exports.zbase32Decode = exports.zbase32Encode = void 0;
30
+ const secp = __importStar(require("@noble/secp256k1"));
31
+ const crypto_1 = __importDefault(require("crypto"));
32
+ const signing_1 = require("../invoice/signing");
33
+ const SIGNED_MSG_PREFIX = 'Lightning Signed Message:';
34
+ const ZBASE32_ALPHABET = 'ybndrfg8ejkmcpqxot1uwisza345h769';
35
+ const ZBASE32_REVERSE = new Map([...ZBASE32_ALPHABET].map((c, i) => [c, i]));
36
+ function zbase32Encode(data) {
37
+ let bits = 0;
38
+ let value = 0;
39
+ let out = '';
40
+ for (const byte of data) {
41
+ value = (value << 8) | byte;
42
+ bits += 8;
43
+ while (bits >= 5) {
44
+ bits -= 5;
45
+ out += ZBASE32_ALPHABET[(value >> bits) & 31];
46
+ }
47
+ }
48
+ if (bits > 0) {
49
+ out += ZBASE32_ALPHABET[(value << (5 - bits)) & 31];
50
+ }
51
+ return out;
52
+ }
53
+ exports.zbase32Encode = zbase32Encode;
54
+ function zbase32Decode(text) {
55
+ let bits = 0;
56
+ let value = 0;
57
+ const out = [];
58
+ for (const ch of text) {
59
+ const v = ZBASE32_REVERSE.get(ch);
60
+ if (v === undefined)
61
+ return null;
62
+ value = (value << 5) | v;
63
+ bits += 5;
64
+ if (bits >= 8) {
65
+ bits -= 8;
66
+ out.push((value >> bits) & 0xff);
67
+ }
68
+ }
69
+ if (bits > 0 && (value & ((1 << bits) - 1)) !== 0)
70
+ return null;
71
+ return Buffer.from(out);
72
+ }
73
+ exports.zbase32Decode = zbase32Decode;
74
+ function messageDigest(message) {
75
+ const msg = typeof message === 'string' ? Buffer.from(message, 'utf8') : message;
76
+ const first = crypto_1.default
77
+ .createHash('sha256')
78
+ .update(Buffer.concat([Buffer.from(SIGNED_MSG_PREFIX, 'utf8'), msg]))
79
+ .digest();
80
+ return crypto_1.default.createHash('sha256').update(first).digest();
81
+ }
82
+ function signMessageWithKey(message, privateKey) {
83
+ (0, signing_1.ensureHmac)();
84
+ const digest = messageDigest(message);
85
+ const [sig, recId] = secp.signSync(digest, privateKey, {
86
+ recovered: true,
87
+ der: false
88
+ });
89
+ const compact = Buffer.alloc(65);
90
+ compact[0] = 27 + 4 + recId;
91
+ Buffer.from(sig).copy(compact, 1);
92
+ return zbase32Encode(compact);
93
+ }
94
+ exports.signMessageWithKey = signMessageWithKey;
95
+ function verifyMessageSignature(message, signature) {
96
+ const compact = zbase32Decode(signature);
97
+ if (!compact || compact.length !== 65) {
98
+ return { valid: false, pubkey: null };
99
+ }
100
+ const header = compact[0];
101
+ if (header < 27 || header > 34) {
102
+ return { valid: false, pubkey: null };
103
+ }
104
+ const recId = (header - 27) & 3;
105
+ (0, signing_1.ensureHmac)();
106
+ const digest = messageDigest(message);
107
+ try {
108
+ const pubkey = secp.recoverPublicKey(digest, compact.subarray(1), recId, true);
109
+ return { valid: true, pubkey: Buffer.from(pubkey) };
110
+ }
111
+ catch {
112
+ return { valid: false, pubkey: null };
113
+ }
114
+ }
115
+ exports.verifyMessageSignature = verifyMessageSignature;
116
+ //# sourceMappingURL=message-signing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message-signing.js","sourceRoot":"","sources":["../../../src/lightning/crypto/message-signing.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.decrypt = exports.encrypt = void 0;
4
+ const chacha20poly1305_1 = require("./chacha20poly1305");
5
+ const SIGMA = [0x61707865, 0x3320646e, 0x79622d32, 0x6b206574];
6
+ function rotl32(x, n) {
7
+ return ((x << n) | (x >>> (32 - n))) >>> 0;
8
+ }
9
+ function hchacha20(key, nonce16) {
10
+ const state = new Uint32Array(16);
11
+ state[0] = SIGMA[0];
12
+ state[1] = SIGMA[1];
13
+ state[2] = SIGMA[2];
14
+ state[3] = SIGMA[3];
15
+ for (let i = 0; i < 8; i++) {
16
+ state[4 + i] = key.readUInt32LE(i * 4);
17
+ }
18
+ for (let i = 0; i < 4; i++) {
19
+ state[12 + i] = nonce16.readUInt32LE(i * 4);
20
+ }
21
+ const qr = (a, b, c, d) => {
22
+ state[a] = (state[a] + state[b]) >>> 0;
23
+ state[d] = rotl32(state[d] ^ state[a], 16);
24
+ state[c] = (state[c] + state[d]) >>> 0;
25
+ state[b] = rotl32(state[b] ^ state[c], 12);
26
+ state[a] = (state[a] + state[b]) >>> 0;
27
+ state[d] = rotl32(state[d] ^ state[a], 8);
28
+ state[c] = (state[c] + state[d]) >>> 0;
29
+ state[b] = rotl32(state[b] ^ state[c], 7);
30
+ };
31
+ for (let round = 0; round < 10; round++) {
32
+ qr(0, 4, 8, 12);
33
+ qr(1, 5, 9, 13);
34
+ qr(2, 6, 10, 14);
35
+ qr(3, 7, 11, 15);
36
+ qr(0, 5, 10, 15);
37
+ qr(1, 6, 11, 12);
38
+ qr(2, 7, 8, 13);
39
+ qr(3, 4, 9, 14);
40
+ }
41
+ const out = Buffer.alloc(32);
42
+ for (let i = 0; i < 4; i++) {
43
+ out.writeUInt32LE(state[i] >>> 0, i * 4);
44
+ }
45
+ for (let i = 0; i < 4; i++) {
46
+ out.writeUInt32LE(state[12 + i] >>> 0, 16 + i * 4);
47
+ }
48
+ return out;
49
+ }
50
+ function ietfNonce(nonce24) {
51
+ const nonce = Buffer.alloc(12);
52
+ nonce24.subarray(16, 24).copy(nonce, 4);
53
+ return nonce;
54
+ }
55
+ function encrypt(key, nonce, plaintext, aad = Buffer.alloc(0)) {
56
+ if (key.length !== 32) {
57
+ throw new Error(`Key must be 32 bytes, got ${key.length}`);
58
+ }
59
+ if (nonce.length !== 24) {
60
+ throw new Error(`Nonce must be 24 bytes, got ${nonce.length}`);
61
+ }
62
+ const subkey = hchacha20(key, nonce.subarray(0, 16));
63
+ return (0, chacha20poly1305_1.encrypt)(subkey, ietfNonce(nonce), plaintext, aad);
64
+ }
65
+ exports.encrypt = encrypt;
66
+ function decrypt(key, nonce, ciphertextWithTag, aad = Buffer.alloc(0)) {
67
+ if (key.length !== 32) {
68
+ throw new Error(`Key must be 32 bytes, got ${key.length}`);
69
+ }
70
+ if (nonce.length !== 24) {
71
+ throw new Error(`Nonce must be 24 bytes, got ${nonce.length}`);
72
+ }
73
+ const subkey = hchacha20(key, nonce.subarray(0, 16));
74
+ return (0, chacha20poly1305_1.decrypt)(subkey, ietfNonce(nonce), ciphertextWithTag, aad);
75
+ }
76
+ exports.decrypt = decrypt;
77
+ //# sourceMappingURL=xchacha20poly1305.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xchacha20poly1305.js","sourceRoot":"","sources":["../../../src/lightning/crypto/xchacha20poly1305.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@ var Feature;
18
18
  Feature[Feature["SHUTDOWN_ANY_SEGWIT"] = 26] = "SHUTDOWN_ANY_SEGWIT";
19
19
  Feature[Feature["DUAL_FUND"] = 28] = "DUAL_FUND";
20
20
  Feature[Feature["ONION_MESSAGES"] = 38] = "ONION_MESSAGES";
21
+ Feature[Feature["PROVIDE_STORAGE"] = 42] = "PROVIDE_STORAGE";
21
22
  Feature[Feature["QUIESCE"] = 34] = "QUIESCE";
22
23
  Feature[Feature["CHANNEL_TYPE"] = 44] = "CHANNEL_TYPE";
23
24
  Feature[Feature["SCID_ALIAS"] = 46] = "SCID_ALIAS";