Practical Client-side Replication: Weak Consistency Semantics for Insecure Settings
Client-side replication and direct client-to-client synchronization can be used to create highly available, low-latency interactive applications. Causal consistency, the strongest available consistency model under network partitions, is an attractive consistency model for these applications.
We present the VLDB'20 paper, which focuses on how client misbehaviour impacts causal consistency. In particular we analyze the possible attacks to causal consistency with practical examples and derive secure consistency models that preclude different types of misbehaviour. We propose a set of techniques for implementing such secure consistency models, which exhibit different trade-offs between the application guarantees, and the latency and communication overheads.
We present the results of our prototype which show that secure consistency models impose low overhead when compared with their insecure counterparts, while providing low user-to-user latency compared with traditional client-server architectures.
In summary, we show that secure consistency models can be used to enrich server-based architectures with fast, and secure, peer-to-peer interactions.
Albert van der Linde is a Ph.D. candidate in Computer Science at NOVA School of Science and Technology/NOVA University Lisbon and is currently employed as a Software Engineer at Google. Albert holds a B.Sc. and M.Sc. in Computer Science from NOVA.
Albert's Ph.D. research is broadly aimed at providing lower user-to-user latency, availability under server disconnections, and improved server scalability to user-centric applications, which is achieved by extending the system model with client-side replicas and the communication model with client-to-client interactions. His work explores how to bring most of the application logic to the client-side, using the centralized service only for storage, access control, or other aspects which are strictly necessary -- while being efficient, reliable, and secure.