MAD-HTLC: Because HTLC is Crazy-Cheap to Attack

06/22/2020
by   Itay Tsabary, et al.
0

Smart Contracts and transactions allow users to implement elaborate constructions on cryptocurrency blockchains like Bitcoin, Ethereum, and Libra. Many of these, including operational payment channels, use a building block called Hashed Time-Locked Contract (HTLC). In this work, we distill from HTLC a specification (HTLCSpec), and present an implementation called Mutual-Assured-Destruction Hashed Time-Locked Contract (MAD-HTLC). MADHTLC employs a novel approach of utilizing the existing blockchain operators, called miners, as part of the design. If a user misbehaves, MAD-HTLC incentivizes the miners to confiscate all her funds. We prove that MAD-HTLC satisfies HTLC-Spec with game-theoretic analysis and instantiate it on Bitcoin's operational blockchain. Notably, current miner software makes only little effort to optimize revenue, since the advantage is relatively small. However, as the demand grows and other revenue components shrink, miners are more motivated to fully optimize their fund intake. By patching the standard Bitcoin client, we demonstrate such an optimization is easy to implement, making the miners natural enforcers of MAD-HTLC. Finally, we show how vulnerable HTLC is to bribery attacks. An attacker can incentivize miners to prefer her transactions by offering high transaction fees. We demonstrate this can be easily implemented by patching the Bitcoin client, and use game theoretic tools to qualitatively tighten the known cost bound of such bribery attacks.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset