Taproot eltoo

I have compiled below a list of tasks and related notes that might be helpful for anyone that wants to learn more about the status and implementation details of BIP-118 (Anyprevout) and eltoo. Please get in touch if you have any questions or can help work on one of these tasks. Open an issue or PR if you think of additional tasks, notes or other changes for this page.

Anyprevout (BIP-118)

Tasks:

  • Basic unit tests, legacy and taproot
  • Review and comment on BIP-118
  • Review and add to BIP-118 tests for bitcoin-inquisition PR #4
  • run a signet node
  • run a signet faucet

Notes:

  • BIP

mailing list post, Dec 2022

  • Signet

Inquisition PR#18 adds APO

Faucet idea: can signet miners create a single signature and prototype transaction that can spend any coinbase output using APOAS? As long as any change goes back to the same address then the signature can be used again by others.

Replace-by-fee (RBF) changes

Tasks:

Notes:

eltoo

Tasks:

Notes:

Segwit eltoo

Taproot eltoo

Implementation:

PTLCs

Tasks:

  • Schnorr X-only pubkey adaptor signature support in the functional test framework
  • create an adapter signatures test script to demonstrate how to exchange PTLC nonces
  • update transactions so claim_tx uses key spend with adapter signature and refund_tx uses script spend with timeout
  • create a new test derived from the test_tapscript_eltoo script that replaces HTLCs with PTLCs

Notes:

Layered Commitments

Notes:

  • CLTV deltas
  • Subject to Siphon attacks if remote party signature does not commit amount of local party’s HTLC outputs?
  • lnpenalty taproot diagram
  • Needs SIGHASH/OP_GROUP to regather update outputs to newer state outputs

Multiparty Channels

Notes:

  • Channel Factories

    shared liquidity, overlapping routing nodes, can update nested channels faster, can settle MP channel and continue to use nested channels

  • Generalized Off-chain Transactions

    cache and aggregateve onchain transactions off-chain, timeouts must account for settlement of multiparty channel

Anyprevout Covenants

Tasks:

  • Finish covenant vault example tests in functional test framework off of APO branch
  • Blog post about how to use APO based covenants for a simple vault system
  • Blog post on non-interactive Lightning channel open
  • Blog post on congestion control (delayed payments)
  • Blog post on pre-planned vesting transactions

Notes:

GROUP

Tasks:

  • Blog post summarizing state of OP_GROUP discussions, including OP vs. SIGHASH, lexical ordering (BIP-69) vs. tx cut-through/incremental batching

DLCs

Tasks:

  • Blog post discussing how APO can enable DLCs over Lightning

Notes:

LN Symmetry