DRAFT: interactive tx construction protocol

Posted by AdamISZ

Feb 11, 2020/16:04 UTC

A proposal to add a second commitment requirement for the PoDLE was made by JoinMarket. The proposal is intended to limit the use of a commitment's validity between an initiator and a single peer. To implement this proposal, each initiator would provide two commitments: one to the shared/global J point and one to a point that is found from the hash of the non-initiating node's node_id. However, it can be done more compactly by altering the opening of the commitment to include the receiving node. In Joinmarket, a Taker issuing a request to 10 counterparties hopes that at least some number (minimum four by default) will respond to an honest request. Meanwhile, on the Maker side, they are trying to create a kind of 'herd immunity'; as long as some few of them are honest, word will get out about used commitments which will stop free spam queries, at least.JoinMarket uses a mechanism in which a Taker sends an hp2 value to each Maker. This step is intended to enforce scarcity, and the assumption was always that this would basically inevitably get shared. If the commitment value is already used and thus not valid, it gets broadcast immediately. If it's not, it only gets shared as part of the !ioauth step below. The mechanism is both not very strong and imperfect in its "justice"; such commitments can be "used up" by failures of one's counterparties. But it does serve to stop trivial global snooping and doesn't cost anything in terms of identity or locked funds, so it has served a purpose. However, there could be a small time window between one maker receiving !auth and at least one other honest maker getting to broadcast step at !ioauth.

Link to Raw Post
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