Designing a Privacy-Preserving Rebalancing Algorithm for Payment Channel Networks

More Info
expand_more

Abstract

In the past 8 years, Bitcoin has dominated the cryptocurrency markets and drawn attention from academia, developers and legislators alike. Bitcoin has been praised for its impact on decentralizing trust and currencies but also criticized for its volatility and energy-inefficient consensus mechanism. To improve its limitations, in 2016, payment channels and payment channel networks were introduced in the form of the Lightning Network. Payment channels allow for so-called off-chain transactions that, in case of dispute, can be published to an existing cryptocurrency blockchain, like Bitcoin, for arbitration. After its introduction, the concept of payment channels was quickly adopted by many cryptocurrency users. However, although payment channels remove the need for many on-chain transactions, some still remain. An on-chain transaction is required for the opening and closing of a channel. This happens during the initial setup between two users but is also required if one of the users runs out of balance on their side of the channel. The latter is a common occurrence as transactions are often unidirectional, say between a customer and a merchant. To limit the amount of closing and opening on-chain transactions required, a user can start or take part in a rebalancing. A rebalancing is a process with the aim of bringing a channel to a balance as desired by its owners. The state-of-the-art existing protocol to carry out a rebalancing is called Revive, which is a distributed protocol using leader election and a linear program to calculate the optimal rebalancing between its participants. Although effective, the protocol provides little privacy to its participants. We, therefore, designed a new, privacy-preserving peer-to-peer rebalancing protocol. Alongside it, we also introduce an accompanying participant discovery protocol that allows users in a network to find other users interested in running a distributed algorithm. We show that both protocols are secure and that our rebalancing protocol provides more privacy than Revive, at the cost of a suboptimal result and an increased message and time complexity. Finally, we compare our rebalancing protocol and Revive using a payment channel network simulator that simulates transactions taking place during the rebalancing. Using this simulation, we show that both protocols have a negative effect on the payment channel network as they lock the to-be-rebalanced channels while they are executing. We, therefore, conclude that an ideal rebalancing protocol should both be privacy-preserving and concurrent, and propose ideas to achieve this in future research.