Proposal for skip channel confirmation. [combined summary]



Individual post summaries: Click here to read the original discussion on the lightning-dev mailing list

Published on: 2020-08-27T01:29:55+00:00


Summary:

Antoine and Zeeman discuss the security of zero-confirmation channels. Zeeman suggests sending a high-fee RBF-enabled transaction to Antoine while simultaneously sending a conflicting low-fee RBF-disabled transaction to all available miners to increase security. Antoine argues that mapping miner nodes could provide added security, but also points out that any timelock-based higher layer is at risk for anyone powerful enough to reorg. Zeeman counters that this method is only necessary if double-spending becomes a real issue. They conclude that once a channel is deeply confirmed, it becomes safe and most 0-conf mechanisms involve fiat-to-Bitcoin exchanges, which require trust.The conversation revolves around lowering trust in zero-conf channel openers. Antoine suggests broadcasting the funding transaction and accepting incoming payments on the zero-conf channel. Zeeman points out that double-broadcasting using RBF is easy and suggests mapping miners' mempools as a security improvement. However, they agree that this scheme is not worth pursuing unless double-spending becomes a real issue.Roei Erez proposes the ability to skip channel funding transaction confirmation, creating zero-conf channels. Different implementations have their own way of agreeing on a short_channel_id before confirmation. Erez suggests changes to the funding flow, including accepting the channel message with minimum_depth=0 to skip confirmation, sending funding_locked with a convention-derived channel_id agreed upon by both parties. Matt Corallo adds that gossiping should be avoided until the funding transaction has confirmations, but invoices carrying last-hop hints should still be accepted. He highlights that unidirectional 0-conf is not captured in the protocol.Antoine suggests a mechanism to lower trust in zero-conf channel openers by broadcasting the funding transaction and accepting incoming payments. This would provide game-theory security. It's important to note that there is no global mempool and full nodes only see transactions with higher fees.The email thread discusses the ability to skip channel funding confirmation, creating zero-conf channels. Different implementations have their own way of agreeing on a short_channel_id before confirmation. Changes to the funding flow are suggested, including accepting the channel message with minimum_depth=0 if skipping confirmation is desired, sending funding_locked with a convention-derived channel_id, and re-broadcasting gossip messages after confirmation. Unidirectional 0-conf is not captured in this protocol.The author discusses the ability to skip channel funding confirmation and create zero-conf channels. This requires trust between parties until confirmation, but can be useful in certain cases. Different implementations have different ways of supporting zero-conf channels. Changes to the funding flow are proposed, including accepting the channel message, sending minimum_depth=0 if skipping confirmation, no change in the funding_signed message, and sending funding_locked messages with a convention-derived channel_id. The author has created a pull request in LND to implement these changes.


Updated on: 2023-07-31T23:00:51.250592+00:00