-
Notifications
You must be signed in to change notification settings - Fork 266
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement "Simple Taproot Channels" BOLT proposal #2868
Draft
sstone
wants to merge
6
commits into
store-partial-signatures
Choose a base branch
from
simple-taproot-channels
base: store-partial-signatures
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Commits on Oct 15, 2024
-
Implement funding and closing simple taproot channels
This commit implements: - feature bits for simple taproot channels - TLV extensions for funding/closing wire messages - modifications to how we handle channel funding and mutual closing - changes to the commitment structures It does not cover dual-funding and splices, which are not part of the original extension proposal.
Configuration menu - View commit details
-
Copy full SHA for c0224fe - Browse repository at this point
Copy the full SHA c0224feView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9671f78 - Browse repository at this point
Copy the full SHA 9671f78View commit details -
The current "simple taproot channels" proposal is not compatible with splices. Supporting splices means supporting multiple commitment transactions that are valid at the same time, with the same commitment index but with different funding transactions. We need to extend the taproot proposal to include a list of musig2 nonces (one for each active commitment transaction). Similar to how commitment points are handled, `firstRemoteNonce` and `secondRemoteNonce` fields have been added to `SpliceInit` and `SpliceAck`, encoded as a list of nonces (instead of 2 expicit nonces) We also need a for the new commit tx that is being built, here it has been added to `SpliceInit` and `SpliceAck`. The funding tx that is being built during the interactive session needs to spend the current funding tx. For this, we re-use the scheme that we developped for our custome "swaproot" musig swap-ins: we add musig2 nonces to the `TxComplete` message, one nonce for each input that requires one, ordered by serial id. The life-cycle of these nonces is tied to the life-cycle of the interactive session which is never persisted (nonces here do not have to be deterministic).
Configuration menu - View commit details
-
Copy full SHA for 2c9170f - Browse repository at this point
Copy the full SHA 2c9170fView commit details -
Add a new commitment format for taproot channels that use the old (an…
…d unsafe) anchor output format
Configuration menu - View commit details
-
Copy full SHA for 483bc4f - Browse repository at this point
Copy the full SHA 483bc4fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 555f2b4 - Browse repository at this point
Copy the full SHA 555f2b4View commit details -
Fixup! remove closingNonce(), document signing nonce and verification…
… nonce generation
Configuration menu - View commit details
-
Copy full SHA for 799c1da - Browse repository at this point
Copy the full SHA 799c1daView commit details
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.