If that attack will be repeated too many times, then I expect that timelocks will be increased. For example, you could have one or two week timelock in case of uncooperative close, and then you can wait more time, and pay lower fees.
Two weeks may be enough in many cases, but not in all. As far as I know most Lightning software has a default of 1 week of less for to_self_delay (correct me if this is wrong), which can be already dangerous in situations where the blockchain is relatively full (e.g. periods of high volatility).
Also, each victim using Eltoo will replace the attacker's closing channel transaction, so the cost of stopping that attack is roughly the same as the cost of starting it, when it comes to the space (I don't know how it will be treated when it comes to the fees, but I expect similar approach as in RBF).
The fee could be a problem if the attacker carefully plans his attack, analyzing high/low fee times and planning it so that the attack itself is still in low-fee time, but the default timeout will be in a high-fee time. The channel closing transactions in the case of an attack are additional transactions to the average "dust of transactions", so it's likely the fees will rise sharply above the average.
Where I see the problem is a constellation like the following:
- Let's think the attacker has succeeded to close channels for a fee of 1000 sat on average (0.00001 BTC), for example on a Sunday night, and most timeouts are in a week.
- The average "gross" value of the theft (=the damage done to the victims, i.e. the difference between the old state and the current state) is 20000 sat (0.0002 BTC) per channel.
- The attacker now calculates that 80% of the victims' channel closings will succeed. This means that he has to multiply x5 his attack cost per successful theft (he has to close 5 transactions for 5000 sat to achieve one theft of 20000 sat). This means his profit is 15000 per successful theft/channel.
- Now the victims start to close channels, a panic emerges and minimum tx fees for inclusion in a block climb x20. This increase can even happen without any attack, although normally in the "weekly fee curve" we see more something close to x10. But in the case of an attack, even x50-x100 is not impossible at all, although it may lower at the weekend.
- This means that the transaction fees for the victims' channel close transactions are now on average 20000 sat, which is (in most cases) as high as the damage for them. From those victims that are "late to the party", i.e. closing near the timeout, many will refrain to close the channel and simply take the loss. In these cases, the attacker has succeeded, he is likely to achieve the 80% "goal" which he has planned with.
In all cases where the attacker's calculation of his "success rate" (in this case, that only 80% of victims close their channel successfully) is not completely off (i.e. lower than 95% successful victim channel closures), he makes a profit.
Once the timelock has expired, both the attacker and the victim can spend that output. The attacker would also need to pay an extremely high transaction fee.
Yes, the transaction fees for the attacker would also be high when he wants to move the coins after the timeout. This would favour the victims, but they would have to monitor fees closely and close as fast as possible once fees are reasonable, and maybe the attacker can speculate that some would wait too long (hoping for a further fee decrease to try to recover funds).
Without a penalty, the incentive model in these kinds of attacks could tend to favour the attacker, at least in specific constellations of fee evolution (which are not uncommon), and thus give incentives to simply try massive attacks in low-fee phases where a fee increase is likely, hoping for a fee increase.
Thanks, I didn't remember this part of the paper. I re-read the main part in the last days, that's also one of the reasons why I'm slow in answering
However, these timestops could introduce new vulnerabilities (I can imagine, for example, a bribing attack of a short seller to a miner to not include the "timestop flag" into a congested block, which could be interpreted by the Bitcoin community as a "failure of the system" and lead to a crash, letting the short seller succeed). I could, however, imagine to build upon this proposal, so I'll try to investigate.
For example, to not depend on miners, one could in theory add a special kind of sequence numbers which increase only if the fee level of the lowest decile of all transactions in a block is lower than a specific threshold viewed as "acceptable" by the contract programmer. This would however need additions to the protocol and could also lead to more complicated/resource-consuming validation work for full nodes.
@Carlton Banks: I'm referring to the variant of Poon-Dryja channels described in the Lightning whitepaper. I just re-read it and it seems to confirm the position that once a commitment transaction is confirmed on-chain, no further commitment transactions can be confirmed because the output of the funding transaction is spent. If "modern LN-Penalty" is working differently I would be grateful for a link to an explanation.