Antoine Riard, a Bitcoin developer, proposed on the Lightning network developer mailing list a protocol that relies on the use of tokens to mitigate jamming attacks. Such attacks are capable of preventing the use of certain channels of the Bitcoin micropayment network.
Payment channel jamming attacks or “channel jamming” are denial-of-service (DoS) attacks in which the perpetrator can disable channels on a network from routing transactions.
There are two types of jamming attacks: liquidity and HTLC. In both cases, the attacker sends payments through the channels he will obstruct. This action can be performed without paying any fees and even for free if the payment is cancelled.
How to counter LN channel jamming attacks?
Riard’s proposal is that each router node would only accept payments that include a token issued by themselves in a smart contract of the HTLC type. Such a token would serve as a credential for the payment to continue its passage to the final receiver.
The credential representing the token contains a blind digital signature, in order to prevent the router node from being able to identify the node issuing the payment and thus maintain privacy at the highest possible level.
Riard adds in his proposal that “the ‘credentials’ can be used by a reputation algorithm to reward/punish payment issuers and efficiently distribute channel liquidity resources.”
As for the issuance and distribution of credentials, Riard believes that this can be done according to the policies set by each router node. However, the developer put forward several suggestions for this.
One of the possible methods of issuing and distributing credentials is for the issuer to purchase it directly from the router node via LN. The router node could also return the credential it used to the sender, once payment has reached the receiving node. In fact, Riard believes that extra tokens could be given to the sender node, to encourage future use of the same router node.
Binance Referral Countries
Another alternative for issuing and distributing credentials would be for router nodes to allocate a portion of these tokens to all issuers who prove they have a UTXO or credit balance in BTC. Riard adds that, in addition to this, the amount of tokens could be conditioned according to the user’s seniority or the amount of UTXO, or any other parameter.
Questioning Riard’s proposals and other possible solutions
Developer Clara Shikhelman raised a couple of concerns about Riard’s proposals on the mailing list. First, whether credential tokens were transferable between users and whether this could lead to the creation of a market for such tokens. Riard acknowledged that such a market could exist, but did not see it as very likely; as the procedure for buying and selling credentials would be based on trust between the parties.
Shikhelman also asked Riard about the interaction between the tokens in question and “blind routes,” as a payment routing method is known that hides part of the path taken by a transaction between sender and receiver. In this regard, the developer responded that “the receiving node can provide any necessary credentials in an encrypted form without introducing a secondary vulnerability.”
Clara Shikhelman has an in-depth knowledge of the issue of jamming attacks on payment channels, as, together with developer Sergei Tikhomirov, she had previously presented some proposals for mitigating such attacks on LN’s developer mailing list.
Researchers at the University of Jerusalem had identified vulnerability to such attacks by networks like Lightning and Raiden, which are second-layer solutions for Bitcoin and Ethereum, respectively. According to them, the solution lies in modifying the operation of HTLCs, which is where the vulnerability originates.