Decentralized Lightweight Detection of Eclipse Attacks on Bitcoin Clients
Bithin Alangot, Daniel Reijsbergen, Sarad Venugopalan, Pawel, Szalachowski (Singapore University of Technology, Design, Singapore)

TL;DR
This paper presents two lightweight, decentralized methods for Bitcoin clients to detect eclipse attacks, improving security without protocol changes by analyzing suspicious timestamps and utilizing existing internet connections.
Contribution
It introduces two novel detection schemes for eclipse attacks that balance detection speed and network load, without requiring infrastructure modifications.
Findings
Gossip-based detection achieves rapid attack identification with high probability.
Detection methods incur negligible overhead in real-world scenarios.
Proposed schemes outperform previous countermeasures without protocol changes.
Abstract
Clients of permissionless blockchain systems, like Bitcoin, rely on an underlying peer-to-peer network to send and receive transactions. It is critical that a client is connected to at least one honest peer, as otherwise the client can be convinced to accept a maliciously forked view of the blockchain. In such an eclipse attack, the client is unable to reliably distinguish the canonical view of the blockchain from the view provided by the attacker. The consequences of this can be catastrophic if the client makes business decisions based on a distorted view of the blockchain transactions. In this paper, we investigate the design space and propose two approaches for Bitcoin clients to detect whether an eclipse attack against them is ongoing. Each approach chooses a different trade-off between average attack detection time and network load. The first scheme is based on the detection of…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
