ariard / mempool-research

Mempool research
12 stars 6 forks source link

The attack on the attacker #1

Open starius opened 11 months ago

starius commented 11 months ago

I believe that Mallory and Mallet risk their own funds when performing the attack against Bob described in 2.2.

If Bob is aware of this attack, he can find out the preimage from mempool and collect 1 BTC from Mallory before block 1080. At this point for Bob it is a something or nothing game (get 0 or get 1 BTC from Mallot). Bob can apply all the transaction pushing techniques described in the document to push HTLC-timeout transaction for the Bob-Mallot channel. Assuming they are both equally good in transaction pushing, Bob has 50% change to steal 1 BTC from Mallet (the attacker).

If this is correct, then this attack is not something or nothing game for Mallory and Mallet. It is a bet on Bob being worse in mempool watching and/or transaction pushing. The possible outcomes for both parties are +1BTC, -1BTC or 0.

ariard commented 11 months ago

I think this is a good observation that transaction-relay capabilities asymmetries between defenders and attackers have to be considered.

See 3.1 and the following section.

“This mitigation can be bypass by a mempool-partitioning trick where the local mempool is partitioned from the rest of the network in two steps. Firstly, by identifying the Bitcoin full-node associated with the victim Lightning node, then secondly by partially partitioning the victim local mempool” and concerns on the mailing list about transaction-relay topology interferences: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2023-October/022015.html