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.
TLDR
We’ll email you summaries of the latest discussions from authoritative bitcoin sources, like bitcoin-dev, lightning-dev, and Delving Bitcoin.
We'd love to hear your feedback on this project?
Give Feedback