Verification of GossipSub in ACL2s

Ankit Kumar
(Northeastern University)
Max von Hippel
(Northeastern University)
Panagiotis Manolios
(Northeastern University)
Cristina Nita-Rotaru
(Northeastern University)

GossipSub is a popular new peer-to-peer network protocol designed to disseminate messages quickly and efficiently by allowing peers to forward the full content of messages only to a dynamically selected subset of their neighboring peers (mesh neighbors) while gossiping about messages they have seen with the rest. Peers decide which of their neighbors to graft or prune from their mesh locally and periodically using a score for each neighbor. Scores are calculated using a score function that depends on mesh-specific parameters, weights and counters relating to a peer's performance in the network. Since a GossipSub network's performance ultimately depends on the performance of its peers, an important question arises: Is the score calculation mechanism effective in weeding out non-performing or even intentionally misbehaving peers from meshes? We answered this question in the negative in our companion paper by reasoning about GossipSub using our formal, official and executable ACL2s model. Based on our findings, we synthesized and simulated attacks against GossipSub which were confirmed by the developers of GossipSub, FileCoin, and Eth2.0, and publicly disclosed in MITRE CVE-2022-47547. In this paper, we present a detailed description of our model. We discuss design decisions, security properties of GossipSub, reasoning about the security properties in context of our model, attack generation and lessons we learnt when writing it.

In Alessandro Coglio and Sol Swords: Proceedings of the 18th International Workshop on the ACL2 Theorem Prover and Its Applications (ACL2-2023), Austin, TX, USA and online, November 13-14, 2023, Electronic Proceedings in Theoretical Computer Science 393, pp. 113–132.
Published: 14th November 2023.

ArXived at: https://dx.doi.org/10.4204/EPTCS.393.10 bibtex PDF
References in reconstructed bibtex, XML and HTML format (approximated).
Comments and questions to: eptcs@eptcs.org
For website issues: webmaster@eptcs.org