Building secure distributed systems atop the insecure Internet

Talk
Maria Apostolaki
Talk Series: 
Time: 
04.05.2021 13:00 to 14:00

Distributed systems are increasingly important for our everyday life, allowing for high performance, fault tolerance, and flexibility. Many of these systems nowadays rely on the inherently insecure Internet infrastructure. Surely though, they should have been designed to take this into account...?In this talk, I will answer negatively to this question using a concrete example: public blockchain systems such as Bitcoin. These are novel distributed systems that are designed according to stringent failure models. In this context, I will explain how an adversary controlling pieces of Internet infrastructure can practically compromise: (i) Bitcoin's consensus protocol (by partitioning the network); (ii) Bitcoin's anonymity guarantees (by mapping pseudonyms to real-world identities); and (iii) Bitcoin's availability (by eclipsing clients). While these attacks are worrying, I will also introduce practical and effective defenses to counter them both at the network and the application layer. Beyond Bitcoin, this work teaches essential lessons for distributed-system design.