lightning-dev

Protocol for multiple in-flight updates.

Protocol for multiple in-flight updates.

Original Postby Rusty Russell

Posted on: February 4, 2016 04:08 UTC

In this email exchange between Rusty Russell and Joseph Poon, they discuss the use of a signature that covers a certain range of values for HTLCs (Hashed Time-Locked Contracts) in the Lightning Network.

They note that this signature works more like a request "staging" ID rather than an HTLC ID, as requests can include removing HTLCs as well. They also mention that the counter aspect requires two counters- one for each originator of the request- to allow for simultaneous action on accept/reject/etc. Additionally, they discuss the importance of ensuring that all messages sent are in order, and if the replyer skips the requester's Add Requests when replying, the skipped requests are assumed to be request rejections or an outright channel closeout since it should never happen. They mention this is to enforce accept/reject order and to ensure that modifications included in the signature/transaction do not change after-the-fact. Joseph suggests disallowing skipping as a protocol violation, which could lead to a gentler close protocol where sending a close message implies the initiator would send no more adds and reject all received. While it may take some time to clean out all the remaining HTLCs for mutual close, at least the other side knows what is happening and can replace capacity by opening new channels if needed. Rusty thanks Joseph and mentions he will try to document the protocol in another email.

Bitcoin Logo

TLDR

Join Our Newsletter

We’ll email you summaries of the latest discussions from authoritative bitcoin sources, like bitcoin-dev, lightning-dev, and Delving Bitcoin.

Explore all Products

ChatBTC imageBitcoin searchBitcoin TranscriptsSaving SatoshiBitcoin Transcripts Review
Built with 🧡 by the Bitcoin Dev Project
View our public visitor count

We'd love to hear your feedback on this project?

Give Feedback