Protocols to Code: Formal Verification of a Next-Generation Internet Router
Jo\~ao C. Pereira, Tobias Klenze, Sofia Giampietro, Markus Limbeck,, Dionysios Spiliopoulos, Felix A. Wolf, Marco Eilers, Christoph Sprenger,, David Basin, Peter M\"uller, Adrian Perrig

TL;DR
This paper presents the first formally-verified Internet router within the SCION architecture, demonstrating the feasibility of verifying network components from high-level models to optimized code, and uncovering critical bugs in the process.
Contribution
It develops a comprehensive verification approach linking protocol models to implementation, and verifies a real-world router, setting a precedent for verifiable network infrastructure.
Findings
Verified security and low-level properties of the router
Uncovered and confirmed critical bugs in protocol and implementation
Strengthened the protocol's security properties
Abstract
We present the first formally-verified Internet router, which is part of the SCION Internet architecture. SCION routers run a cryptographic protocol for secure packet forwarding in an adversarial environment. We verify both the protocol's network-wide security properties and low-level properties of its implementation. More precisely, we develop a series of protocol models by refinement in Isabelle/HOL and we use an automated program verifier to prove that the router's Go code satisfies memory safety, crash freedom, freedom from data races, and adheres to the protocol model. Both verification efforts are soundly linked together. Our work demonstrates the feasibility of coherently verifying a critical network component from high-level protocol models down to performance-optimized production code, developed by an independent team. In the process, we uncovered critical bugs in both the…
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.
Taxonomy
TopicsAdvanced Authentication Protocols Security · Formal Methods in Verification · IPv6, Mobility, Handover, Networks, Security
