Skip to content
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

Custom Transactions Tracking Issue #3603

Open
17 tasks
tankyleo opened this issue Feb 14, 2025 · 0 comments
Open
17 tasks

Custom Transactions Tracking Issue #3603

tankyleo opened this issue Feb 14, 2025 · 0 comments

Comments

@tankyleo
Copy link
Contributor

tankyleo commented Feb 14, 2025

PR to review: #3606

Custom Commitment and HTLC Transactions

Build

Validate

  • Move all holder commitment validation in FundedChannel to XX::validate_holder_commitment

Claims Detection

  • Refactor ChannelMonitor
  • Add generate_claims_from_holder_tx
  • Add generate_claims_from_counterparty_tx
  • Add generate_claims_from_revoked_counterparty_tx

Claims Spend

  • Transition from {Ecdsa, Taproot}ChannelSigner methods returning a Signature to ChannelSigner methods returning a Witness
    • sign_holder_commitment
    • sign_justice_revoked_output
    • sign_justice_revoked_htlc_output
    • sign_holder_htlc_transaction
    • sign_counterparty_htlc_transaction
    • sign_holder_anchor_input
  • Create a single call "Alice: here's a claim, and a transaction I am building to claim it, Bob: Here's the witness"

Custom Funding Output and Mutual Close Transaction

Build Funding Output

  • Add get_funding_script_pubkey

Validate Witness Data Provided By Counterparty

  • Move all validation of the counterparty's mutual close partial witness from FundedChannel to XX::validate_closing_partial_witness
    • A partial witness is a full ecdsa signature for ecdsa channels, and a partial sig, nonce pair in musig2 channels.

Build Mutual Close Transaction

  • Add build_final_closing_transaction

Prior Work

@jkczyz jkczyz moved this to In Progress in LDK Priorities Mar 3, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: In Progress
Development

No branches or pull requests

1 participant