Abstract
Today’s Internet is built on decades-old networking protocols that lack scalability, reliability and security. In response, the networking community has developed path-aware Internet architectures that solve these problems while simultaneously empowering end hosts to exert some control on their packets’ route through the network. In these architectures, autonomous systems authorize forwarding paths in accordance with their routing policies, and protect these paths using cryptographic authenticators. For each packet, the sending end host selects an authorized path and embeds it and its authenticators in the packet header. This allows routers to efficiently determine how to forward the packet. The central security property of the data plane, i.e., of forwarding, is that packets can only travel along authorized paths. This property, which we call path authorization, protects the routing policies of autonomous systems from malicious senders.
The fundamental role of packet forwarding in the Internet’s ecosystem and the complexity of the authentication mechanisms employed call for a formal analysis. We develop IsaNet, a parameterized verification framework for data plane protocols in Isabelle/HOL. We first formulate an abstract model without an attacker for which we prove path authorization. We then refine this model by introducing a Dolev–Yao attacker and by protecting authorized paths using (generic) cryptographic validation fields. This model is parametrized by the path authorization mechanism and assumes five simple verification conditions. We propose novel attacker models and different sets of assumptions on the underlying routing protocol. We validate our framework by instantiating it with nine concrete protocol variants and prove that they each satisfy the verification conditions (and hence path authorization). The invariants needed for the security proof are proven in the parametrized model instead of the instance models. Our framework thus supports low-effort security proofs for data plane protocols. In contrast to what could be achieved with state-of-the-art automated protocol verifiers, our results hold for arbitrary network topologies and sets of authorized paths.
Introduction
The Internet is a global network of ca. 70,000 independently managed networks, called autonomous systems (ASes), which are run by entities such as Internet service providers (ISPs), content providers, or public institutions. Routing is based on the aging Border Gateway Protocol (BGP), a protocol that scales poorly and has no built-in security. In response to these well-known problems, the networking community has been working to augment BGP with security mechanisms [15,38,44], but the proposed solutions have proven to be insufficient, inefficient, or they introduce new problems [18,45,58].
In parallel to the proposed BGP enhancements, which trade off performance for security, many researchers have acknowledged the need for a clean-slate approach. The networking community has invested substantial effort into developing novel security protocols with the objective of building a new Internet architecture that is both more efficient and more secure. We focus here on path-aware architectures [4,12,33,50,55,56,67,69]. In contrast to the current Internet, these provide end hosts with some control over the paths along which they send their packets.
Networking architectures generally consist of a control plane, where routers exchange topology information and establish paths, and a data plane (also called forwarding plane or simply forwarding), where packets are forwarded along these paths. In the path-aware Internet architectures that we study, the control plane constructs forwarding paths as sequences of cryptographically authenticated forwarding directives, one for each AS on the path. The source selects such a forwarding path for each packet and includes it in the packet’s header, a technique known as packet-carried forwarding state. Routers forward the packets according to the forwarding information of their AS, which they extract from the packet’s path and validate by checking the associated cryptographic authenticator. Since each packet contains its own forwarding state, routers do not require routing tables unlike with current BGP-based routers.
Path-aware architectures allow end hosts to select paths, but the architectures must also ensure that the policies of ASes are followed. These policies rule out impractical or uneconomical paths. To protect ASes from malicious sources, the control plane should only construct and authenticate paths consistent with the policy of each AS, and the data plane should only forward packets along these paths. The latter property is called path authorization and it is the central security property of path-aware data planes. The cryptographic authenticators embedded in the forwarding paths ensure that malicious end hosts cannot tamper with the paths produced by the control plane to craft packets that are forwarded along unauthorized paths.
The complexity of data plane protocols and their central role in a new Internet architecture calls for their formal verification. This is needed for strong guarantees of their correctness and security. It also enables the early detection of protocol flaws and vulnerabilities, avoiding critical exploits and expensive corrections after deployment has begun. This is especially important for the data plane since it will be implemented in large numbers of high-performance software or hardware routers, which are difficult to update after their deployment. Furthermore, a formal proof increases confidence in the architecture’s security, thereby fostering its adoption.
Data plane protocols exhibit several characteristics that make the verification of path authorization particularly challenging. First, we want to verify protocols over arbitrary network topologies and authorized paths therein, as determined by the control plane. Second, the formalism must be expressive enough to describe (i) path authorization, which is a non-local property that involves all ASes on a path, and (ii) assumptions on a control plane adversary’s capabilities to shorten, modify, and extend certain authorized paths. Third, the number of participants and the message sizes in a protocol run depend on the (unbounded) length of the path embedded in a given packet. We anticipate that state-of-the-art automated security protocol verifiers such as Tamarin [47] and ProVerif [13] could only be used for bounded verification of path authorization, instead of verification under arbitrary sets of authorized paths.

Overview of our models. Refinement and instantiation preserve properties.
We instead employ a higher-order logic theorem prover, Isabelle/HOL [52], which allows us to model and verify data plane protocols in their full generality. As research in novel path-aware Internet architectures has led to several interesting candidate (families of) data plane protocols, we would like to verify these without the need to redo the specification and verification effort from scratch for each protocol or variant. Specifications and proofs should thus share as much structure as possible with each other. To achieve this, we propose a parametrized framework in Isabelle/HOL for the verification of data plane protocols. Since we model network protocols in Isabelle/HOL, we name our framework IsaNet. Figure 1 provides an overview of our framework.
We follow a refinement approach, in which we formally relate models at different levels of abstraction via simulation relations in order to develop protocols that are secure by construction. The resulting trace inclusion guarantee ensures that properties proven on the abstract models are preserved to more concrete models. We first develop a simple abstract event system model of a packet forwarding protocol. We omit the attacker in this model, which makes it easy to prove path authorization. We then refine this model into a more concrete one, where we introduce a Dolev–Yao adversary and (generic) cryptographic authenticators, called (hop) validators (
Our development is also parametrized by an arbitrary network topology and a set of authorized paths constructed by the control plane. Our security proofs hold for all network topologies and control planes that satisfy some realistic assumptions. We support both a standard and a strong attacker model.
To define a concrete data plane protocol in IsaNet, we instantiate our model’s protocol parameters and to prove its security, we discharge the associated conditions. We do so for the data plane of the original SCION protocol [55,70], which we will call SCION-11 after its year of publication, and its substantially revised version [3,17], which we will analogously call SCION-22. We also verify members of the EPIC protocol family [43], and ICING [51], as well as variants of the above protocols. The instantiations and associated proofs are substantially shorter, simpler, and more manageable than redoing a full specification and security proof for each protocol. In particular, discharging the conditions does not involve reasoning about state transitions (unlike, e.g., proving an invariant).
The results reported on in this paper revise and substantially extend those of [41]. The main extensions are the addition of the SCION-22 protocol instance (Section 7.3), an algebraic model of exclusive-or (Section 8.2), and packet header updates by on-path routers (Section 8.3).
Since path-aware Internet architectures have not yet been widely deployed, they are not well-known outside of the networking community. Hence, there is little other existing verification work. The most closely related works are the verification of a weaker AS-local form of path authorization [16] and of different security properties [68] for such architectures. Both of these works mechanize their proofs in Coq using a non-foundational approach, i.e., relying on an axiomatization or external tools. We further discuss related work in Section 10.
Contributions. Our main contributions are as follows. (i) We develop IsaNet, a generic framework for verifying security properties for a general class of data plane protocols for arbitrary network topologies. This framework has four protocol parameters that are required to satisfy five simple verification conditions. (ii) The five conditions provide insight into the common structure underlying data plane protocols of path-aware Internet architectures. (iii) We instantiate our framework with nine different variants of realistic data plane protocols proposed in the literature and prove that they satisfy path authorization by establishing the parametrized model’s conditions. (iv) We incorporate many features of proposed protocols, which allows us to verify a wide range of protocols. (v) All of our definitions and results are formalized in Isabelle/HOL following a foundational approach, which only relies on the axioms of higher-order logic and thus provides strong soundness guarantees. All results are available online [40].
In this section, we provide background on secure data planes and give an overview of our framework, in particular the protocols and security properties that we verify.
Motivation for future Internet architectures
Networking in today’s Internet is plagued by numerous performance and security problems. Packet forwarding uses longest-prefix matching on large routing tables, which scales poorly and requires expensive hardware support. Networking using BGP relies on the convergence of the distributed state. Changes to the network topology trigger routing updates that can lead to outages lasting tens of minutes [37], and in some topologies, BGP does not converge to a stable state at all [34].
The current Internet not only has these efficiency and scalability limitations, it also lacks security at the networking level. Due to the lack of authentication of packets’ sources, adversaries can launch attacks with spoofed source addresses. BGP hijacking attacks, which involve malicious BGP announcements, allow attackers to illegitimately attract traffic of IP prefix ranges. Without secure routing, all of the ca. 70,000 ASes in the Internet must be trusted not to carry out prefix hijacking attacks [8].
Various protocols have been proposed that add security mechanisms to the existing BGP infrastructure. These include BGPSec [44], S-BGP [38], soBGP [66], psBGP [65], PGBGP [36], and BGP origin validation [15]. Unfortunately, these additions are insufficient to solve the Internet’s problems [18,45,58], or they introduce new problems such as high overhead [32,53] and kill switches [58]. In short, they trade off security with performance and they fail to address the reliability problems of BGP’s convergence-based approach. As the networking layer already suffers from scalability and efficiency limitations, solutions that amend BGP at the cost of performance are unlikely to be deployed in the future.
Our work instead applies to data planes of a wide range of future Internet architectures that follow a clean-slate path-aware approach [4,12,33,50,55,56,67,69]. We first discuss these data planes generically, and present SCION-11 as an example in Section 2.5, where we also describe SCION’s control plane.
Data planes of future Internet architectures
Each AS in the Internet administers its internal network including its routing and forwarding mechanisms. We abstract from internal forwarding and consider the networking between ASes, which requires entities to agree on a common protocol. Since we view the Internet as a network of ASes, we also refer to ASes as nodes. See Fig. 2 for an example of a (tiny) Internet topology. The internal structure of an AS is shown in Fig. 2(c). Nodes are interconnected at border routers, which sit at the edge of each node’s network and perform both inter-AS and intra-AS forwarding.

If path authorization holds, a malicious sender at node F cannot splice the two authorized paths in (a) to create the unauthorized forwarding path in (b). Internal paths in (c) are decided by the AS.
The path-aware Internet architectures that we examine provide end hosts with path control. This means that they can choose from a set of authorized forwarding paths for each destination. End hosts select their desired forwarding path at the granularity of inter-AS links, and embed the path alongside authenticators in each data packet. This packet-carried forwarding state removes the need for border routers to keep state for inter-AS forwarding. Path control also empowers end hosts to make path choices that are suitable for their applications’ needs. For instance, Voice-over-IP requires little bandwidth but low latency, whereas data synchronization requires high bandwidth, but latency is less critical. These applications can thus benefit from using paths with different properties. Moreover, multipath routing allows multiple paths between the same source-destination pair to be used simultaneously, even by the same application.
The end host’s power to choose paths is balanced against the interest of ASes. Paths are discovered and authorized in the control plane (cf. Section 2.5), which must ensure that paths are only authorized if they satisfy the routing policies of ASes.
The forwarding paths embedded into packets consist of a hop field (
There are two kinds of path authorization mechanisms that differ in how paths are authorized in the control plane: in undirected protocols, each AS authorizes the path in its entirety. In directed protocols, each AS only authorizes the partial path consisting of its own hop and all subsequent hops in forwarding direction. For instance, in Fig. 2(a), AS D could decide which of the partial paths D-B-A and D-C-A to allow, but once authorization is granted, extensions authorized by E and E’s children are also implicitly authorized by D. Undirected protocols requires weaker assumptions (cf. Sections 6.1 and 8.5), but have practical disadvantages compared to directed ones (cf. Appendix B).
In the protocols we study, path authorization still holds even if the malicious sender learns the keys of compromised on-path ASes. However, we must make assumptions to exclude trivial violations of path authorization.
We verify two data plane security properties (formally defined in Section 4.4): path authorization and detectability. They protect ASes against malicious senders and compromised ASes.
Path authorization is not just a local property; in particular, it is insufficient for each validator
Security properties that we do not verify
Source and packet authentication allow border routers or the destination to authenticate the sender and packet. Path validation allows the destination to verify that the path contained in the packet was actually traversed. We do not verify these data plane properties and defer their treatment to Appendix C.
Intra-AS forwarding is out of scope, since each AS exercises control over its own network, and global coordination is not required for intra-AS security. We also do not specify or verify the control plane, as its properties are independent from those of the data plane. For instance, path authorization is independent of the property that a path authorized by the control plane is in accordance with the routing policies of all on-path ASes.

Validators of simplified SCION-11 that contain nested MACs. The fields
We now describe a concrete protocol that implements the control and data plane and achieves path authorization. We use the (simplified) data plane protocol of the SCION architecture as an example.
Authorized paths are established on SCION’s control plane using path-discovery beacons. Beacons are initialized by a subset of nodes and constructed in the opposite direction of forwarding. Each AS decides which of the beacons it has created or received should be extended by a hop field and propagated to a given neighbor. Since each AS implicitly authorizes the further dissemination by its neighbor, SCION is a directed protocol. Beacons contain two types of authenticators: signatures, which authenticate the beacons themselves in the control plane, and message authentication codes (MACs), which are used to achieve path authorization in the data plane. The signatures are stripped off the beacons before they are embedded into a data plane packet. In the data plane, which transports vastly more packets than the control plane, asymmetric cryptography is too slow to be employed for each packet. Consequently, SCION’s data plane relies entirely on symmetric cryptography using a key
In the SCION-11 variant that we present here, the validator
Verified data plane protocols
In Section 7, we instantiate our parametrized model with SCION-11 and the following protocols, proving that they satisfy path authorization and detectability.
EPIC [43], a family of directed data plane protocols that provide three levels of security guarantees. We verify levels 1 and 2. EPIC levels 2 and 3 add source and packet authentication as well as path validation mechanisms, which we do not verify. SCION-22 [3,17], which uses mutable fields and XOR to accumulate authenticators. ICING [51], the undirected data plane protocol in the NEBULA Internet architecture [4]. It also provides path validation, which we do not verify.
Preliminaries
In this section, we provide background on event systems, refinement, and model parametrization. We introduce relevant notation in Table 1. Despite our use of Isabelle/HOL, we largely use standard mathematical notation and deliberately blur the distinction between types and sets.
Summary of notation and definitions
Summary of notation and definitions
Event systems are labeled transition systems, where transitions are labeled with events. Formally, an event system is of the form
Given an abstract event system
In our models, we often use parameterized events and states structured as records. We use the notation
Parametrization
Our models’ generality rests on their parametrization. A parametrized model may make assumptions on its parameters. An instance must define the parameters and prove all assumptions. For easy identification, we will highlight parameters in gray when they are first introduced. Parametrization is independent of refinement. For instance, a model can be parametrized and concrete at the same time (as is the case in our framework). In our Isabelle/HOL formalization we implement parametrization using locales [9].
Abstract model
We define an event system that models the abstract data plane of a path-aware network architecture. This model includes neither cryptography nor an attacker. We prove that it satisfies path authorization and detectability in Theorem 1. The environment parameters introduced here and the concrete model’s protocol parameters are summarized in Table 2.
To distinguish this abstract model,
Our models’ parameters. Used in Section 6 to express assumptions (ASM) and conditions (COND)
Our models’ parameters. Used in Section 6 to express assumptions (ASM) and conditions (COND)
We model the Internet as a multigraph, where nodes represent ASes and edges represent the network links between them. More precisely, a network topology is a triple
which models links between ASes. We say that an interface i is valid for a node A, if
We often reason about paths in the network, defined in terms of both nodes and their interfaces, rather than the network topology itself. We define a path to be a finite sequence of hop info fields (called info fields and abbreviated
Our model’s second environment parameter is the set of authorized paths
along which packets are authorized to travel. Packets can also traverse just a part of an authorized path. To account for these partial paths, we define
We will later introduce an assumption that neighboring hop fields in authorized paths must point to valid links in the network topology defined by the function
Our third parameter is the set of compromised nodes (also called attacker or adversary nodes)
All other nodes are called honest. This environment parameter only becomes relevant after introducing the adversary in the concrete model (Section 5.3), where the attacker has access to the keys of compromised nodes. We nevertheless introduce it here, since using the same environment parameters in all of our models simplifies our presentation. The environment assumptions (ASM) expressed over these parameters are introduced for the refinement of the abstract to the concrete model (Section 6.1).
State
We model packet forwarding from a node’s internal network to an inter-node link, and vice-versa, using two types of channels: internal channels (one per node) and external channels (two per interface-node pair, one in each direction). We model these channels as sets of packets. We will define our forwarding events as reading from and placing new packets into channels, but without removing the existing packets. Hence, we model asynchronous communication with message reordering and replay.
We will define packets (
In the initial state
We define packets without their payload, only consisting of the forwarding state and a history:
Events
The events of the abstract model are given on the left-hand side of Fig. 4. The life cycle of a packet is captured by the following events:

Events of the abstract (left) and concrete (right) model, with differences highlighted.
We now describe these events in more detail. The
The
Path authorization states that packets can only traverse the network along authorized paths. This ensures that the data plane enforces the control plane’s routing policies. Formally, for all packets m in a state s,
The abstract model satisfies path authorization and detectability, i.e.,
The proofs in this abstract model are straightforward. For path authorization, new packets are required to have an authorized future path and an empty history and for existing packets,
We refine the abstract forwarding protocol into a concrete model. In this model, the packets’ hop fields include (generic) cryptographic hop validation fields to secure the authorized paths against a Dolev–Yao attacker (Section 5.3). We present the concrete model’s events in Section 5.4 and the refinement in Section 6.
The concrete model retains the environment parameters of the abstract model (Section 4.1), and adds four protocol parameters, which we introduce below. One of them is the cryptographic check that ASes apply to their validators, which allows us to abstract from the concrete cryptographic mechanism used.
Our presentation will focus on path authorization, specifically in the directed setting. We defer the treatment of undirected path authorization to Section 8.5. We compare both classes of protocols in Appendix B.
Cryptographic terms, hop fields, packets and states
We introduce an algebra
Hop fields (
We next define concrete packets as follows:
The concrete state space
We define the overloaded function
Protocol parameters and authorized paths
We define four protocol parameters. The first is a cryptographic validation check
which each border router performs to check the validity of its hop field. This parameter abstracts the cryptographic structure of the validator, which is only determined in concrete protocol instances. Here,
We also define a function
We use this function in the mapping of future paths from the concrete model to the abstract model (Section 6.3) to truncate the path at the first invalid hop field. As demonstrated by our successful refinement, this does not reduce the system’s possible behavior. This is because forwarding is performed by honest agents that do not forward packets along invalid hop fields. We call a path
Instances can restrict the set of concrete authorized paths to incorporate assumptions on the control plane. The second parameter of our model is a predicate over a given concrete path and
We define the set of concrete authorized paths,
Protocols use the
which is intended to extract this path from a given
We lift
The fourth protocol parameter is a set of additional cryptographic terms
given to the attacker in the definition of the intruder knowledge below. The parameters
Attacker model
We model a Dolev–Yao adversary who can eavesdrop on and inject new packets in all
As usual, we model the attacker’s knowledge as a set of terms and her message derivation capabilities as a closure operator

Rules for Dolev–Yao message decomposition (
We define the intruder knowledge in a state
Each event of the abstract model is refined into a similar event of the concrete model (Fig. 4, right). The concrete model retains the packet life-cycle of the abstract model (Section 4.3). The
Attacker events
The two attacker events
Similar to their abstract counterparts, both events set the history
Note that in the
Honest events
To secure the protocol against the attacker introduced in this model, honest events now perform two validation checks. First, upon receiving a packet from another node,
Constant intruder knowledge
The dispatch events only add packets to the network that are derivable from the intruder knowledge. Furthermore, all other events only add packets that already exist in the network or can be easily derived from them using
More precisely, under the Dolev–Yao closure
For all reachable states s,
Since the attacker does not learn any new messages during the protocol execution, we can drop the state-dependent part of the intruder knowledge under
We prove that the concrete event system refines the abstract one. Our proof rests on several global assumptions (ASM) about the control plane and on a set of conditions (COND) on the authentication mechanism used. These will be defined later in this section, as are the refinement mappings
To establish that a concrete protocol satisfies the path authorization and detectability properties, it suffices to define the protocol’s authentication mechanism by instantiating the protocol parameters and discharging the associated conditions, which we do for several protocols in Section 7.
We first introduce the assumptions and conditions and then define the refinement mappings. Finally, we show the interesting cases in the attacker events’ refinement, which is the crux of Theorem 2’s proof.
We define two types of environment assumptions about the authorized paths
Correctness assumptions
We assume that authorized paths are interface-valid: interfaces of adjacent info fields on a path point to the same link, except when both hop fields belong to attacker nodes. With this exception, we account for unavoidable out-of-band communication by adversaries, so-called wormholes [35]. To formalize interface validity, we introduce the predicate
We define a function
We furthermore assume that authorized paths are terminated: the first info field’s
Assumptions to rule out artificial attacks
Recall that path authorization protects ASes’ routing policies from malicious end hosts. This property only holds for the policies of honest ASes. We must exclude artificial attacks, in which the sender violates the policies of compromised ASes.
The honest ASes’ routing policies govern the dissemination of beacons, and hence the creation of authorized paths. In the directed setting, an honest AS A sending a beacon to a neighbor AS B implicitly consents that B and all subsequent ASes may extend the path at their discretion. This is in contrast to the undirected setting, which requires all ASes to explicitly agree on the entire path.
The data planes of directed protocols allow the attacker to perform the following actions, which at first glance seem to violate path authorization: a malicious AS on a path discovered by a beacon can arbitrarily extend the path with additional compromised ASes in the data plane by crafting additional validators using the compromised keys – even if the extended paths are not authorized in the control plane. However, the control planes of the directed setting allow all ASes to similarly disseminate beacons that they receive and the resulting extended paths can be considered as authorized by the mentioned implicit consent. Hence, the “malicious path extensions” in the data plane are artificial attacks that have the same outcome as legitimate control plane actions, and that furthermore do not violate the policy of any honest AS. We thus assume that the paths extended in this way are authorized as well.
For example, assume that ASes E and F in Fig. 2 are compromised. Since E is on the right path G–E–D–C–A, she can take the suffix E–D–C–A, change her own hop field (and issue a new
We characterize the attacker’s possible and permitted behavior via the following assumptions. First, taking into account the path reversal of the data plane, the extension of paths becomes: prepending a compromised AS to an authorized path starting with an attacker results in an authorized path (ASM 4). We furthermore consider authorized paths shortened by the attacker to be authorized in ASM 5, allow the attacker who is first on a path to change its info field in ASM 6, and assume that the empty path and singleton paths consisting of an attacker are authorized in ASM 3.
These are not merely assumptions of our protocol model but are inherent to the path authorization mechanism of directed protocols. Undirected protocols require that the entire path is authorized by each on-path AS. As we show in Section 8.5, ASM 3–ASM 6 can then be replaced by weaker assumptions.
Note that all these assumptions are only required since we assume a very strong attacker model where the end host attacker colludes with on-path ASes. We emphasize that this is in stark contrast to BGP, which does not achieve security even when there are only off-path attackers. When all compromised ASes are off-path, then the above closure assumptions are not needed.
Conditions on authentication mechanisms
We define five conditions that relate the protocol parameters
COND 1 and COND 2 together require that the attacker cannot derive valid hop fields for honest nodes that are not already contained in
Valid hop fields that belong to attacker-controlled nodes and are derivable using her keys are already contained in the set of authorized paths by ASM 3–ASM 6, hence COND 1 does not cover them.
COND 3 and COND 4 relate
Finally, COND 5 requires the
Refinement mappings
We define the refinement mapping
For
The refinement mapping
Refinement proof
In the refinement proof, we first show that the concrete initial state maps to the abstract initial state under
We then show that each concrete event e can be matched by its abstract counterpart
To improve readability, we will often omit the parameter
Lemmas
We prove two lemmas that are helpful for the attacker refinement proof below. The first lemma states that a valid path that satisfies
If
By COND 3 and COND 4. □
Suppose
If Otherwise, we can apply COND 2 and obtain
If a packet m is derivable by the attacker, i.e.,
We prove this theorem by induction over
COND 5 is required to show that
We now instantiate the concrete parametrized model to several protocols from the literature and variants thereof. To do so, we instantiate the model’s protocol parameters and prove the associated conditions. Since refinement and instantiation preserve properties, the path authorization and detectability security properties proven for the abstract model also hold for these instance models.
SCION-11
In SCION-11,
We instantiate
To show that this model of SCION-11 inherits the security properties proven in the parametrized models, we prove the parametrized model’s conditions. First, we observe that the intruder knowledge only contains keys and MACs, which cannot be decomposed, and hence
Variants. By dropping
EPIC
EPIC Level 1 uses a hop authenticator
We define the validator
End hosts first obtain the public hop authenticators for a path. For each packet they compute the timestamp offset, embed it in the
Two mechanisms in EPIC limit the effects of brute-force attacks on the validator: First, the
Only by brute-forcing the underlying static hop authenticator
Formalization. We formalize EPIC similarly to SCION-11. However, we additionally account for the attacker’s ability to brute-force individual validator fields by introducing a strong attacker model, which gives the attacker access to an oracle. We discuss this extension of our framework and its use in the EPIC formalization in Section 8.4.
We use another extension (introduced below) to define the type of
We show that EPIC is an instance of our concrete parametrized model, and thus inherits the security properties proven in the abstract model. The proof is similar to that of the SCION-11 instance, but requires additional case distinctions since
Variants. We verify EPIC level 1 and level 2 in the strong attacker model (see Section 8.4).
SCION-22
The SCION-22 protocol substantially revises the SCION packet header, and in particular changes how the forwarding path is used to compute the HV. The HV of each hop field is a MAC over the local routing information
Protocol description
The control plane creates forwarding paths such that for each hop on the path, the
We will use the topology and

Motivation. In the original SCION-11 protocol, there are a number of different cases for switching between different segments. In our models, these cases are not visible, since we abstract from segment switching. However, when implementing the SCION router, engineers found that fields in multiple variable memory locations needed to be fetched depending on the type of segment switching occurring. In particular, not only the location of the current hop field, but also the locations of other hop fields used to compute the
This motivated creating the SCION-22 protocol, where only the location of the current hop field changes, and the locations of all other fields needed for forwarding are fixed in the packet header. This simplifies the protocol by reducing the number of case distinctions and allows routers to process packets more quickly.
While the implementation of SCION-22 may indeed be simpler, formally proving its security is more difficult than for the other instances and requires the use of several extensions presented below.
Protocol details. The packet token field is mutable. When an AS receives a packet from an inter-AS channel, it updates its
Example. Assume that, given the topology in Fig. 6, an end host in AS D sends a packet to an end host in AS A. The packet is initialized by the end host with
Required extensions. In order to formalize this instance, we needed to extend the framework presented in the previous section in three ways. First, we add an abstract XOR operator, second, we parametrize the type of
Since our focus here is on the SCION-22 protocol, we only briefly introduce these extensions, and present further details in Sections 8.1 to 8.3.
We extend IsaNet with a model of XOR by adding a constructor ⊕ for finite sets of terms (of type
We parametrize the type of
We allow for updatable packet token fields by adding the update function
With these extensions in place, the formalization of the update function
Restriction. As in the other protocols, we need to ensure that the
In our model, we verify a simplified version where we assume that
Extract. The
We observe that on paths that are valid and satisfy
Example. Consider in Fig. 6 that we extract the path from
Proofs. We first show that if a term t is contained in a
ICING
Among the protocols we study, ICING [51] provides the strongest security properties, albeit at the cost of the highest overhead [43]. In particular, ICING allows ASes to authorize the entire path and is thus an instance of the undirected setting. This requires a separate concrete model, whose parameters, assumptions, and conditions slightly differ from those presented above. We discuss this model in Section 8.5.
ICING uses proofs of consent (PoCs) to achieve path authorization. These are created by applying a pseudorandom function (PRF) using a tag key on the entire forwarding path. The tag key for each AS is derived from its master key
Formalization. In our symbolic model, PRFs and MACs are modeled identically and we thus formalize PoCs as validators using MACs. We define
Variants. We verified three versions of the protocol. The first is presented above. In the second version, the validator consists of ICING’s path authenticator, which includes an expiration timestamp and a path hash besides the PoC. These additional details are not essential for achieving path authorization and detectability but reduce the gap between the model and proposed protocol. We define
The third version is a further simplified variant of ICING compared to the one presented first, which omits the info field in the key input of the MAC computation. Proving the concrete model’s conditions is straightforward for all three versions. However, the simplest one requires the additional assumption that an AS cannot have two different hop fields on the same path, since otherwise they would have the same MAC, despite having different local forwarding information.
Extensions
We now describe a number of features of our formalization that we previously elided to simplify the presentation. Table 3 in Appendix A lists which extensions are used in the individual protocol models.
Type parametrization in parametrized models
While we have presented all definitions of the concrete model with specific types for simplicity, our formalization uses type parameters for some fields. This allows for greater flexibility when modeling protocols. When the type of a field is only determined by the instances, defining the intruder knowledge in the parametrized model requires an additional protocol parameter. This parameter defines what terms an attacker can learn from analyzing the field. For instance, the type of
We change the definition of
Instances. In SCION-22, the
Exclusive-or abstraction
We extend IsaNet with an abstraction of exclusive-or (XOR), which is used in the SCION-22 instance. The XOR operator ⊕ can be characterized by the following equations for associativity (A), commutativity (C), the identity element 0 (I) and self-inverse (S).
Existing modeling approaches. The XOR operator is difficult to support in symbolic protocol analysis. Most automated protocol verifiers that support equational theories cannot straightforwardly implement XOR using the above equations, as these equations do not form a subterm-convergent equational theory [1]. Simply speaking, this means that XOR cannot be characterized by a set of equations that each simplify a given term by replacing it with a subterm or a constant. This is in contrast to, for instance, symmetric encryption, which can be modeled by a subterm-convergent equational theory described by the single equation
A generic approach to incorporating a large class of equational theories into verifiers is provided by Escobar et al. [29], who propose folding variant narrowing. Automated protocol verifiers such as Maude-NPA [28] and Tamarin [26] follow this approach. While this technique is powerful and applicable to a wide range of equational theories, modeling and reasoning about equality modulo axioms, as required by their approach, involves considerable effort in protocol verification using interactive theorem proving.
An alternative way of modeling XOR is to use term normalization to ensure that any two terms that are equal under the equational theory are identical under normalization. With this approach, if we normalize all terms under consideration, then equality does not require equational theories. For a binary ⊕ operator, such a normalization could be solved by (i) removing parentheses from terms being XORed and putting them into a sequence, (ii) linearly ordering the sequence and (iii) applying (I) and (S) exhaustively as simplification rules. For instance, assuming that x, y and z are non-XOR terms and that
Our XOR model. In our framework, we follow a different approach. We introduce a term representation and an attacker model that simplify our reasoning about protocols using XOR. Instead of using term normalization, we directly model the canonical representations of XOR terms based on a new term constructor
In order to combine two given terms
Rather than defining a normalization function that turns an arbitrary term into a normal term, we define our event systems such that all terms in reachable states are already normal, i.e., they do not contain directly nested ⊕ constructors. We show this below for the SCION-22 instance.
Attacker models for XOR. We propose a novel overapproximation of the attacker capabilities that greatly simplifies reasoning about the composition and decomposition of XOR terms. This overapproximation is based on the observation that, broadly speaking, XOR is utilized in security protocols for two different purposes. First, XOR is used to achieve secrecy. Plaintext values can be masked using XOR with values unknown to the attacker. The prototypical example of this is the one-time pad encryption scheme, where a plaintext message is XORed with a fresh random key (of equal length) to obtain the ciphertext. Second, XOR is used as a compression function. As opposed to one-way compression functions, XOR is trivial to invert if one of the inputs is known. However, many authentication and integrity-protecting protocols either do not need one-wayness or even require an invertible function. XOR is also popular in protocols, as it is simple. Moreover, implementations in hardware are highly efficient. We now discuss attacker models for each of these two use cases.
In both cases, the attacker can compose messages using the rule on the left-hand side of Fig. 7. This rule’s side condition ensures that it preserves term normality (as do the existing rules from Fig. 5). The difference is with the decomposition rules. The following rule reflects an attacker’s standard capabilities to decompose XOR terms in our setting (cf. [26]):
In the case, where XOR is used as an invertible compression function only, we propose the simpler decomposition rule on the right-hand side of Fig. 7. This rule overapproximates a realistic attacker’s behavior by allowing them to learn any term
A rule R is admissible in a derivation system if it does not add any deductive power, i.e., any proof using R can be converted into one not using R.
Protocol instances. We use our XOR formalization based on finite sets and our attacker overapproximation in the SCION-22 instance. We show that all terms occurring during the execution of the protocol are normal. To see this, we observe that all messages in a state are contained in the intruder knowledge

Rules added to the Dolev–Yao message decomposition (
Discussion. Our finite set representation of XOR makes our formalization substantially more manageable, as explicit reasoning modulo equational theories is not required. Rather than a normalization function that re-orders terms using associativity and commutativity and applies identity and self-inverse simplification rules, we only require preventing directly nested ⊕ operators, which we do via the
Our overapproximation of the attacker derivation capabilities also greatly simplifies reasoning about the intruder knowledge and the derivation of terms. Consequently, the use of XOR only adds a moderate amount of complexity in the SCION-22 instance. This is surprising since security protocol verification typically becomes much harder when XOR is used. While we have only used XOR in one instance, we believe that our XOR theory is applicable to a large class of security protocols, including several protocols studied in [27,64].
Lastly, our XOR theory itself is very concise: all definitions and lemmas, including those related to the normal predicate, add less than 300 lines of code to the term algebra theory. In contrast, the XOR theory proposed by Schaller et al. [60] adds thousands of LoC.
This extension is used to model protocols in which routers receiving a packet from an inter-AS channel update the
This function updates a
We introduce a function
The
This extension requires a number of changes to our framework, such as modifying the definition of
Lifting updates to paths. Our proofs often involve reasoning about path fragments. For instance, the suffix
Instances. SCION-22 updates the
Strong attacker model
Legner et al. [43] propose a strong attacker model for EPIC, which reflects that an adversary can, with some effort, brute-force correct
as an additional environment parameter of the concrete parametrized model, which is true for all
While this addition strictly strengthens the attacker, her events must be restricted to rule out trivial attacks where the attacker sends a packet with a
The instance proofs for the EPIC protocols are similar to the proof in the basic attacker model. However, they must additionally account for the attacker obtaining valid hop fields from the oracle.
Undirected authorization schemes
For brevity, we have focused on directed authorization schemes, where each AS only controls the authorization of the traversal of subsequent ASes (in the forwarding direction) and the traversal of previous ASes is outside of its control. This setting allows the attacker to legitimately extend and change her own path in the control plane without consent by subsequent ASes, and hence requires the control plane assumptions ASM 3–ASM 6.
We have a separate parametrized model for the undirected authorization scheme, where the entire path must be approved by all on-path ASes. The control plane assumptions can be relaxed, and ASM 3–ASM 6 are replaced by the following weaker assumption stating that an attacker can create authorized paths consisting entirely of compromised nodes.
In this model, the cryptographic check parameter has the entire path (including the past path) as an argument:
Formalization and proofs. In the undirected setting, the entire path is embedded in each
We again utilize parametrization to avoid redundancy and duplicated proof efforts in our models. Rather than having one concrete model for the directed setting and another concrete model for the undirected setting, we use an intermediate model that generalizes the definitions in the directed and undirected models. The concrete model’s event system definition, invariant proof, and refinement proof all belong to this common intermediate model, which interfaces with the directed and undirected concrete models via a number of parameters and conditions. In particular, it interfaces with these models by assuming Theorem 3. The proof of this theorem is done separately, since it differs between the directed and undirected setting.
Additional authenticated fields
To allow for more accurate modeling of protocols and to future-proof our framework, our formalization includes additional per-hop and per-packet fields, which are included in
This extension requires changes to the definitions, parameters, assumptions, conditions and lemmas of both the models presented in the previous sections and in the above extensions. Nevertheless, the use of these additional fields does not add significant complexity and is not essential to the insights provided by our models and proofs. Hence, we have elided their presentation above.
Discussion
In this section, we discuss some additional aspects of our formalization (Section 9.1), we point out differences between our models and the actual protocol specifications or implementations (Section 9.2), and we discuss the representation of messages in our models and in the implementations (Section 9.3).
Formalization details
Presentation and statistics. Our formalization in Isabelle/HOL closely follows the models and proofs described in this paper, modulo differences in notation and changes required for the extensions, as discussed above. Most of the proof burden is handled in the parametrized models, not the instance models. In particular, this is true of the crux of the proof, Theorem 3. A substantial portion of the instance models is boilerplate definitions and proofs that only vary slightly between the instances. Table 4 in Appendix D gives an overview of the Isabelle/HOL code of IsaNet.
Consistency of environment assumptions and executability of event system. All instance models are still parametrized by the environment parameters, i.e., the underlying Internet topology defined by
Differences between models and real protocols
We discuss the abstractions that we have made in our protocol models, distinguishing generic abstractions used in the parametric model and instance-specific abstractions.
Generic abstractions. Our models abstract from real protocols in several ways, many of which are standard in protocol verification. First, we simplify the structure of messages. We omit additional message fields and checks that are either irrelevant to path authorization or unnecessary due to our more abstract message representation (e.g., the protocol version, an explicit path length, and the current hop field pointer). Moreover, unlike our models, the actual protocols do not include the AS identifier (
Instance-specific abstractions. Our instance models additionally differ from the actual protocols in the following ways. In SCION, forwarding paths can be created by connecting multiple partial paths, called segments, according to certain rules. In our current formalization, we only consider single up-segment paths. In EPIC, hop authenticators
Message representation and implementation
Our verification results hold in a symbolic (Dolev-Yao) attacker model where messages are represented as terms and cryptography is assumed to be perfect. Note that to simplify verification we use terms in combination with other Isabelle/HOL datatypes such as records and lists to model parts of network packets (see Equations (8) and (9)). We consider this as unproblematic, since these structures could be encoded as message terms in a further refinement, where pattern matching in the receive event would enforce the correct packet structure. Unlike our models, protocol implementations manipulate bitstring messages and use cryptographic libraries with non-perfect (computational) security guarantees. Hence, the symbolic model focuses on the security of the main protocol logic, but may miss attacks exploiting cryptographic weaknesses or problems related to the parsing of bitstring messages. The fundamental gap between symbolic models and implementations is a general problem of the symbolic approach. Below we discuss two possible approaches to address it.
Computational soundness. The strongest way to bridge this gap are computational soundness results (see [20] for an overview). Such results would allow us to deduce cryptographic security guarantees from our symbolic verification results. However, these results often require rather strong assumptions, which may be hard to fulfill in practice. For example, in [21,48], the authors assume an injective mapping from terms to bitstrings. There are several reasons why the existence of such a mapping may be unrealistic. First, distinguishing different types of messages (e.g., SHA-256 hashes from AES-256 ciphertext) may require systematic tagging, which is often prohibited by implementation constraints. Second, unlike in the symbolic model, cryptographic hash functions are non-injective by definition. Moreover, for some primitives and computational models, computational soundness is unachievable. For example, Unruh [63] presents a general impossibility result for XOR.
Perfect cryptography view on bitstrings. A simpler solution to this problem, which essentially keeps up the perfect cryptography illusion on the bitstring level, is to define the cryptographic library over an abstract data type of messages and consider two different implementations where messages respectively are instantiated with terms (which is useful for testing) and bitstrings (for the actual implementation) [10,11]. Apart from the cryptographic operations, the parsing of (non-cryptographic) message formats is a common source of implementation errors. Actual protocol message formats are often based on a combination of fixed-length fields, variable-length fields, and tags (see, e.g., the SCION-22 header format [3]). Whether provably sound and secure parsing is achievable for the protocols studied here deserves further investigation, possibly along the lines of [49,57].
Related work
There exists relatively little work on the verification of packet forwarding in path-aware internet architectures. We review those works here as well as other research on verifying secure routing (i.e., path construction) protocols.
Data plane protocols for path-aware architectures. Over the past two decades, several other path-aware architectures have been developed [12,33,56,67]. Several of these use forwarding tables or other kinds of state on the routers (instead of cryptographic authenticators) to achieve path authorization [33,67], which does not fit into our framework. Others are not specified in sufficient detail to allow for formal verification [12] or only achieve local properties without considering full path authorization over multiple hops [56]. Finally, some data plane protocols [14], including OPT [39], focus only on source authentication and path validation, neither of which we verify.
Verification of secure data plane protocols. Chen et al. [16] define SANDLog, a Prolog-style declarative language for specifying both data and control plane protocols. They also present an invariant proof rule for SANDLog programs and a verification condition generator, which targets Coq. They the verify route authenticity of S-BGP and both route authenticity (in the control plane) and data path authenticity (in the data plane) of SCION. Hence, their coverage of SCION is more comprehensive than ours. However, their data plane property is weaker than our path authorization. It only guarantees that each traversed hop appears on some authorized path, but does not relate successively traversed hops.
Zhang et al. [68] prove source authentication and path validation properties of the OPT forwarding protocols [39]. These properties differ from those that we formally prove. They use
Verification of secure routing protocols. Cortier et al. [6] propose a process calculus for modeling routing protocols, including a model of the network topology and a localized Dolev-Yao adversary. They propose two constraint-based NP decision procedures for analyzing routing protocols for a bounded number of sessions. The first one analyzes a protocol for any network topology, i.e., it decides whether there exists a network topology for which there is an attack on the protocol. The second procedure analyzes a protocol for a given network topology. They also define a logic to express properties such as loop-freedom and route validity. They analyze two ad-hoc routing protocols from the literature. This work is extended to protocols with recursive tests in [5].
Cortier et al. [19] prove a reduction result showing that for proving path validity it is sufficient to consider just five topologies of four nodes. Path validity is similar to our ASM 1 but omitting interfaces. They then analyze two ad-hoc routing protocols using ProVerif.
Parametrization in security protocol verification. Parametrization is a common abstraction technique. It has been used in security protocol verification to achieve the verification of more than one protocol. For instance, Lallemand et al. [42] use parametrization for an abstract realization of channels with different security properties, also in the context of refinement. Schaller et al. [60] employ parametrization to verify physical properties of a number of different wireless protocols.
Exclusive-or in security protocol verification. Automated security protocol verifiers, such as Maude-NPA [28], AKISS [7], and Tamarin [26] have incorporated support for exclusive-or (XOR). Yet it is widely recognized that XOR is challenging to support in security protocol verification. Some verification works abstract from XOR, when the protocol’s security properties do not depend on it [25]. This is the approach that we follow for the ICING protocol instance, which uses additional authenticators that achieve properties that are unrelated to path authorization. However, it cannot be applied to SCION-22, since SCION-22’s use of XOR is central to achieving its security properties.
Schaller et al. [60,61] formalize XOR for a Dolev–Yao model in Isabelle/HOL. Their formalization models XOR as a binary operator, and uses normalization to reduce equality in the theory of XOR to syntactic equality on terms.
Escobar et al. [29] provide a generic approach for a wide range of non-subterm-convergent equational theories. Given an equational theory that satisfies the finite variant property, they divide it up into a set of oriented equations that can be used as rewrite rules that are safe to perform (for instance, because they are subterm convergent) and into a set of “axioms” that are not. Equality of terms is decided by narrowing using the safe rewrite rules, and comparing the resulting terms modulo axioms. In the case of XOR, which they introduce as an example instance of their generic approach, (A) and (C) are axioms, and (I) and (S) are rewrite rules. Their approach requires carefully defining the set of equations in order to make them coherent with the set of axioms. In the case of XOR, this is achieved by adding
Conclusion
The verification of future Internet architectures, and in particular path authorization, is a challenging problem since (i) automated protocol verification tools lack the expressiveness to reason about arbitrary sets of authorized paths and (ii) the relevant protocols are likely to undergo changes before their eventual standardization and widespread deployment. General guarantees for evolving protocols require general specifications and proofs that abstract from the idiosyncrasies of particular protocol instances. Our parametrized framework IsaNet provides a solution to these challenges. It substantially reduces the per-protocol specification and verification work compared to restarting verification from scratch for each protocol. For each instance, one must just define the parameters and prove the static conditions to establish path authorization and detectability. Our abstractions are general enough to cover a large class of protocols proposed in the literature.
The present work constitutes an important step towards our ultimate goal of verifying a high-performance implementation of the SCION-22 router written in Go. We are pursuing this goal using the Igloo methodology [62] to soundly link protocol and code verification. This methodology guarantees that the implementation will inherit the properties we have proven for our model. To achieve this goal, we are further refining our SCION-22 model, adding more detail such as packet buffering and segment switching, and we are extracting a program specification of the router’s behavior from the refined model. This specification will be used for the verification of the router code.
In future work, security properties such as packet authentication and path validation could be included in the verification framework. Since not all protocols achieve these properties, an interesting question is how they could be incorporated in a modular fashion without requiring separate parametrized models with duplicated proof effort. Furthermore, it would be interesting to investigate the existence of a reduction result for path authorization and other data plane security properties in the vein of [19], which would enable the fully automated verification of secure dataplane protocols.
Footnotes
Extensions table
Table 3 gives an overview of the extensions used by protocol instances.
Undirected vs. directed protocols
While undirected protocols achieve path authorization under weaker assumptions (cf. Section 8.5), undirected protocol have several disadvantages.
In the data plane, existing undirected protocols require each hop to incorporate the entire path into the hop validity check. This incurs a processing overhead linear in the path length. In contrast, the directed protocols that we study only need to check a constant number of fields.
In the control plane, the ways paths are authorized in undirected architectures have two drawbacks. First, the beacons creating paths in undirected protocols must complete a round-trip: the first leg to discover the path and the second leg to authorize it. In contrast, directed protocols can achieve both of these in a single leg, where forwarding along a path is in the opposite direction of path construction. Second, the control plane must mediate between conflicting path policies by ASes. If there is no path that satisfies the constraints by all on-path ASes, then no forwarding can occur. In directed protocols it is simpler to exclude this possibility, for instance by mandating that each AS disseminates at least one beacon from a given AS to each of its neighbors.
In summary, there is a trade-off between these protocol classes that depends on the control plane and overall architecture.
Unverified data plane security properties
Formalization details and statistics
Table 4 gives an overview of the different parts of our framework and the lines of Isabelle/HOL code associated with them.
Acknowledgments
We thank Sofia Giampietro and the anonymous reviewers for their insights, careful reading of the manuscript and helpful suggestions.
