Skip to content

[Epic] funding+contractcourt+lnwallet: implement an initial version of Simple Taproot Channels #6691

@Roasbeef

Description

@Roasbeef

This is a master tracking issue which tracks the implementation of the new-ish Simple Taproot Channels proposal: lightning/bolts#995.

Things are still a bit influx, but there's some fundamental-ish work that can be started related to the funding outputs, and also the internal logic to perform tapscript spends.

One open question still is: can we actually get away with storing zero nonces on disk? Consider that today, we have 2 signatures, so we keep the remote party's on disk, then sign at broadcast time when we want to go on chain. This is nice from a security perspective, as with just the channeldb (no keys) you can't try to broadcast some revoked state. In this case of musig2, there're two logical signatures, which are then combined into a single signature to broadcast. The PartialSigAgg (sig combination) routine of the musig2 draft only needs the final public nonce, the challenge hash, and the tweak accumulator, all of which are "safe" inputs. However to sign we need our secret nonce, which means we may need to keep it around longer, potentially encrypted within the wallet along side the other imported public keys.

Metadata

Metadata

Assignees

Labels

advancedIssues suitable for very experienced developerschain handlingepicIssues created to track large feature developmentfundingRelated to the opening of new channels with funding transactions on the blockchainspectaproot

Type

No type

Projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions