<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.19 (Ruby 3.3.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-dekater-scion-pki-07" category="info" submissionType="independent" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.23.2 -->
  <front>
    <title abbrev="SCION CP-PKI">SCION Control Plane PKI</title>
    <seriesInfo name="Internet-Draft" value="draft-dekater-scion-pki-07"/>
    <author initials="C." surname="de Kater" fullname="Corine de Kater">
      <organization>SCION Association</organization>
      <address>
        <email>c_de_kater@gmx.ch</email>
      </address>
    </author>
    <author initials="N." surname="Rustignoli" fullname="Nicola Rustignoli">
      <organization>SCION Association</organization>
      <address>
        <email>nic@scion.org</email>
      </address>
    </author>
    <author initials="S." surname="Hitz" fullname="Samuel Hitz">
      <organization>Anapaya Systems</organization>
      <address>
        <email>hitz@anapaya.net</email>
      </address>
    </author>
    <date year="2024" month="October" day="19"/>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 140?>

<t>This document presents the trust concept and design of the SCION <em>Control Plane Public Key Infrastructure (CP-PKI)</em>. SCION (Scalability, Control, and Isolation On Next-generation networks) is a path-aware, inter-domain network architecture where the Control Plane PKI handles cryptographic material and lays the foundation for the authentication procedures in SCION. It is used by SCION's Control Plane to authenticate and verify path information, and builds the basis for SCION's trust model based on Isolation Domains.</t>
      <t>This document describes the trust model behind the SCION's Control Plane PKI, including specifications of the different types of certificates and the Trust Root Configuration. It also specifies how to deploy the Control Plane PKI infrastructure.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://scionassociation.github.io/scion-cppki_I-D/draft-dekater-scion-pki.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-dekater-scion-pki/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/scionassociation/scion-cppki_I-D"/>.</t>
    </note>
  </front>
  <middle>
    <?line 147?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>SCION is a path-aware internetworking routing architecture as described in <xref target="RFC9217"/>. It allows endpoints and applications to select paths across the network to use for traffic, based on trustworthy path properties. SCION is an inter-domain network architecture and is therefore not concerned with intra-domain forwarding.</t>
      <t>SCION has been developed with the following goals:</t>
      <t><em>Availability</em> - to provide highly available communication that can send traffic over paths with optimal or required characteristics, quickly handle inter-domain link or router failures (both on the last hop or anywhere along the path) and provide continuity in the presence of adversaries.</t>
      <t><em>Security</em> - to provide higher levels of trust in routing information in order to prevent IP prefix hijacking/leaks, denial-of-service and other attacks. Endpoints can decide the trust roots they wish to rely on, routing information can be unambiguously attributed to an AS, and packets are only forwarded along authorized path segments. A particular use case is to enable geofencing.</t>
      <t><em>Scalability</em> - to improve the scalability of the inter-domain control plane and data plane, avoiding existing limitations related to convergence and forwarding table size. The advertising of path segments is separated into a beaconing process within each Isolation Domain (ISD) and between ISDs which incurs minimal overhead and resource requirements on routers.</t>
      <t>SCION relies on three main components:</t>
      <t><em>PKI</em> - To achieve scalability and trust, SCION organizes existing ASes into logical groups of independent routing planes called <em>Isolation Domains (ISDs)</em>. All ASes in an ISD agree on a set of trust roots called the <em>Trust Root Configuration (TRC)</em> which is a collection of signed root certificates in X.509 v3 format <xref target="RFC5280"/>. The ISD is governed by a set of <em>core ASes</em> which typically manage the trust roots and provide connectivity to other ISDs. This is the basis of the public key infrastructure which the SCION Control Plane relies upon for the authentication of messages that is used for the SCION Control Plane.</t>
      <t><em>Control Plane</em> - performs inter-domain routing by discovering and securely disseminating path information between ASes. The core ASes use Path-segment Construction Beacons (PCBs) to explore intra-ISD paths, or to explore paths across different ISDs. See <xref target="I-D.dekater-scion-controlplane"/></t>
      <t><em>Data Plane</em> - carries out secure packet forwarding between SCION-enabled ASes over paths selected by endpoints. A SCION border router reuses existing intra-domain infrastructure to communicate to other SCION routers or SCION endpoints within its AS. See <xref target="I-D.dekater-scion-dataplane"/></t>
      <t>This document describes the SCION PKI component used by the Control Plane. It should be read in conjunction with the other components <xref target="I-D.dekater-scion-controlplane"/> and <xref target="I-D.dekater-scion-dataplane"/>.</t>
      <t>The SCION architecture was initially developed outside of the IETF by ETH Zurich with significant contributions from Anapaya Systems. It is deployed in the Swiss finance sector to provide resilient connectivity between financial institutions. The aim of this document is to document the existing protocol specification as deployed, and to introduce new concepts that can potentially be further improved to address particular problems with the current Internet architecture.</t>
      <t>Note (to be removed before publication): this document, together with the other components <xref target="I-D.dekater-scion-controlplane"/> and <xref target="I-D.dekater-scion-dataplane"/>, deprecates <xref target="I-D.dekater-panrg-scion-overview"/>.</t>
      <section anchor="terminology">
        <name>Terminology</name>
        <t><strong>Control Plane PKI (CP-PKI)</strong>: The control plane PKI is the public-key infrastructure upon which SCION's Control Plane relies for the authentication of messages. It is a set of policies, roles, and procedures that are used to manage trust root configurations (TRCs) and certificates.</t>
        <t><strong>Autonomous System (AS)</strong>: An autonomous system is a network under a common administrative control. For example, the network of an Internet service provider or organization can constitute an AS.</t>
        <t><strong>Isolation Domain (ISD)</strong>: In SCION, Autonomous Systems (ASes) are organized into logical groups called isolation domains or ISDs. Each ISD consists of ASes that span an area with a uniform trust environment (i.e., a common jurisdiction). A possible model is for ISDs to be formed along national boundaries or federations of nations.</t>
        <t><strong>Core AS</strong>: Each isolation domain (ISD) is administered by a set of distinguished autonomous systems (ASes) called core ASes, which are responsible for initiating the path discovery and path construction process known as "beaconing".</t>
        <t><strong>Trust Root Configuration (TRC)</strong>: A Trust Root Configuration or TRC is a signed collection of certificates pertaining to an isolation domain (ISD). TRCs also contain ISD-specific policies.</t>
        <t><strong>Authoritative AS</strong>: Authoritative ASes are those ASes in an ISD that always have the latest TRCs of the ISD. As a consequence, authoritative ASes also start the announcement of a TRC update.</t>
        <t><strong>Base TRC</strong>: A base TRC is a trust root configuration (TRC) that other parties trust axiomatically. In other words, trust for a base TRC is assumed, not derived from another cryptographic object. Each ISD <bcp14>MUST</bcp14> create and sign a base TRC when the ISD is established. A base TRC is either the first TRC of the ISD or the result of a trust reset.</t>
        <t><strong>TRC Signing Ceremony</strong>: The ceremony during which the very first base TRC of an ISD, called the initial TRC, is signed. The initial TRC is a special case of the base TRC where the number of the ISD is assigned.</t>
        <t><strong>TRC Update</strong>: A <em>regular</em> TRC update is a periodic re-issuance of the TRC where the entities and policies listed in the TRC remain unchanged. A <em>sensitive</em> TRC update is an update that modifies critical aspects of the TRC, such as the set of core ASes. In both cases, the base TRC remains unchanged.</t>
        <t><strong>Voting ASes</strong>: Those ASes within an ISD that may sign TRC updates. The process of appending a signature to a new TRC is called "casting a vote".</t>
        <t><strong>Voting Quorum</strong>: The voting quorum is a trust root configuration (TRC) field that indicates the number of votes (signatures) needed on a successor TRC for it to be verifiable. A voting quorum greater than one will thus prevent a single entity from creating a malicious TRC update.</t>
        <t><strong>Grace Period</strong>: The grace period is an interval during which the previous version of a trust root configuration (TRC) is still considered active after a new version has been published.</t>
        <t><strong>Trust Reset</strong>: A trust reset is the action of announcing a new base TRC for an existing ISD. A trust reset <bcp14>SHOULD</bcp14> only be triggered after a catastrophic event involving the loss or compromise of several important private keys.</t>
      </section>
      <section anchor="conventions-and-definitions">
        <name>Conventions and Definitions</name>
        <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
        <?line -18?>

</section>
      <section anchor="trust-model">
        <name>Trust Model</name>
        <t>Given the diverse nature of the constituents in the current Internet, an important challenge is how to scale authentication of network elements (such as AS ownership, hop-by-hop routing information, name servers for DNS, and domains for TLS) to the global environment. The roots of trust of currently prevalent public key infrastructure (PKI) models do not scale well to a global environment because (1) mutually distrustful parties cannot agree on a single trust root (monopoly model), and because (2) the security of a plethora of roots of trust is only as strong as its weakest link (oligopoly model) - see also <xref target="BARRERA17"/>.</t>
        <t>The monopoly model suffers from two main drawbacks: First, all parties must agree on a single root of trust. Secondly, the single root of trust represents a single point of failure, the misuse of which enables the forging of certificates. Its revocation can also result in a kill switch for all the entities it certifies.</t>
        <t>The oligopoly model relies on several roots of trust, all equally and completely trusted. However, this is not automatically better: whereas the monopoly model has a single point of failure, the oligopoly model has the drawback of exposing more than one point of failure.</t>
        <t>Thus, there is a need for a trust architecture that supports meaningful trust roots in a global environment with inherently distrustful parties. This new trust architecture should provide the following properties:</t>
        <ul spacing="normal">
          <li>
            <t>Trust agility (see further below);</t>
          </li>
          <li>
            <t>Resilience to single root of trust compromise;</t>
          </li>
          <li>
            <t>Multilateral governance; and</t>
          </li>
          <li>
            <t>Support for policy versioning and updates.</t>
          </li>
        </ul>
        <t>Ideally, the trust architecture allows parties that mutually trust each other to form their own trust "union" or "domain", and to freely decide whether to trust other trust unions (domains) outside their own trust bubble.</t>
        <t>To fulfill the above requirements, which in fact apply well to inter-domain networking, SCION introduces the concept of <strong>Isolation Domains</strong>. An Isolation Domain (ISD) is a building block for achieving high availability, scalability, and support for heterogeneous trust. It consists of a logical grouping of ASes that share a uniform trust environment (i.e. a common jurisdiction).</t>
        <t>An ISD is administered by one or multiple ASes, called the <strong>voting ASes</strong>. Furthermore, each ISD has a set of ASes that form the ISD core; these are the <strong>core ASes</strong>. The set of core and voting ASes can, but do not necessarily have to, overlap. It is governed by a policy called the <strong>Trust Root Configuration</strong> (TRC), which is negotiated by the ISD core, and which defines the locally scoped roots of trust used to validate bindings between names and public keys.</t>
        <t>Authentication in SCION is based on digital certificates that bind identifiers to public keys and carry digital signatures that are verified by roots of trust. SCION allows each ISD to define its own set of trust roots, along with the policy governing their use. Such scoping of trust roots within an ISD improves security as compromise of a private key associated with a trust root cannot be used to forge a certificate outside the ISD. An ISD's trust roots and policy are encoded in the TRC, which has a version number, a list of public keys that serves as root of trust for various purposes, and policies governing the number of signatures required for performing different types of actions. The TRC serves as a way to bootstrap all authentication within SCION. Additionally, TRC versioning is used to efficiently revoke compromised roots of trust.</t>
        <t>The TRC also provides <em>trust agility</em>, that is it enables users to select the trust roots used to initiate certificate validation. This implies that users are free to choose an ISD they believe maintains a uncompromised set of trust roots. ISD members can also decide whether to trust other ISDs and thus transparently define trust relationships between parts of the network. The SCION trust model therefore, differs from the one provided by other PKI architectures.</t>
        <t>The need for trust agility also means that SCION does not by design provide IP prefix origin validation as provided by RPKI <xref target="RFC8210"/>. RPKI's trust model is currently reliant on the trust roots provided by the five Regional Internet Registries, and therefore outside of the governance of an ISD.</t>
      </section>
      <section anchor="trust-relations-within-an-isolation-domain">
        <name>Trust Relations within an Isolation Domain</name>
        <t>As previously mentioned, the Control Plane PKI is organized at an ISD level whereby each ISD can independently specify its own Trust Root Configuration (TRC) and build its own verification chain. Each TRC consists of a collection of signed root certificates, which are used to sign CA certificates, which are in turn used to sign AS certificates. The TRC also includes ISD policies that specify, for example, the TRC's usage, validity, and future updates. The so-called <strong>base TRC</strong> constitutes the ISD's trust anchor which is signed during a signing ceremony by the voting ASes and then distributed throughout the ISD.</t>
        <section anchor="trust-reset">
          <name>Updates and Trust Resets</name>
          <t>There are two types of TRC updates: regular and sensitive. A <strong>regular TRC update</strong> is a periodic re-issuance of the TRC where the entities and policies listed in the TRC remain unchanged, whereas a <strong>sensitive TRC update</strong> is an update that modifies critical aspects of the TRC, such as the set of core ASes. In both cases the base TRC remains unchanged.</t>
          <t>If the ISD's TRC has been compromised, it is necessary for an ISD to re-establish the trust root. This is possible with a process called <strong>trust reset</strong> (if permitted by the ISD's trust policy). In this case, a new base TRC is created.</t>
        </section>
        <section anchor="substitutes-to-revocation">
          <name>Substitutes to Certificate Revocation</name>
          <t>The Control Plane PKI does not explicitly support certificate revocation. Instead it relies on the two mechanisms described above and on short-lived certificates. This approach constitutes an attractive alternative to a revocation system for the following reasons:</t>
          <ul spacing="normal">
            <li>
              <t>Both short-lived certificates and revocation lists must be signed by a CA. Instead of periodically signing a new revocation list, the CA can simply re-issue all the non-revoked certificates. Although the overhead of signing multiple certificates is greater than that of signing a single revocation list, the overall complexity of the system is reduced. In the Control Plane PKI the number of certificates that each CA must renew is manageable as it is limited to at most the number of ASes within an ISD.</t>
            </li>
            <li>
              <t>Even with a revocation system, a compromised key cannot be instantaneously revoked. Through their validity period, both short-lived certificates and revocation lists implicitly define an attack window (i.e. a period during which an attacker who managed to compromise a key could use it before it becomes invalid). In both cases, the CA must consider a tradeoff between efficiency and security when picking this validity period.</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="overview-of-certificates-keys-and-roles">
        <name>Overview of Certificates, Keys, and Roles</name>
        <t>The base TRC constitutes the root of trust within an ISD. <xref target="_figure-1"/> provides a view of the trust chain within an ISD, based on its TRC. For detailed descriptions, please refer to <xref target="cert-specs"/> and <xref target="trc-specification"/>.</t>
        <figure anchor="_figure-1">
          <name>Chain of trust within an ISD</name>
          <artwork><![CDATA[
                                    TRC 2

               +--------------------------------------+
               |+------------------------------------+|
               ||- Version       - Core ASes         ||
+--------+     ||- ID            - Description       ||    +--------+
| TRC 1  |     ||- Validity      - No Trust Reset    ||    | TRC 3  |
| (Base  |---->||- Grace Period  - Voting Quorum     ||--->|        |
|  TRC)  |     ||- ...                               ||    |        |
+--------+     |+------------------------------------+|    +--------+
               |+----------------+  +----------------+|
               || Regular Voting |  |Sensitive Voting||
               ||  Certificate   |  |  Certificate   ||
               |+----------------+  +----------------+|
               |+----------------+  +----------------+|
               ||     Votes      |  |   Signatures   ||
               |+----------------+  +----------------+|
               |+------------------------------------+|
               ||        CP Root Certificates        ||
               |+----------+-------------+-----------+|
               |           |             |            |
               +-----------+-------------+------------+
                           |             |
                           |             |
                           v             v
                 +-----------+         +-----------+
                 |   CP CA   |         |   CP CA   |
                 |Certificate|         |Certificate|
                 +-+-------+-+         +-----+-----+
                   |       |                 |
                   |       |                 |
                   v       v                 v
          +-----------+ +-----------+      +-----------+
          |   CP AS   | |   CP AS   |      |   CP AS   |
          |Certificate| |Certificate|      |Certificate|
          +-----------+ +-----------+      +-----------+
]]></artwork>
        </figure>
        <t>All certificates used in the Control plane PKI are in X.509 v3 format <xref target="RFC5280"/> and additionally the TRC contains self-signed certificates instead of plain public keys. Self-signed certificates have the following advantages over plain public keys: (1) They make the binding between name and public key explicit; and (2) the binding is signed to prove possession of the corresponding private key.</t>
        <t>All ASes in SCION have the task to sign and verify control plane messages. However, certain ASes have additional roles:</t>
        <ul spacing="normal">
          <li>
            <t><strong>Core ASes</strong>: Core ASes are a distinct set of ASes in the SCION Control Plane. For each ISD, the core ASes are listed in the TRC. Each core AS in an ISD has links to other core ASes (in the same or in different ISDs).</t>
          </li>
          <li>
            <t><strong>Certification authorities (CAs)</strong>: CAs are responsible for issuing AS certificates to other ASes and/or themselves.</t>
          </li>
          <li>
            <t><strong>Voting ASes</strong>: Only certain ASes within an ISD may sign TRC updates. The process of appending a signature to a new TRC is called "casting a vote", and the designated ASes that hold the private keys to sign a TRC update are "voting ASes".</t>
          </li>
          <li>
            <t><strong>Authoritative ASes</strong>: Authoritative ASes are those ASes in an ISD that always have the latest TRCs of the ISD. They start the announcement of a TRC update.</t>
          </li>
        </ul>
      </section>
      <section anchor="trust-as-a-function">
        <name>Trust as a Function</name>
        <t>The Control Plane PKI can be seen as a function that transforms potential distrust among different parties into a mutually accepted trust contract including a trust update and reset policy as well as certificates used for authentication procedures in SCION's Control Plane.</t>
        <t>For the function to work, it is not necessary that the ASes of the ISD all trust each other. However, all ASes <bcp14>MUST</bcp14> trust the ISD's core ASes, authoritative ASes, voting ASes, as well as its CA(s). These trusted parties negotiate the ISD trust contract in a "bootstrapping of trust" ceremony, where cryptographic material is exchanged and the ISD's trust anchor (the initial Trust Root Configuration) is created and signed.</t>
        <section anchor="input">
          <name>Input</name>
          <t>Prior to the ceremony, the trusted parties <bcp14>MUST</bcp14> decide about the validity period of the TRC as well as the number of votes required to update a TRC. They <bcp14>MUST</bcp14> also bring the required keys and certificates, the so-called root and voting keys/certificates.</t>
          <t>During the ceremony, the trusted parties decide about the number of the ISD. This <bcp14>MUST</bcp14> be an integer in the inclusive range between 64 and 4094. The next table shows the current allocation of ISD numbers in SCION:</t>
          <table anchor="_table-1">
            <name>ISD Number Allocations</name>
            <thead>
              <tr>
                <th align="left">ISD</th>
                <th align="left">Description</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">0</td>
                <td align="left">The wildcard ISD.</td>
              </tr>
              <tr>
                <td align="left">1 - 15</td>
                <td align="left">Reserved for documentation and sample code (analogous to <xref target="RFC5398"/>.</td>
              </tr>
              <tr>
                <td align="left">16 - 63</td>
                <td align="left">Private use (analogous to <xref target="RFC6996"/>). Can be used for testing and private deployments.</td>
              </tr>
              <tr>
                <td align="left">64 - 4094</td>
                <td align="left">Public ISDs. Should be allocated in ascending order, without gaps and "vanity" numbers.</td>
              </tr>
              <tr>
                <td align="left">4095 - 65535</td>
                <td align="left">Reserved for future use.</td>
              </tr>
            </tbody>
          </table>
        </section>
        <section anchor="output">
          <name>Output</name>
          <t>The output of the bootstrapping of trust ceremony, or the trust "function", are the ISD's initial Trust Root Configuration as well as mutually trusted and accepted CA and AS certificates - the latter are used to verify control plane messages. Together with the ISD's control plane root certificates, the CA and AS certificates build the ISD's trust and verification chain.</t>
        </section>
      </section>
    </section>
    <section anchor="cert-specs">
      <name>Certificate Specification</name>
      <t>This section provides a detailed specification of all certificates used by the Control Plane PKI.</t>
      <section anchor="overview">
        <name>SCION Control Plane PKI Keys and Certificates - Overview</name>
        <t>There are three types of Control Plane (CP) certificates: root certificates, CA certificates, and AS certificates. Together, they build a chain of trust that is anchored in the Trust Root Configuration (TRC) file of the respective Isolation Domain (ISD). Additionally, there are regular and sensitive voting certificates which define the keys to cast votes in a regular or sensitive TRC update.</t>
        <t>All certificates in the Control Plane PKI are in X.509 v3 format <xref target="RFC5280"/>.</t>
        <section anchor="trust-hierarchy">
          <name>Trust Hierarchy</name>
          <t>The trust is anchored in the TRC for each ISD. The trust root is axiomatic: All trust derived from this anchor relies on all parties transitively trusting the TRC.</t>
          <t>The trust hierarchy looks like this:</t>
          <artwork><![CDATA[
TRC
── Regular Voting Certificates
     └── TRC (next version, regular update)
── Sensitive Voting Certificates
     └── TRC (next version, sensitive update)
── CP Root Certificates
     └── CP CA Certificates
          └── CP AS Certificates
]]></artwork>
        </section>
        <section anchor="cp-root-cert">
          <name>Control Plane Root Certificate</name>
          <t>The private key of the Control Plane root certificate is used to sign Control Plane CA certificates. Consequently, the public key of the Control Plane Root certificate is used to verify Control Plane CA certificates, i.e. root certificates determine which ASes act as a CA in an ISD.</t>
          <t>In X.509 terms, Control Plane root certificates are <em>self-signed</em> CA certificates. That is, issuer and subject of the certificate are the same entity, and the public key in the root certificate can be used to verify the root certificate's signature. The public key of the Control Plane root certificate and proof of ownership of the private key are embedded in the TRC of an ISD, via the self-signed Control Plane root certificate. This facilitates the bootstrapping of trust within an ISD, and marks the Control Plane root certificates as the starting point of an ISD's certificate verification path.</t>
          <t>The <bcp14>RECOMMENDED</bcp14> <strong>maximum validity period</strong> of a Control Plane root certificate is 1 year.</t>
          <t><strong>Note</strong>: The TRC of each ISD contains a trusted set of Control Plane root certificates, and this set builds the root of each ISD's verification path. For more information on the selection of this trusted set of root certificates, see <xref target="trc-specification"/>.</t>
        </section>
        <section anchor="control-plane-ca-certificate">
          <name>Control Plane CA Certificate</name>
          <t>The private key of the Control Plane CA is used to sign Control Plane AS certificates. Consequently, Control Plane CA certificates holding the public key of the Control Plane CA are used to verify Control Plane AS certificates.</t>
          <t>The public key needed to verify the CA certificate is in a Control Plane root certificate. CA certificates do not bundle the root certificate needed to verify them. In order to verify a CA certificate, a pool of root certificates must first be extracted from one or more active TRCs (as described in <xref target="signing-verifying-cp-messages"/>).</t>
          <t>The <bcp14>RECOMMENDED</bcp14> <strong>maximum validity period</strong> of a Control Plane CA certificate is 11 days.</t>
        </section>
        <section anchor="control-plane-as-certificate">
          <name>Control Plane AS Certificate</name>
          <t>SCION ASes sign control plane messages, such as Path Construction Beacons, with their AS private key. Consequently, Control Plane AS certificates holding the corresponding AS public key are required to verify control plane messages.</t>
          <t>In X.509 terms, Control Plane AS certificates are end-entity certificates. That is, they cannot be used to verify other certificates.</t>
          <t>The <bcp14>RECOMMENDED</bcp14> <strong>maximum validity period</strong> of a CP AS certificate is 3 days.</t>
        </section>
        <section anchor="cp-voting-cert">
          <name>Voting Certificates</name>
          <t>There are two types of voting certificates: the (1) regular voting certificates and the (2) sensitive voting certificates. They contain the public keys associated with the private keys that <bcp14>MAY</bcp14> cast votes in the TRC update process. Voting certificates are X.509-style certificates.</t>
          <t>Regular and sensitive voting certificates are used to verify regular and sensitive TRC updates, respectively, and are embedded in the TRC.</t>
          <section anchor="regular-voting-certificate">
            <name>Regular Voting Certificate</name>
            <t>Regular voting certificates state which keys <bcp14>MAY</bcp14> cast votes in a regular update. In X.509 terms, regular voting certificates are self-signed end-entity certificates. This means that the issuer and subject of a regular voting certificate are the same entity, and the public key within the certificate can be used to verify the certificate's signature. However, a regular voting certificate cannot be used to verify other certificates.</t>
            <t>The <bcp14>RECOMMENDED</bcp14> <strong>maximum validity period</strong> of a regular voting certificate is 1 year.</t>
          </section>
          <section anchor="sensitive-voting-certificate">
            <name>Sensitive Voting Certificate</name>
            <t>Sensitive voting certificates specify which keys <bcp14>MAY</bcp14> cast votes in a sensitive update. In X.509 terms, sensitive voting certificates are self-signed end-entity certificates. This means that the issuer and subject of a sensitive voting certificate are the same entity, and the public key within the certificate can be used to verify the certificate's signature. However, a sensitive voting certificate cannot be used to verify other certificates.</t>
            <t>The <bcp14>RECOMMENDED</bcp14> <strong>maximum validity period</strong> of a sensitive voting certificate is 5 years.</t>
            <t><strong>Note</strong>:</t>
            <ul empty="true">
              <li>
                <t>Both SCION Control Plane root certificates and Control Plane CA certificates are in fact CA certificates. That is, they can both be used to verify other certificates.</t>
                <t>One important difference between both certificate types lies in their validity period: A SCION Control Plane root certificate has a <bcp14>RECOMMENDED</bcp14> maximum validity period of one year, whereas the <bcp14>RECOMMENDED</bcp14> maximum validity period of a SCION Control Plane CA certificate is 11 days. This is because a root certificate is part of the TRC of an ISD, which itself also has a <bcp14>RECOMMENDED</bcp14> maximum validity period of one year (see Table 2 below). This ensures that the TRC need not be updated all the time and is thus relatively stable.</t>
                <t>The SCION root private key and public key/certificate are used to sign and verify the Control Plane CA certificates, respectively. The control plane CA certificates are explicitly NOT part of the TRC, for reasons of security. The Control Plane CA certificates are used to verify the Control Plane AS certificates, which in turn are used to verify control plane messages. Routing is made more secure if both the SCION Control Plane CA and AS certificates can be renewed on a very regular basis. If the control plane CA and AS certificates were part of the TRC, then the TRC would have to be updated constantly, which is undesirable.</t>
              </li>
            </ul>
          </section>
        </section>
        <section anchor="formal">
          <name>Certificates - Formal Overview</name>
          <t><xref target="_table-2"/> and <xref target="_table-3"/> below provide an overview of the different types of key pairs and certificates in the control plane PKI.</t>
          <table anchor="_table-2">
            <name>Key chain</name>
            <thead>
              <tr>
                <th align="left">Name</th>
                <th align="left">Notation (1)</th>
                <th align="left">Used to verify/sign</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">Sensitive voting key</td>
                <td align="left">K<sub>sens</sub></td>
                <td align="left">TRC updates (sensitive)</td>
              </tr>
              <tr>
                <td align="left">Regular voting key</td>
                <td align="left">K<sub>reg</sub></td>
                <td align="left">TRC updates (regular)</td>
              </tr>
              <tr>
                <td align="left">CP root key</td>
                <td align="left">K<sub>root</sub></td>
                <td align="left">CP CA certificates</td>
              </tr>
              <tr>
                <td align="left">CP CA key</td>
                <td align="left">K<sub>CA</sub></td>
                <td align="left">CP AS certificates</td>
              </tr>
              <tr>
                <td align="left">CP AS key</td>
                <td align="left">K<sub>AS</sub></td>
                <td align="left">CP messages, path segments</td>
              </tr>
            </tbody>
          </table>
          <t>(1)  K<sub>x</sub> = PK<sub>x</sub> + SK<sub>x</sub>, where x = certificate type, PK<sub>x</sub> = public key, and SK<sub>x</sub> = private key</t>
          <table anchor="_table-3">
            <name>Certificates</name>
            <thead>
              <tr>
                <th align="left">Name</th>
                <th align="left">Notation</th>
                <th align="left">Signed with</th>
                <th align="left">Contains</th>
                <th align="left">Validity (2)</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="left">TRC (trust root conf.)</td>
                <td align="left">TRC</td>
                <td align="left">SK<sub>sens</sub>, SK<sub>reg</sub> (1)</td>
                <td align="left">C<sub>root</sub>, C<sub>sens</sub>, C<sub>reg</sub> (1)</td>
                <td align="left">1 year</td>
              </tr>
              <tr>
                <td align="left">Sensitive voting cert.</td>
                <td align="left">C<sub>sens</sub></td>
                <td align="left">SK<sub>sens</sub></td>
                <td align="left">PK<sub>sens</sub></td>
                <td align="left">5 years</td>
              </tr>
              <tr>
                <td align="left">Regular voting cert.</td>
                <td align="left">C<sub>reg</sub></td>
                <td align="left">SK<sub>reg</sub></td>
                <td align="left">PK<sub>reg</sub></td>
                <td align="left">1 year</td>
              </tr>
              <tr>
                <td align="left">CP root certificate</td>
                <td align="left">C<sub>root</sub></td>
                <td align="left">SK<sub>root</sub></td>
                <td align="left">PK<sub>root</sub></td>
                <td align="left">1 year</td>
              </tr>
              <tr>
                <td align="left">CP CA certificate</td>
                <td align="left">C<sub>CA</sub></td>
                <td align="left">SK<sub>root</sub></td>
                <td align="left">PK<sub>CA</sub></td>
                <td align="left">11 days (3)</td>
              </tr>
              <tr>
                <td align="left">CP AS certificate</td>
                <td align="left">C<sub>AS</sub></td>
                <td align="left">SK<sub>CA</sub></td>
                <td align="left">PK<sub>AS</sub></td>
                <td align="left">3 days</td>
              </tr>
            </tbody>
          </table>
          <t>(1) Multiple signatures and certificates of each type <bcp14>MAY</bcp14> be included in a TRC.<br/>
(2) Recommended maximum validity period.<br/>
(3) A validity of 11 days with 4 days overlap between two CA certificates is <bcp14>RECOMMENDED</bcp14> to enable the best possible operational procedures when performing a CA certificate rollover.</t>
          <t><xref target="_figure-2"/> illustrates, at a high level, the relationship between a TRC and the five types of certificates.</t>
          <figure anchor="_figure-2">
            <name>TRC update chain and the different types of associated certificates. Arrows show how signatures are verified; in other words, they indicate that a public key contained in a certificate or TRC can be used to verify the authenticity of another item.</name>
            <artwork><![CDATA[
   +--------------------+     +--------------------+          +--------------+     +---------------+
   |       TRC 1        +---->|       TRC 2       -+------>╳  |       TRC 3  +---->|       TRC 4   |
   |  (base, initial)   |     |  (regular update)  |          | (base, trust |     | (sensitive    |
+--+--------------------+     +--------------------+------+   |     reset)   |     |     update)   |
|                                                         |   +--------------+     +---------------+
|                                                         |
+--------------------------------------------+        +---+----------------------------------------+
|             TRC 1 (base, initial)          |        |             TRC 2 (regular update)         |
|+------------------------------------------+|        |+------------------------------------------+|
||- Version       - Core ASes               ||        ||- Version       - Core ASes               ||
||- ID            - Description             ||        ||- ID            - Description             ||
||- Validity      - No Trust Reset          ||        ||- Validity      - No Trust Reset          ||
||- Grace Period  - Voting Quorum           ||        ||- Grace Period  - Voting Quorum           ||
||- ...                                     ||        ||- ...                                     ||
|+------------------------------------------+|        |+------------------------------------------+|
|+--------------------++--------------------+|        |+--------------------++--------------------+|
||Votes (cert.indices)||   Regular Voting   ||        ||Votes (cert.indices)||   Regular Voting   ||
||                    ||    Certificates    ||        ||                    ||    Certificates    ||
||    (empty)         ||                    ||        ||    (1),(2)...      ||                    ||
||                    ||+-----+ +-----+     ||        ||                    ||+-----+ +-----+     ||
||                    ||| (1) | | (2) |     ||        ||                    ||| (1) | | (2) |     ||
||                    |||C    | |C    | ... ||        ||                    |||C    | |C    | ... ||
||                    ||| reg | | reg |     ||        ||                    ||| reg | | reg |     ||
|+--------------------+|+--+--+ +--+--+     ||        |+--------------------+|+-----+ +-----+     ||
|+--------------------+|   |       |        ||        |+--------------------+|                    ||
||                    ||   |       +--------++-----+  ||                    ||                    ||
||                    ||   +----------------++-+   |  ||                    ||                    ||
||    Signatures      |+--------------------+| |   |  ||    Signatures      |+--------------------+|
||                    |+--------------------+| |   |  ||                    |+--------------------+|
||+------------------+|| Sensitive Voting   || |   |  ||+------------------+|| Sensitive Voting   ||
|||73 A9 4E AO 0D ...|||    Certificates    || |   +--+>|48 AE E4 80 DB ...|||    Certificates    ||
||+------------------+||+-----+ +-----+     || |      ||+------------------+||+-----+ +-----+     ||
||+------------------+||| (3) | | (4) |     || |      ||+------------------+||| (3) | | (4) |     ||
|||53 B7 7C 98 56 ...||||C    | |C    |     || +------+>|7E BC 75 98 25 ...||||C    | |C    |     ||
||+------------------+||| sens| | sens| ... ||        ||+------------------+||| sens| | sens| ... ||
||        ...         ||+-----+ +-----+     ||        ||        ...         ||+-----+ +-----+     ||
|+--------------------++--------------------+|        |+--------------------++--------------------+|
|+------------------------------------------+|        |+------------------------------------------+|
||          CP Root Certificates            ||        ||          CP Root Certificates            ||
||                                          ||        ||                                          ||
|| +-----+ +-----+ +-----+ +-----+          ||        || +-----+ +-----+ +-----+ +-----+          ||
|| | (5) | | (6) | | (7) | | (8) |          ||        || | (5) | | (6) | | (7) | | (8) |          ||
|| |C    | |C    | |C    | |C    |          ||        || |C    | |C    | |C    | |C    |          ||
|| | root| | root| | root| | root| .....    ||        || | root| | root| | root| | root| .....    ||
|| +-----+ +--+--+ +-----+ +--+--+          ||        || +-----+ +--+--+ +-----+ +--+--+          ||
|+------------+---------------+-------------+|        |+------------+---------------+-------------+|
+-------------+---------------+--------------+        +-------------+---------------+--------------+
              |               |                                     |               |
    +---------v-+           +-v---------+                 +---------v-+           +-v---------+
    |   CP CA   |           |   CP CA   |                 |   CP CA   |           |   CP CA   |
    |Certificate|           |Certificate|                 |Certificate|           |Certificate|
    +-----+-----+           +-----+-----+                 +-+-------+-+           +-----+-----+
          |                       |                         |       |                   |
          |                       |                         |       |                   |
          v                       v                         v       v                   v
    +-----------+           +-----------+          +-----------+ +-----------+        +-----------+
    |   CP AS   |           |   CP AS   |          |   CP AS   | |   CP AS   |        |   CP AS   |
    |Certificate|           |Certificate|          |Certificate| |Certificate|        |Certificate|
    +-----------+           +-----------+          +-----------+ +-----------+        +-----------+
]]></artwork>
          </figure>
        </section>
      </section>
      <section anchor="certificate-specification">
        <name>Certificate Specification</name>
        <t>Whilst the certificates used in the Control Plane PKI are X.509 v3 certificates, the SCION specification is more restrictive. This section defines these additional constraints and conditions in comparison to <xref target="RFC5280"/>.</t>
        <section anchor="basic-fields-scion-specific-constraints-and-conditions">
          <name>Basic Fields: SCION-Specific Constraints and Conditions</name>
          <t>The described fields of the Control Plane PKI certificates are relevant for each certificate regardless of the certificate type. For detailed descriptions of the full generic format of X.509 v3 certificates, see <xref target="RFC5280"/> and <xref target="X.509"/> clause 7.2.</t>
          <t><tt>TBSCertificate</tt> sequence: Contains information associated with the subject of the certificate and the CA that issued it. It includes the following fields:</t>
          <ul spacing="normal">
            <li>
              <t><tt>version</tt> field: Describes the version of the encoded certificate. It <bcp14>MUST</bcp14> be set to "v3" (as extensions are <bcp14>REQUIRED</bcp14> in SCION).</t>
            </li>
            <li>
              <t><tt>serialNumber</tt> field: A positive integer assigned by the CA to each certificate. It <bcp14>MUST</bcp14> be unique for each certificate issued by a given CA.</t>
            </li>
            <li>
              <t><tt>signature</tt> field: Contains the identifier for the algorithm used by the CA to sign the certificate.  </t>
              <ul spacing="normal">
                <li>
                  <t><strong>SCION constraints</strong>: Currently, SCION only supports the ECDSA signature algorithm. The details can be found at: <xref target="certsign"/>.</t>
                </li>
                <li>
                  <t><strong>Additional conditions and remarks</strong>: As a consequence, the <tt>parameters</tt> field in the <tt>AlgorithmIdentifier</tt> sequence <bcp14>MUST NOT</bcp14> be used.</t>
                </li>
              </ul>
            </li>
            <li>
              <t><tt>issuer</tt> field: Contains the distinguished name (DN) of the entity that has issued and signed the certificate (usually a CA).  </t>
              <ul spacing="normal">
                <li>
                  <t><strong>SCION constraints</strong>:      </t>
                  <ul spacing="normal">
                    <li>
                      <t>This field <bcp14>MUST</bcp14> be non-empty.</t>
                    </li>
                    <li>
                      <t>SCION implementations <bcp14>MUST</bcp14> ONLY use the “UTF8String” value type for all attributes (including the SCION-specific attribute <tt>ISD-AS number</tt>).</t>
                    </li>
                  </ul>
                </li>
                <li>
                  <t><strong>Additional conditions and remarks</strong>: All SCION implementations <bcp14>MUST</bcp14> support the additional SCION-specific attribute <tt>ISD-AS number</tt>. For details, see <xref target="issuer"/> and <xref target="isd-as-nr"/>.</t>
                </li>
              </ul>
            </li>
            <li>
              <t><tt>validity</tt> field: Defines the validity period of the certificate.  </t>
              <ul spacing="normal">
                <li>
                  <t><strong>SCION constraints</strong>: All certificates <bcp14>MUST</bcp14> have a well-defined expiration date. Certificates with a generalized time value are not valid and <bcp14>MUST</bcp14> be rejected.</t>
                </li>
                <li>
                  <t><strong>Additional conditions and remarks</strong>: SCION recommends a specific maximum validity period for each type of certificate. For details, see <xref target="formal"/>. SCION implementations <bcp14>SHOULD</bcp14> adopt these values.</t>
                </li>
              </ul>
            </li>
            <li>
              <t><tt>subject</tt> field: Defines the entity that owns the certificate.  </t>
              <ul spacing="normal">
                <li>
                  <t><strong>SCION constraints</strong>:      </t>
                  <ul spacing="normal">
                    <li>
                      <t>This field <bcp14>MUST</bcp14> be non-empty.</t>
                    </li>
                    <li>
                      <t>SCION implementations <bcp14>MUST</bcp14> ONLY use the “UTF8String” value type for all attributes (including the SCION-specific attribute <tt>ISD-AS number</tt>).</t>
                    </li>
                  </ul>
                </li>
                <li>
                  <t><strong>Additional conditions and remarks</strong>: The <tt>subject</tt> field is specified in the same way as the <tt>issuer</tt> field. For details, see <xref target="issuer"/> and <xref target="isd-as-nr"/>.</t>
                </li>
              </ul>
            </li>
            <li>
              <t><tt>subjectPublicKeyInfo</tt> field: Carries the public key of the certificate's subject (the entity that owns the certificate, as defined in the <tt>subject</tt> field). The <tt>subjectPublicKeyInfo</tt> field also identifies which algorithm to use with the key.  </t>
              <ul spacing="normal">
                <li>
                  <t><strong>SCION constraints</strong>: For constraints regarding the algorithm, see the <tt>signature</tt> field.</t>
                </li>
              </ul>
            </li>
            <li>
              <t><tt>issuerUniqueID</tt> field: it <bcp14>MUST NOT</bcp14> be used in SCION.</t>
            </li>
            <li>
              <t><tt>subjectUniqueID</tt> field: it <bcp14>MUST NOT</bcp14> be used in SCION.</t>
            </li>
            <li>
              <t><tt>extensions</tt> sequence: Defines the extensions of the certificate. For a description of all extensions used in SCION, see <xref target="exts"/>.</t>
            </li>
          </ul>
          <section anchor="certsign">
            <name><tt>signature</tt> Field - Additional Information</name>
            <t>For security reasons, SCION uses a custom list of acceptable signature algorithms which is specified in the <tt>signature</tt> field. The list currently only contains the ECDSA signature algorithm (defined in <xref target="X9.62"/>) although this may be extended in future.</t>
            <t>The Object Identifiers (OIDs) for ECDSA are defined as <tt>ecdsa-with-SHA256</tt>, <tt>ecdsa-with-SHA384</tt>, and <tt>ecdsa-with-SHA512</tt> in <xref target="RFC5758"/>.</t>
            <t><strong>Important:</strong> SCION implementations <bcp14>MUST</bcp14> reject cryptographic algorithms not found in this list.</t>
            <t>The only accepted curves for ECDSA are:</t>
            <ul spacing="normal">
              <li>
                <t>NIST P-256 (NISTFIPS186-4, section D.1.2.3) (named <tt>secp256r1</tt> in <xref target="RFC5480"/>)</t>
              </li>
              <li>
                <t>NIST P-384 (NISTFIPS186-4, section D.1.2.4) (named <tt>secp384r1</tt> in <xref target="RFC5480"/>)</t>
              </li>
              <li>
                <t>NIST P-521 (NISTFIPS186-4, section D.1.2.5) (named <tt>secp521r1</tt> in <xref target="RFC5480"/>)</t>
              </li>
            </ul>
            <t>The OIDs for the above curves are specified in section 2.1.1.1 of <xref target="RFC5480"/>.</t>
            <t>The appropriate hash size to use when producing a signature with an ECDSA key is:</t>
            <ul spacing="normal">
              <li>
                <t>ECDSA with SHA-256, for a P-256 signing key</t>
              </li>
              <li>
                <t>ECDSA with SHA-384, for a P-384 signing key</t>
              </li>
              <li>
                <t>ECDSA with SHA-512, for a P-521 signing key</t>
              </li>
            </ul>
            <t><strong>Important:</strong> SCION implementations <bcp14>MUST</bcp14> include support for P-256, P-384, and P-521.</t>
          </section>
          <section anchor="issuer">
            <name><tt>issuer</tt> Field - Additional Information</name>
            <t>The <tt>issuer</tt> field contains the distinguished name (DN) of the CA that created the certificate. <xref target="RFC5280"/>, section 4.1.2.4, describes the field's syntax and attributes. In addition to these attributes, SCION implementations <bcp14>MUST</bcp14> also support the SCION-specific attribute <tt>ISD-AS number</tt>. See <xref target="isd-as-nr"/>.</t>
            <section anchor="isd-as-nr">
              <name><tt>ISD-AS number</tt> Attribute</name>
              <t>The <tt>ISD-AS number</tt> attribute identifies the SCION ISD and AS. In the SCION open source implementation, the attribute type is <tt>id-at-ia</tt>, defined as:<br/>
                <tt>id-at-ia AttributeType ::= {id-scion id-cppki(1) id-at(2) 1}</tt></t>
              <t>where <tt>id-scion</tt> specifies the root SCION object identifier (OID).</t>
              <t><strong>Note</strong>: The root SCION object identifier (OID) for the SCION open-source implementation is the IANA Private Enterprise Number '55324':<br/>
                <tt>id-scion ::= OBJECT IDENTIFIER {1 3 6 1 4 1 55324}</tt></t>
              <t>The string representation of the <tt>ISD-AS number</tt> attribute <bcp14>MUST</bcp14> follow the text representation defined in <xref target="I-D.dekater-scion-controlplane"/>, section "Text Representation". The canonical string formatting of AS numbers in the AS range (0, 2<sup>32-1</sup>) <bcp14>MUST</bcp14> use the decimal form. Larger AS numbers, i.e., from 2<sup>32</sup> to 2<sup>48-1</sup>, <bcp14>MUST</bcp14> use a 16-bit, colon-separated, lower-case, hex encoding with leading zeros omitted: <tt>1:0:0</tt> to <tt>ffff:ffff:ffff</tt>.</t>
              <t>The <tt>ISD-AS number</tt> attribute <bcp14>MUST</bcp14> be present exactly once in the distinguished name of the certificate issuer or owner, specified in the <tt>issuer</tt> or <tt>subject</tt> field respectively. Implementations <bcp14>MUST NOT</bcp14> create nor successfully verify certificates whose <tt>issuer</tt> and <tt>subject</tt> fields do not include the ISD-AS number at all, or include it more than once.</t>
              <t><strong>Note</strong>: Voting certificates are not required to include the <tt>ISD-AS number</tt> attribute in their distinguished name.</t>
            </section>
          </section>
        </section>
        <section anchor="exts">
          <name>Extensions</name>
          <t><xref target="RFC5280"/>, section 4.2.1, defines the syntax of the <tt>Extensions</tt> sequence in a X.509 certificate. Descriptions of each standard certificate extension can be found in <xref target="RFC5280"/>, section 4.2.1. The corresponding clauses in <xref target="X.509"/> are clause 7.2 and clause 9, respectively.</t>
          <t>Currently, the following extensions are relevant for SCION:</t>
          <ul spacing="normal">
            <li>
              <t><tt>authorityKeyIdentifier</tt></t>
            </li>
            <li>
              <t><tt>subjectKeyIdentifier</tt></t>
            </li>
            <li>
              <t><tt>keyUsage</tt></t>
            </li>
            <li>
              <t><tt>extKeyUsage</tt></t>
            </li>
            <li>
              <t><tt>basicConstraints</tt></t>
            </li>
          </ul>
          <t>The following sections describe the SCION-specifics in regard to these extensions.</t>
          <section anchor="authoritykeyidentifier-extension">
            <name><tt>authorityKeyIdentifier</tt> Extension</name>
            <t>The <tt>authorityKeyIdentifier</tt> extension identifies the public key corresponding to the private key used to sign a certificate.</t>
            <t>For the syntax and definition of the <tt>authorityKeyIdentifier</tt> extension, see <xref target="RFC5280"/>, section 4.2.1.1, and <xref target="X.509"/>, clause 9.2.2.1.</t>
            <t>The <tt>authorityKeyIdentifier</tt> extension provides three attributes to specify the public key:</t>
            <ul spacing="normal">
              <li>
                <t><tt>keyIdentifier</tt></t>
              </li>
              <li>
                <t><tt>authorityCertIssuer</tt></t>
              </li>
              <li>
                <t><tt>authorityCertSerialNumber</tt></t>
              </li>
            </ul>
            <t>In SCION, using the <tt>keyIdentifier</tt> attribute is the preferred way to specify the <tt>authorityKeyIdentifier</tt> extension.</t>
            <t><strong>Important:</strong> SCION implementations <bcp14>MAY</bcp14> also support the use of the <tt>authorityCertIssuer</tt> and <tt>authorityCertSerialNumber</tt> attributes. However, if these attributes are set and support for them is missing, implementations <bcp14>SHOULD</bcp14> error out.</t>
            <t>This extension <bcp14>MUST</bcp14> always be non-critical. However, SCION implementations <bcp14>MUST</bcp14> error out if the extension is not present AND the certificate is not self-signed.</t>
          </section>
          <section anchor="subject-key-id-ext">
            <name><tt>subjectKeyIdentifier</tt> Extension</name>
            <t>The <tt>subjectKeyIdentifier</tt> extension identifies certificates that contain a particular public key. It can be used, for example, by control plane messages to identify which certificate to use for verification. The extension allows for overlapping control plane CA keys, for example during updates.</t>
            <t>For the syntax and definition of the <tt>subjectKeyIdentifier</tt> extension, see <xref target="RFC5280"/>, section 4.2.1.2, and <xref target="X.509"/>, clause 9.2.2.2.</t>
            <t>This extension <bcp14>MUST</bcp14> always be non-critical. However, SCION implementations <bcp14>MUST</bcp14> error out if the extension is not present.</t>
          </section>
          <section anchor="key-usage-ext">
            <name><tt>keyUsage</tt> Extension</name>
            <t>The <tt>keyUsage</tt> extension identifies the intended usage of the public key in the corresponding certificate. For the syntax and definition of the <tt>keyUsage</tt> extension, see <xref target="RFC5280"/>, section 4.2.1.3, and <xref target="X.509"/>, clause 9.2.2.3.</t>
            <t>The attributes of the <tt>keyUsage</tt> extension define possible ways of using the public key. The attributes have the following meaning in SCION:</t>
            <ul spacing="normal">
              <li>
                <t><tt>digitalSignature</tt>: The public key can be used to verify the digital signature of a control plane payload.</t>
              </li>
              <li>
                <t><tt>contentCommitment</tt>: Not used.</t>
              </li>
              <li>
                <t><tt>keyEncipherment</tt>: Not used.</t>
              </li>
              <li>
                <t><tt>dataEncipherment</tt>: Not used.</t>
              </li>
              <li>
                <t><tt>keyAgreement</tt>: Not used.</t>
              </li>
              <li>
                <t><tt>keyCertSign</tt>: The public key can be used to verify the CA signature on a control plane certificate.</t>
              </li>
              <li>
                <t><tt>cRLSign</tt>: Not used.</t>
              </li>
              <li>
                <t><tt>encipherOnly</tt>: Not used.</t>
              </li>
              <li>
                <t><tt>decipherOnly</tt>: Not used.</t>
              </li>
            </ul>
            <t><strong>Important:</strong> If a certificate’s public key is used to verify the signature of a control plane payload (<tt>digitalSignature</tt> attribute), it <bcp14>MUST</bcp14> be possible to trace back the private key used to sign the certificate. This is done by referencing the ISD-AS and the subject key identifier (via the <tt>subjectKeyIdentifier</tt> extension). For more information about the <tt>subjectKeyIdentifier</tt> extension, see <xref target="subject-key-id-ext"/>.</t>
            <t>If present, the <tt>keyUsage</tt> extension <bcp14>SHOULD</bcp14> be marked as "critical". That is, the <tt>critical</tt> Boolean attribute of this extension <bcp14>MUST</bcp14> be set to TRUE (the default is FALSE).</t>
            <t><strong>Note</strong>: If a certificate extension is marked "critical", the public key in the certificate <bcp14>SHOULD</bcp14> only be used for the purpose set in the critical extension.</t>
            <t>Each Control Plane PKI certificate type uses the public key differently, and consequently also specifies the attributes of the <tt>keyUsage</tt> extension differently. The next table shows the specifications per certificate type.</t>
            <table anchor="_table-4">
              <name>keyUsage extension - Specifications per certificate type</name>
              <thead>
                <tr>
                  <th align="left">Certificate Type</th>
                  <th align="left">Root</th>
                  <th align="left">CA</th>
                  <th align="left">AS</th>
                  <th align="left">Voting (regular and sensitive)</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="left">
                    <em>Attribute:</em></td>
                  <td align="left"> </td>
                  <td align="left"> </td>
                  <td align="left"> </td>
                  <td align="left"> </td>
                </tr>
                <tr>
                  <td align="left">
                    <tt>keyUsage</tt> extension itself</td>
                  <td align="left">
                    <bcp14>MUST</bcp14> be present</td>
                  <td align="left">
                    <bcp14>MUST</bcp14> be present</td>
                  <td align="left">
                    <bcp14>MUST</bcp14> be present</td>
                  <td align="left">
                    <bcp14>MAY</bcp14> be present (but is not required)</td>
                </tr>
                <tr>
                  <td align="left">
                    <tt>digitalSignature</tt></td>
                  <td align="left">
                    <bcp14>MUST NOT</bcp14> be set (1)</td>
                  <td align="left">
                    <bcp14>MUST NOT</bcp14> be set (2)</td>
                  <td align="left">
                    <bcp14>MUST</bcp14> be set</td>
                  <td align="left">If the extension is present, the <tt>digitalSignature</tt> attribute <bcp14>MUST NOT</bcp14> be set</td>
                </tr>
                <tr>
                  <td align="left">
                    <tt>keyCertSign</tt></td>
                  <td align="left">
                    <bcp14>MUST</bcp14> be set</td>
                  <td align="left">
                    <bcp14>MUST</bcp14> be set</td>
                  <td align="left">
                    <bcp14>MUST NOT</bcp14> be set</td>
                  <td align="left">If the extension is present, the <tt>keyCertSign</tt> attribute <bcp14>MUST NOT</bcp14> be set</td>
                </tr>
              </tbody>
            </table>
            <t>(1) The root certificate <bcp14>SHOULD NOT</bcp14> be used to verify control plane messages.<br/>
(2) The CA certificate <bcp14>SHOULD NOT</bcp14> be used to verify control plane messages.</t>
          </section>
          <section anchor="ext-key-usage-ext">
            <name><tt>extKeyUsage</tt> Extension</name>
            <t>The <tt>extKeyUsage</tt> extension specifies additional usages of the public key in the certificate. For the syntax and definition of the <tt>extKeyUsage</tt> extension, see <xref target="X.509"/>, clause 9.2.2.4.</t>
            <t>SCION uses the following attributes of the Extended Key Usage extension, as defined in Section 4.2.1.12 of <xref target="RFC5280"/>:</t>
            <ul spacing="normal">
              <li>
                <t><tt>id-kp-serverAuth</tt>: If set, the public key can be used for SCION Control Plane server authentication.</t>
              </li>
              <li>
                <t><tt>id-kp-clientAuth</tt>: If set, the public key can be used for SCION Control Plane client authentication.</t>
              </li>
              <li>
                <t><tt>id-kp-timeStamping</tt>: If set, the public key can be used for the verification of timestamps.</t>
              </li>
            </ul>
            <t>Additionally, the Extended Key Usage extension sequence <bcp14>MAY</bcp14> include the SCION-specific attributes <tt>id-kp-root</tt>, <tt>id-kp-regular</tt>, and <tt>id-kp-sensitive</tt>. These attributes are used in the TRC setup, to distinguish root certificates, regular voting certificates, and sensitive voting certificates from each other. For more information, see <xref target="cert"/>.</t>
            <t>The specifications of the <tt>extKeyUsage</tt> extension differ per SCION Control Plane PKI certificate type. The next table provides an overview of the specifications per certificate type.</t>
            <table anchor="_table-5">
              <name>extKeyUsage extension - Specifications per certificate type</name>
              <thead>
                <tr>
                  <th align="left">Certificate Type</th>
                  <th align="left">Root</th>
                  <th align="left">CA</th>
                  <th align="left">AS</th>
                  <th align="left">Voting (regular and sensitive)</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="left">
                    <em>Attribute:</em></td>
                  <td align="left"> </td>
                  <td align="left"> </td>
                  <td align="left"> </td>
                  <td align="left"> </td>
                </tr>
                <tr>
                  <td align="left">
                    <tt>extKeyUsage</tt> extension itself</td>
                  <td align="left">
                    <bcp14>MUST</bcp14> be present</td>
                  <td align="left">
                    <bcp14>MAY</bcp14> be present (not required)</td>
                  <td align="left">
                    <bcp14>MUST</bcp14> be present</td>
                  <td align="left">
                    <bcp14>MUST</bcp14> be present</td>
                </tr>
                <tr>
                  <td align="left">
                    <tt>id-kp-serverAuth</tt></td>
                  <td align="left">
                    <bcp14>MUST NOT</bcp14> be included</td>
                  <td align="left">
                    <bcp14>MUST NOT</bcp14> be included</td>
                  <td align="left">
                    <bcp14>MUST</bcp14> be included, if the certificate is used on the server-side of a control plane TLS session.</td>
                  <td align="left">
                    <bcp14>MUST NOT</bcp14> be included</td>
                </tr>
                <tr>
                  <td align="left">
                    <tt>id-kp-clientAuth</tt></td>
                  <td align="left">
                    <bcp14>MUST NOT</bcp14> be included</td>
                  <td align="left">
                    <bcp14>MUST NOT</bcp14> be included</td>
                  <td align="left">
                    <bcp14>MUST</bcp14> be included, if the certificate is used on the client-side of a control plane TLS session.</td>
                  <td align="left">
                    <bcp14>MUST NOT</bcp14> be included</td>
                </tr>
                <tr>
                  <td align="left">
                    <tt>id-kp-timeStamping</tt></td>
                  <td align="left">
                    <bcp14>MUST</bcp14> be included</td>
                  <td align="left"> </td>
                  <td align="left">
                    <bcp14>MUST</bcp14> be included</td>
                  <td align="left">
                    <bcp14>MUST</bcp14> be included</td>
                </tr>
                <tr>
                  <td align="left">SCION-specific</td>
                  <td align="left">
                    <tt>id-kp-root</tt> <bcp14>MUST</bcp14> be included. For details, see <xref target="specatt"/></td>
                  <td align="left"> </td>
                  <td align="left"> </td>
                  <td align="left">Regular voting cert: <tt>id-kp-regular</tt> <bcp14>MUST</bcp14> be included. For details, see <xref target="specatt"/><br/> Sensitive voting cert: <tt>id-kp-sensitive</tt> <bcp14>MUST</bcp14> be included. For details, see <xref target="specatt"/></td>
                </tr>
              </tbody>
            </table>
            <section anchor="specatt">
              <name>SCION-Specific Attributes</name>
              <t>The <tt>id-kp-root</tt>, <tt>id-kp-regular</tt>, and <tt>id-kp-sensitive</tt> attributes <bcp14>MUST</bcp14> be specified as follows:</t>
              <ul spacing="normal">
                <li>
                  <t>Root certificate:<br/> <tt>id-kp-root AttributeType ::= {id-scion id-cppki(1) id-kp(3) 3}</tt></t>
                </li>
                <li>
                  <t>Regular voting certificate:<br/> <tt>id-kp-regular AttributeType ::= {id-scion id-cppki(1) id-kp(3) 2}</tt></t>
                </li>
                <li>
                  <t>Sensitive voting certificate:<br/> <tt>id-kp-sensitive AttributeType ::= {id-scion id-cppki(1) id-kp(3) 1}</tt></t>
                </li>
              </ul>
              <t>where <tt>id-scion</tt> specifies the root SCION object identifier (OID).</t>
              <t><strong>Note</strong>: The root SCION object identifier (OID) for the SCION open-source implementation is the IANA Private Enterprise Number '55324':<br/>
                <tt>id-scion ::= OBJECT IDENTIFIER {1 3 6 1 4 1 55324}</tt></t>
            </section>
          </section>
          <section anchor="basic-constr-ext">
            <name><tt>basicConstraints</tt> Extension</name>
            <t>The <tt>basicConstraints</tt> extension specifies whether the certificate subject may act as a CA. For the syntax and definition of the <tt>basicConstraints</tt> extension, see <xref target="X.509"/>, clause 9.4.2.1.</t>
            <t>The <tt>basicConstraints</tt> extension includes the following attributes relevant for SCION:</t>
            <ul spacing="normal">
              <li>
                <t><tt>cA</tt> attribute: Specifies whether the certificate subject may act as a CA. If yes, this attribute <bcp14>MUST</bcp14> be set to TRUE.</t>
              </li>
              <li>
                <t><tt>pathLenConstraint</tt> attribute: This attribute is only relevant if the <tt>cA</tt> attribute is set to TRUE. It specifies the maximum number of CA certificates that may follow this CA certificate in the certification chain. Value "0" means that this CA may only issue end-entity certificates, but no CA certificates. If the attribute is not set, there is no limit to the maximum length of the certification path.</t>
              </li>
            </ul>
            <t>The settings of the <tt>basicConstraints</tt> extension differ for each SCION Control Plane PKI certificate type. The next table shows the specifications per certificate type.</t>
            <table anchor="_table-6">
              <name>basicConstraints extension - Specifications per certificate type</name>
              <thead>
                <tr>
                  <th align="left">Certificate Type</th>
                  <th align="left">Root</th>
                  <th align="left">CA</th>
                  <th align="left">AS</th>
                  <th align="left">Voting (regular and sensitive)</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="left">
                    <em>Attribute:</em></td>
                  <td align="left"> </td>
                  <td align="left"> </td>
                  <td align="left"> </td>
                  <td align="left"> </td>
                </tr>
                <tr>
                  <td align="left">
                    <tt>basicConstraints</tt> extension itself</td>
                  <td align="left">
                    <bcp14>MUST</bcp14> be present</td>
                  <td align="left">
                    <bcp14>MUST</bcp14> be present</td>
                  <td align="left">
                    <bcp14>SHOULD NOT</bcp14> be present</td>
                  <td align="left">
                    <bcp14>SHOULD NOT</bcp14> be present</td>
                </tr>
                <tr>
                  <td align="left">
                    <tt>cA</tt></td>
                  <td align="left">
                    <bcp14>MUST</bcp14> be set to TRUE</td>
                  <td align="left">
                    <bcp14>MUST</bcp14> be set to TRUE</td>
                  <td align="left">If the extension is present, this attribute <bcp14>MUST</bcp14> be set to FALSE</td>
                  <td align="left">If the extension is present, this attribute <bcp14>MUST</bcp14> be set to FALSE</td>
                </tr>
                <tr>
                  <td align="left">
                    <tt>pathLenConstraint</tt></td>
                  <td align="left">
                    <bcp14>SHOULD</bcp14> be set to "1", <bcp14>MUST</bcp14> be marked as "critical"</td>
                  <td align="left">
                    <bcp14>SHOULD</bcp14> be set to "0" (1), <bcp14>MUST</bcp14> be marked as "critical"</td>
                  <td align="left">If the extension is present, this attribute <bcp14>MUST</bcp14> be absent.</td>
                  <td align="left">If the extension is present, this attribute <bcp14>MUST</bcp14> be absent.</td>
                </tr>
              </tbody>
            </table>
            <t>(1) Control Plane CAs can only issue end-entity certificates.</t>
          </section>
        </section>
      </section>
    </section>
    <section anchor="trc-specification">
      <name>Trust Root Configuration Specification</name>
      <t>This section provides an in-depth specification of the Trust Root Configuration (TRC) file (see <xref target="trc-spec"/>). The TRC contains policy information about an ISD and acts as a distribution mechanism for the trust anchors of that ISD. It enables the securing of control plane interactions and is thus an integral part of the SCION infrastructure.</t>
      <t>The initial TRC of an ISD is signed during a signing ceremony and then distributed throughout the ISD. This signing ceremony follows specific rules; <xref target="trc-ceremony"/> describes these rules.</t>
      <section anchor="trc-spec">
        <name>TRC Specification</name>
        <t>The TRC is a signed collection of <xref target="X.509"/> v3 certificates. Additionally, the TRC contains ISD-specific policies encoded in a Cryptographic Message Syntax (CMS) <xref target="RFC5652"/> envelope.</t>
        <t>The TRC's certificates collection consists of a set of control plane root certificates which build the root of the certification chain for the AS certificates in an ISD. The other certificates in the TRC are solely used for signing the next TRC, a process called "voting". The verification of a new TRC thus depends on the policies and voting certificates defined in the previous TRC.</t>
        <t>This section specifies the TRC including format definitions and dpayload fields. The section uses the ITU-T <xref target="X.680"/> syntax.</t>
        <section anchor="trc-states">
          <name> TRC Types and States</name>
          <t>The following types of TRCs exist:</t>
          <ul spacing="normal">
            <li>
              <t>Initial: The very first TRC of an ISD is the initial TRC of that ISD. It is a special case of the base TRC, where the number of the ISD is specified.</t>
            </li>
            <li>
              <t>Base: A base TRC is either the initial TRC, or the first TRC after a trust reset (see <xref target="trust-reset"/>). Trust for a base TRC cannot be inferred by verifying a TRC update; base TRCs are trusted axiomatically, similarly to how root CA certificates are trusted by clients in the Web PKI.</t>
            </li>
            <li>
              <t>Update: All non-base TRCs are updated TRCs. They are the product of either a regular or a sensitive update.</t>
            </li>
          </ul>
          <t>A TRC can have the following states:</t>
          <ul spacing="normal">
            <li>
              <t>Valid: The validity period of a TRC is defined in the TRC itself, in the <tt>validity</tt> field (see <xref target="validity"/>). A TRC is considered valid if the current time falls within its validity period.</t>
            </li>
            <li>
              <t>Active: An active TRC is a valid TRC that can be used for verifying certificate signatures. This is either the latest TRC or the predecessor TRC, if it is still in its grace period (as defined in the <tt>gracePeriod</tt> field of the new TRC, see <xref target="grace"/>). No more than two TRCs can be active at the same time for any ISD.</t>
            </li>
          </ul>
          <t><xref target="_figure-3"/> shows the content of both a base/initial TRC and the first regularly-updated TRC based on the base TRC. All elements of the shown TRCs are specified in detail in the following subsections.</t>
          <figure anchor="_figure-3">
            <name>The TRC on the left-hand side is the initial base TRC. The TRC on the right is the product of the first regular update of the base TRC.</name>
            <artwork><![CDATA[
+--------------------------------------------+        +--------------------------------------------+
|             TRC 1 (base, initial)          |        |             TRC 2 (regular update)         |
|+------------------------------------------+|        |+------------------------------------------+|
||- Version       - Core ASes               ||        ||- Version       - Core ASes               ||
||- ID            - Description             ||        ||- ID            - Description             ||
||- Validity      - No Trust Reset          ||        ||- Validity      - No Trust Reset          ||
||- Grace Period  - Voting Quorum           ||        ||- Grace Period  - Voting Quorum           ||
||- ...                                     ||        ||- ...                                     ||
|+------------------------------------------+|        |+------------------------------------------+|
|+--------------------++--------------------+|        |+--------------------++--------------------+|
||Votes (cert.indices)||   Regular Voting   ||        ||Votes (cert.indices)||   Regular Voting   ||
||                    ||    Certificates    ||        ||                    ||    Certificates    ||
||    (empty)         ||                    ||        ||    (1),(2)...      ||                    ||
||                    ||+-----+ +-----+     ||        ||                    ||+-----+ +-----+     ||
||                    ||| (1) | | (2) |     ||        ||                    ||| (1) | | (2) |     ||
||                    |||C    | |C    | ... ||        ||                    |||C    | |C    | ... ||
||                    ||| reg | | reg |     ||        ||                    ||| reg | | reg |     ||
|+--------------------+|+--+--+ +--+--+     ||        |+--------------------+|+-----+ +-----+     ||
|+--------------------+|   |       |        ||        |+--------------------+|                    ||
||                    ||   |       +--------++-----+  ||                    ||                    ||
||                    ||   +----------------++-+   |  ||                    ||                    ||
||    Signatures      |+--------------------+| |   |  ||    Signatures      |+--------------------+|
||                    |+--------------------+| |   |  ||                    |+--------------------+|
||+------------------+|| Sensitive Voting   || |   |  ||+------------------+|| Sensitive Voting   ||
|||73 A9 4E AO 0D ...|||    Certificates    || |   +--+>|48 AE E4 80 DB ...|||    Certificates    ||
||+------------------+||+-----+ +-----+     || |      ||+------------------+||+-----+ +-----+     ||
||+------------------+||| (3) | | (4) |     || |      ||+------------------+||| (3) | | (4) |     ||
|||53 B7 7C 98 56 ...||||C    | |C    |     || +------+>|7E BC 75 98 25 ...||||C    | |C    |     ||
||+------------------+||| sens| | sens| ... ||        ||+------------------+||| sens| | sens| ... ||
||        ...         ||+-----+ +-----+     ||        ||        ...         ||+-----+ +-----+     ||
|+--------------------++--------------------+|        |+--------------------++--------------------+|
|+------------------------------------------+|        |+------------------------------------------+|
||          CP Root Certificates            ||        ||          CP Root Certificates            ||
||                                          ||        ||                                          ||
|| +-----+ +-----+ +-----+ +-----+          ||        || +-----+ +-----+ +-----+ +-----+          ||
|| | (5) | | (6) | | (7) | | (8) |          ||        || | (5) | | (6) | | (7) | | (8) |          ||
|| |C    | |C    | |C    | |C    |          ||        || |C    | |C    | |C    | |C    |          ||
|| | root| | root| | root| | root| .....    ||        || | root| | root| | root| | root| .....    ||
|| +-----+ +-----+ +-----+ +-----+          ||        || +-----+ +-----+ +-----+ +-----+          ||
|+------------------------------------------+|        |+------------------------------------------+|
+--------------------------------------------+        +--------------------------------------------+
]]></artwork>
          </figure>
        </section>
        <section anchor="trc-format">
          <name> TRC Format</name>
          <t>The TRC defines the roots of trust of an ISD and is the basis of the ISD's Control Plane PKI. It holds the root and voting certificates of the ISD and defines the ISD's trust policy.</t>
          <section anchor="trcpayload">
            <name> TRC Schema</name>
            <t>The following code block shows the format of a TRC specification file (the payload schema):</t>
            <artwork><![CDATA[
   TRCPayload  ::=  SEQUENCE {
       version   TRCFormatVersion,
       iD        TRCID,
       validity  Validity,

       gracePeriod   INTEGER,
       noTrustReset  BOOLEAN DEFAULT FALSE,
       votes         SEQUENCE OF INTEGER (SIZE (1..255)),

       votingQuorum  INTEGER (1..255),

       coreASes           SEQUENCE OF ASN,
       authoritativeASes  SEQUENCE OF ASN,
       description        UTF8String (SIZE (0..1024)),

       certificates       SEQUENCE OF Certificate }

   TRCFormatVersion  ::=  INTEGER { v1(0) }

   TRCID  ::=  SEQUENCE {
       iSD           ISD,
       serialNumber  INTEGER (1..MAX),
       baseNumber    INTEGER (1..MAX) }

   ISD  ::=  INTEGER (1..65535)

   Validity  ::=  SEQUENCE {
       notBefore  Time,
       notAfter   Time }

   ASN  ::=  INTEGER (1..281474976710655)
]]></artwork>
            <t>The <tt>TRCPayload</tt> sequence contains the identifying information of a TRC as well as policy information for TRC updates. Furthermore, it defines the list of certificates that build the trust anchor of the ISD.</t>
            <t>For signature calculation, the data that is to be signed is encoded using ASN.1 distinguished encoding rules (DER) <xref target="X.690"/>. For more details, see <xref target="signed-format"/>.</t>
          </section>
          <section anchor="trc-fields">
            <name> TRC Fields</name>
            <t>This section describes the syntax and semantics of all TRC payload fields.</t>
            <section anchor="version-field">
              <name> <tt>version</tt> Field</name>
              <t>The <tt>version</tt> field describes the version of the TRC format specification.</t>
              <t>Currently, the version <bcp14>MUST</bcp14> always be "v1".</t>
            </section>
            <section anchor="id">
              <name> <tt>iD</tt> Field</name>
              <t>The <tt>iD</tt> field specifies the unique identifier of the TRC.</t>
              <t>The identifier is a unique sequence of</t>
              <ul spacing="normal">
                <li>
                  <t>ISD number (<tt>iSD</tt> attribute),</t>
                </li>
                <li>
                  <t>base number (<tt>baseNumber</tt> attribute), and</t>
                </li>
                <li>
                  <t>TRC serial number (<tt>serialNumber</tt> attribute).</t>
                </li>
              </ul>
              <t>All numbers <bcp14>MUST</bcp14> be positive integers.</t>
              <ul spacing="normal">
                <li>
                  <t>The <strong>ISD number</strong> <bcp14>MUST</bcp14> be an integer in the inclusive range from 64 to 4094 (i.e., the numbering range for public ISDs, see <xref target="input"/>).</t>
                </li>
                <li>
                  <t>The <strong>base number</strong> indicates the starting point of the current TRC update chain. This starting point is either the ISD's initial TRC or the currently valid base TRC, if the valid base TRC differs from the initial TRC. The latter <bcp14>MUST</bcp14> be the case after a trust reset.</t>
                </li>
                <li>
                  <t>The <strong>serial number</strong> represents the current update cycle, counting from the initial TRC of a specific ISD.</t>
                </li>
              </ul>
              <t>A TRC where the base number is equal to the serial number is a base TRC. The initial TRC is a special case of a base TRC and <bcp14>MUST</bcp14> have a serial number of 1 and a base number of 1. With every TRC update, the serial number <bcp14>MUST</bcp14> be incremented by one. This facilitates uniquely identifying the predecessor and successor TRC in an update chain.</t>
              <t>If a trust reset is necessary, a new base TRC is announced in order to start a new and clean TRC update chain. The base number of this new TRC update chain <bcp14>SHOULD</bcp14> be the number following the serial number of the latest TRC that was produced by a non-compromised TRC update for this ISD.</t>
              <t><strong>Example</strong><br/>
The following simple example illustrates how to specify the ID of the TRCs in an TRC update chain for <em>ISD 74</em>. The IDs are given in a human-readable notation, where Bxx is the base number, and Sxx the serial number.</t>
              <table anchor="_table-7">
                <name>ID of TRCs in TRC update chain</name>
                <thead>
                  <tr>
                    <th align="left">Update</th>
                    <th align="left">TRC ID</th>
                    <th align="left">Remarks</th>
                  </tr>
                </thead>
                <tbody>
                  <tr>
                    <td align="left">Initial</td>
                    <td align="left">ISD74-B01-S01</td>
                    <td align="left"> </td>
                  </tr>
                  <tr>
                    <td align="left">Regular</td>
                    <td align="left">ISD74-B01-S02</td>
                    <td align="left">Only the serial number is incremented.</td>
                  </tr>
                  <tr>
                    <td align="left">Regular</td>
                    <td align="left">ISD74-B01-S03</td>
                    <td align="left">Only the serial number is incremented.</td>
                  </tr>
                  <tr>
                    <td align="left">Sensitive</td>
                    <td align="left">ISD74-B01-S04</td>
                    <td align="left">Only the serial number is incremented.</td>
                  </tr>
                  <tr>
                    <td align="left">Trust reset</td>
                    <td align="left">ISD74-<strong>B05</strong>-S05</td>
                    <td align="left">A trust reset includes the creation of a new base TRC. The new base number follows the serial number "04" of the latest TRC resulting from a non-compromised TRC update for this ISD.</td>
                  </tr>
                  <tr>
                    <td align="left">Regular</td>
                    <td align="left">ISD74-B05-S06</td>
                    <td align="left">Only the serial number is incremented.</td>
                  </tr>
                  <tr>
                    <td align="left">Regular</td>
                    <td align="left">ISD74-B05-S07</td>
                    <td align="left">Only the serial number is incremented.</td>
                  </tr>
                  <tr>
                    <td align="left">And so on</td>
                    <td align="left"> </td>
                    <td align="left"> </td>
                  </tr>
                </tbody>
              </table>
            </section>
            <section anchor="validity">
              <name> <tt>validity</tt> Field</name>
              <t>The <tt>validity</tt> field defines the validity period of the TRC. This is the period of time during which the TRC is in the "valid" state. The <tt>notBefore</tt> and <tt>notAfter</tt> attributes of the <tt>validity</tt> field specify the lower and upper bound of the time interval during which a TRC can be active.</t>
              <t><strong>Note:</strong> An active TRC is a valid TRC that can be used for verifying certificate signatures. The time period during which a TRC is active can be shorter than the time period during which the TRC is valid. For more information, see <xref target="trc-states"/>.</t>
              <t>The <tt>validity</tt> field consists of a sequence of two dates, as defined in section 7.2. of <xref target="X.509"/>.</t>
              <t>In addition to this standard definition, the following constraint applies to the <tt>validity</tt> field of the TRC:</t>
              <ul spacing="normal">
                <li>
                  <t>All TRCs <bcp14>MUST</bcp14> have a well-defined expiration date. SCION implementations <bcp14>MUST NOT</bcp14> create TRCs that use the "99991231235959Z" generalized time value, and verifiers <bcp14>MUST</bcp14> error out when encountering such a TRC.</t>
                </li>
              </ul>
            </section>
            <section anchor="grace">
              <name> <tt>gracePeriod</tt> Field</name>
              <t>The <tt>gracePeriod</tt> field of a TRC specifies the period of time during which the predecessor TRC can still be considered active (the "grace period"). The grace period starts at the beginning of the validity period of the new TRC.</t>
              <t>The validity period of the predecessor TRC ends when:</t>
              <ul spacing="normal">
                <li>
                  <t>the grace period has passed;</t>
                </li>
                <li>
                  <t>the predecessor’s expiration time is reached; or</t>
                </li>
                <li>
                  <t>the successor TRC of the new TRC has been announced.</t>
                </li>
              </ul>
              <t><strong>Note:</strong> The event that happens first marks the end of the predecessor's validity period.</t>
              <t>The <tt>gracePeriod</tt> field defines the grace period as a number of seconds (positive integer).</t>
              <t>The value of the <tt>gracePeriod</tt> field in a base TRC <bcp14>MUST</bcp14> be zero. The value of the <tt>gracePeriod</tt> field in a non-base TRC <bcp14>SHOULD</bcp14> be non-zero. It <bcp14>SHOULD</bcp14> be long enough to provide sufficient overlap between the TRCs in order to facilitate interruption-free operations in the ISD. If the grace period is too short, some Control Plane AS certificates might expire before the corresponding AS can fetch an updated version from its CA.</t>
            </section>
            <section anchor="notrustreset">
              <name> <tt>noTrustReset</tt> Boolean</name>
              <t>The <tt>noTrustReset</tt> Boolean specifies whether a trust reset is forbidden by the ISD. Within a TRC update chain, this value <bcp14>MUST NOT</bcp14> be changed by a regular or sensitive update. However, it is possible to change the <tt>noTrustReset</tt> value in the event of a trust reset, where a new base TRC is created.</t>
              <t>The <tt>noTrustReset</tt> field is <bcp14>OPTIONAL</bcp14> and defaults to FALSE.</t>
              <t><strong>Important:</strong> Note that once the <tt>noTrustReset</tt> Boolean is set to TRUE and a trust reset is disallowed, this cannot be reversed. Therefore, ISDs <bcp14>SHOULD</bcp14> always set this value to FALSE, unless they have sufficiently assessed the risks and implications of making a trust reset impossible.</t>
              <t><strong>Note:</strong> A trust reset represents a special use case where a new base TRC is created. It therefore differs from a TRC update (regular or sensitive), as the signatures in the new base TRC cannot be verified with the certificates contained in the predecessor TRC. Instead, a trust reset base TRC must be axiomatically trusted, similarly to how the initial TRC is trusted.</t>
            </section>
            <section anchor="votes">
              <name><tt>votes</tt> Field</name>
              <t>The <tt>votes</tt> field contains a sequence of indices that refer to the voting certificates in the predecessor TRC. If index i is part of the <tt>votes</tt> field, then the voting certificate at position i in the <tt>certificates</tt> sequence of the predecessor TRC casted a vote on the successor TRC. For more information on the <tt>certificates</tt> sequence, see <xref target="cert"/>.</t>
              <t><strong>Note:</strong> In a base TRC, the <tt>votes</tt> sequence is empty.</t>
              <t>Every entry in the <tt>votes</tt> sequence <bcp14>MUST</bcp14> be unique.<br/>
Further restrictions on votes are discussed in <xref target="update"/>.</t>
              <t><strong>Note:</strong> The <tt>votes</tt> sequence of indices is mandatory in order to prevent stripping voting signatures from the TRC. Absence of the <tt>votes</tt> sequence makes it possible to transform a TRC with more voting signatures than the voting quorum into multiple verifiable TRCs with the same payload, but different voting signature sets. This would violate the requirement of uniqueness of a TRC.</t>
            </section>
            <section anchor="quorum">
              <name> <tt>votingQuorum</tt> Field</name>
              <t>The <tt>votingQuorum</tt> field defines the number of necessary votes on a successor TRC to make it verifiable.</t>
              <t>A voting quorum greater than one will prevent a single entity from creating a malicious TRC update.</t>
            </section>
            <section anchor="core">
              <name> <tt>coreASes</tt> Field</name>
              <t>The <tt>coreASes</tt> field contains the AS numbers of the core ASes in this ISD.</t>
              <t>Each core AS number <bcp14>MUST</bcp14> be unique in the sequence of core AS numbers. That is, each AS number <bcp14>MUST</bcp14> appear only once in the <tt>coreASes</tt> field.</t>
              <section anchor="revoking-or-assigning-core-status">
                <name> Revoking or Assigning Core Status</name>
                <ul spacing="normal">
                  <li>
                    <t>To revoke the core status of a given AS, remove the respective AS number from the sequence of AS numbers in the <tt>coreASes</tt> field.</t>
                  </li>
                  <li>
                    <t>To assign the core status to a given AS, add the respective AS number to the sequence of AS numbers in the <tt>coreASes</tt> field.</t>
                  </li>
                </ul>
                <t><strong>Important:</strong> Revoking or assigning the core status of/to an AS always requires a (sensitive) TRC update.</t>
              </section>
            </section>
            <section anchor="auth">
              <name> <tt>authoritativeASes</tt> Field</name>
              <t>The <tt>authoritativeASes</tt> field contains the AS numbers of the authoritative ASes in this ISD.</t>
              <t>Authoritative ASes are those ASes in an ISD that always have the latest TRCs of the ISD. As a consequence, authoritative ASes also start the announcement of a TRC update.</t>
              <ul spacing="normal">
                <li>
                  <t>Every authoritative AS <bcp14>MUST</bcp14> be a core AS and be listed in the <tt>coreASes</tt> field.</t>
                </li>
                <li>
                  <t>Each authoritative AS number <bcp14>MUST</bcp14> be unique in the sequence of authoritative AS numbers. That is, each AS number <bcp14>MUST NOT</bcp14> appear more than once in the <tt>authoritativeASes</tt> field.</t>
                </li>
              </ul>
              <section anchor="revoking-or-assigning-authoritative-status">
                <name> Revoking or Assigning Authoritative Status</name>
                <ul spacing="normal">
                  <li>
                    <t>To revoke the authoritative status of a given AS, remove the respective AS number from the sequence of AS numbers in the <tt>authoritativeASes</tt> field.</t>
                  </li>
                  <li>
                    <t>To assign the authoritative status to a given AS, add the respective AS number to the sequence of AS numbers in the <tt>authoritativeASes</tt> field.</t>
                  </li>
                </ul>
                <t><strong>Important:</strong> Revoking or assigning the authoritative status of/to an AS always requires a (sensitive) TRC update.</t>
              </section>
            </section>
            <section anchor="description">
              <name> <tt>description</tt> Field</name>
              <t>The <tt>description</tt> field contains a UTF-8 encoded string that describes the ISD.</t>
              <ul spacing="normal">
                <li>
                  <t>The <tt>description</tt> field <bcp14>SHOULD NOT</bcp14> be empty.</t>
                </li>
                <li>
                  <t>The description of the ISD <bcp14>MUST</bcp14> be in English. Additionally, the <tt>description</tt> field <bcp14>MAY</bcp14> contain information in other languages.</t>
                </li>
              </ul>
            </section>
            <section anchor="cert">
              <name><tt>certificates</tt> Field</name>
              <t>The voting ASes and the certification authorities (CAs) of an ISD are not specified explicitly in the ISD's TRC. Instead, this information is defined by the list of voting and root certificates in the <tt>certificates</tt> field of the TRC payload.</t>
              <t>The <tt>certificates</tt> field is a sequence of self-signed X.509 certificates. Each certificate in the certificate sequence <bcp14>MUST</bcp14> be one of the following types:</t>
              <ul spacing="normal">
                <li>
                  <t>a sensitive voting certificate,</t>
                </li>
                <li>
                  <t>a regular voting certificate, or</t>
                </li>
                <li>
                  <t>a CP root certificate.</t>
                </li>
              </ul>
              <t>A certificate that is no control plane root or voting certificate <bcp14>MUST NOT</bcp14> be included in the sequence of certificates in the <tt>certificates</tt> field.</t>
              <t><strong>Note</strong>: A certificate's type (voting or root) is specified in the <tt>extKeyUsage</tt> extension of the certificate, by means of the SCION-specific attributes <tt>id-kp-regular</tt>, <tt>id-kp-sensitive</tt>, and <tt>id-kp-root</tt>, respectively. For more information, see <xref target="ext-key-usage-ext"/>.</t>
              <t>The following constraints <bcp14>MUST</bcp14> hold for each certificate in the <tt>certificates</tt> field of the TRC payload:</t>
              <ul spacing="normal">
                <li>
                  <t>Each certificate <bcp14>MUST</bcp14> be unique in the sequence of certificates. That is, each certificate <bcp14>MUST NOT</bcp14> appear more than once in the <tt>certificates</tt> field.</t>
                </li>
                <li>
                  <t>The <tt>issuer</tt> / <tt>serialNumber</tt> pair for each certificate <bcp14>MUST</bcp14> be unique.</t>
                </li>
                <li>
                  <t>If an ISD-AS number is present in the distinguished name of the certificate, this ISD number <bcp14>MUST</bcp14> be equal to the ISD number of the TRC (which is defined in the <tt>iD</tt> field (see <xref target="id"/>).</t>
                </li>
                <li>
                  <t>Every certificate <bcp14>MUST</bcp14> have a validity period that fully contains the validity period of this TRC. That is, the <tt>notBefore</tt> date of this TRC's validity period <bcp14>MUST</bcp14> be equal to or later than the certificate's <tt>notBefore</tt> date, and the <tt>notAfter</tt> date of this TRC's validity period <bcp14>MUST</bcp14> be before or equal to the certificate's <tt>notAfter</tt> date.</t>
                </li>
                <li>
                  <t>Per certificate type, every certificate distinguished name <bcp14>MUST</bcp14> be unique.</t>
                </li>
              </ul>
              <t>The following must hold for the entire sequence of certificates in the <tt>certificates</tt> field:</t>
              <ul spacing="normal">
                <li>
                  <t><tt>votingQuorum</tt> &lt;= count (sensitive voting certificates) <br/>
That is, the quorum defined in the TRC's <tt>votingQuorum</tt> field (<xref target="quorum"/>) <bcp14>MUST</bcp14> be smaller than or equal to the number of <em>sensitive</em> voting certificates specified in the TRC's <tt>certificates</tt> field.</t>
                </li>
                <li>
                  <t><tt>votingQuorum</tt> &lt;= count (regular voting certificates) <br/>
That is, the quorum defined in the TRC's <tt>votingQuorum</tt> field (<xref target="quorum"/>) <bcp14>MUST</bcp14> be smaller than or equal to the number of <em>regular</em> voting certificates specified in the TRC's <tt>certificates</tt> field.</t>
                </li>
              </ul>
            </section>
          </section>
        </section>
        <section anchor="signed-format">
          <name> TRC Signature Syntax</name>
          <t>A TRC contains policy information about an ISD and acts as a distribution mechanism for the trust anchors of that ISD.</t>
          <t>Each TRC is digitally signed and the syntax used to sign and encapsulate the TRC payload is the Cryptographic Message Syntax (CMS) as defined in <xref target="RFC5652"/>. The signed TRC payload is of the CMS signed-data content type, as defined in Section 5 of <xref target="RFC5652"/>, and encapsulated in a CMS <tt>ContentInfo</tt> element, as defined in Section 3 of <xref target="RFC5652"/>.</t>
          <t>For detailed information on the general syntax definitions of the Cryptographic Message Syntax, see sections 3 and 5 of <xref target="RFC5652"/>.</t>
          <section anchor="scion-specific-rules">
            <name>SCION-specific rules</name>
            <t>SCION implementations <bcp14>MUST</bcp14> fulfil the following additional rules, as well as the general syntax rules specified in <xref target="RFC5652"/>:</t>
            <ul spacing="normal">
              <li>
                <t><tt>EncapsulatedContentInfo</tt> sequence:
                </t>
                <ul spacing="normal">
                  <li>
                    <t>The <tt>eContentType</tt> field <bcp14>MUST</bcp14> be set to "id-data".</t>
                  </li>
                  <li>
                    <t>The content of the <tt>eContent</tt> field <bcp14>MUST</bcp14> be the DER-encoded TRC payload. This has the benefit that the format is backwards compatible with PKCS #7, as described in Section 5.2.1 of <xref target="RFC5652"/>.</t>
                  </li>
                </ul>
              </li>
              <li>
                <t><tt>SignedData</tt> sequence:
                </t>
                <ul spacing="normal">
                  <li>
                    <t>The <tt>certificates</tt> field <bcp14>MUST</bcp14> be left empty. The certificate pool used to verify a TRC update is already specified in the <tt>certificates</tt> field of the predecessor TRC's payload (see also <xref target="cert"/>).</t>
                  </li>
                  <li>
                    <t>The <tt>version</tt> field <bcp14>MUST</bcp14> be set to "1". This is because SCION uses the "id-data" content type to encapsulate content info, and does not specify any certificate in the <tt>SignedData</tt> sequence (see also Section 5.1 of <xref target="RFC5652"/>).</t>
                  </li>
                </ul>
              </li>
              <li>
                <t><tt>SignerIdentifier</tt> choice:
                </t>
                <ul spacing="normal">
                  <li>
                    <t>The type of signer identifier chosen here <bcp14>MUST</bcp14> be <tt>IssuerAndSerialNumber</tt>.</t>
                  </li>
                </ul>
              </li>
              <li>
                <t><tt>SignerInfo</tt> sequence:
                </t>
                <ul spacing="normal">
                  <li>
                    <t>The <tt>version</tt> field <bcp14>MUST</bcp14> be set to "1". This is because SCION uses the <tt>IssuerAndSerialNumber</tt> type of signer identifier (see also Section 5.3 of <xref target="RFC5652"/>).</t>
                  </li>
                  <li>
                    <t>The algorithm specified in the <tt>signatureAlgorithm</tt> field <bcp14>MUST</bcp14> be one of the algorithms supported by SCION (for details, see <xref target="certsign">signature Field - Additional Information</xref>).</t>
                  </li>
                  <li>
                    <t>The <tt>digestAlgorithm</tt> is determined by the algorithm specified in the <tt>signatureAlgorithm</tt> field.</t>
                  </li>
                </ul>
              </li>
            </ul>
          </section>
          <section anchor="trc-equality">
            <name> TRC Equality</name>
            <t>The signer information in the signed TRC is part of an unordered set, as per <xref target="RFC5652"/>. This implies that the signer information can be reordered without affecting verification, although certain operations require TRCs to be equal im accordance with the following definition:</t>
            <t><strong>Two TRCs are equal, if and only if their payloads are byte equal.</strong></t>
            <t>Two TRCs with byte equal payloads can be considered as equal because the TRC payload exactly defines which signatures must be attached in the signed TRC:</t>
            <ul spacing="normal">
              <li>
                <t>The <bcp14>REQUIRED</bcp14> signatures from voting certificates are explicitly mentioned in the <tt>votes</tt> field of the payload: If index "i" is part of the <tt>votes</tt> field, then the voting certificate at position i in the <tt>certificates</tt> sequence of the predecessor TRC casted a vote on the successor TRC. See also <xref target="votes"/>.</t>
              </li>
              <li>
                <t>The <bcp14>REQUIRED</bcp14> signatures for new certificates are implied by the currently valid TRC payload, and, in case of a TRC update, the predecessor payload.</t>
              </li>
            </ul>
          </section>
        </section>
        <section anchor="certification-path-trust-anchor-pool">
          <name> Certification Path - Trust Anchor Pool</name>
          <t>The certification path of a  Control PlaneAS certificate starts in a Control Plane root certificate. The Control Plane root certificate for a given ISD is distributed via the TRC.</t>
          <t>However, AS certificates and the corresponding signing CA certificates are <strong>not</strong> part of the TRC, but bundled into certificate chains and distributed separately from the corresponding TRC. This separation makes it possible to extend the validity period of the root certificate, and to update the corresponding TRC without having to modify the certificate chain. To be able to validate a certification path, each AS builds a collection of root certificates from the latest TRC of the relevant ISD.</t>
          <t>The following section explains how to build a trust anchor pool.</t>
          <t><strong>Note:</strong> Any entity sending information that is secured by the Control Plane PKI, such as control plane messages, <bcp14>MUST</bcp14> be able to provide all the necessary trust material, such as certificates, to verify said information. If any cryptographic material is missing in the process, the relying party <bcp14>MUST</bcp14> query the originator of the message for the missing material. If it cannot be resolved, the verification process fails. For more details, see 4.2 "Signing and Verifying Control Plane Messages" <xref target="signing-verifying-cp-messages"/>.</t>
          <section anchor="trc-selection">
            <name> TRC Selection For Trust Anchor Pool</name>
            <t>The selection of the right set of TRCs to build the trust anchor pool depends on the time of verification. The trust anchor pool is usually used to verify control plane messages and this case, the time of verification is the current time. However, if the trust anchor pool will be used for auditing, the time of verification is the point in time to check whether a given signature was verifiable.</t>
            <t>The selection algorithm for building the trust anchor pool is described in pseudo-python code below.</t>
            <sourcecode type="python"><![CDATA[
    def select_trust_anchors(trcs: Dict[(int,int), TRC], verification_time: int) -> Set[RootCert]:
        """
        Args:
            trcs: The dictionary mapping (serial number, base number) to the TRC for a given ISD.
            verification_time: The time of verification.

        Returns:
            The set of CP Root certificates that act as trust anchors.
        """
        # Find highest base number that has a TRC with a validity period
        # starting before verification time.
        base_nr = 1
        for trc in trcs.values():
            if trc.id.base_nr > base_nr and trc.validity.not_before <= verification_time:
                base_nr = trc.id.base_nr

        # Find TRC with highest serial number with the given base number and a
        # validity period starting before verification time.
        serial_nr = 1
        for trc in trcs[isd].values():
            if trc.id.base_nr != base_nr:
                continue
            if trc.id.serial_nr > serial_nr and trc.validity.not_before <= verification_time:
                serial_nr = trc.id.serial_nr

        candidate = trcs[(serial_nr, base_nr)]

        # If the verification time is not inside the validity period,
        # there is no valid set of trust anchors.
        if not candidate.validity.contains(verification_time):
            return set()

        # If the grace period has passed, only the certificates in that TRCs
        # may be used as trust anchors.
        if candidate.validity.not_before + candidate.grace_period < verification_time:
            return collect_trust_anchors(candidate)

        predecessor = trcs.get((serial_nr-1, base_nr))
        if not predecessor or predecessor.validity.not_after < verification_time:
            return collect_trust_anchors(candidate)

        return collect_trust_anchors(candidate) | collect_trust_anchors(predecessor)


    def collect_trust_anchors(trc: TRC) -> Set[RootCert]:
        """
        Args:
            trc: A TRC from which the CP Root Certificates shall be extracted.

        Returns:
            The set of CP Root certificates that act as trust anchors.
        """
        roots = set()
        for cert in trc.certificates:
            if not cert.basic_constraints.ca:
                continue
            roots.add(cert)
        return roots
]]></sourcecode>
          </section>
        </section>
        <section anchor="update">
          <name> TRC Updates</name>
          <t>All non-base TRCs of an ISD are updates of the ISD's base TRC(s). The TRC update chain consists of regular and sensitive TRC updates, and the type of update determines the (payload) information that changes in the updated TRC.</t>
          <t>This section describes the rules that apply to updating a TRC in regard to the payload information contained in the TRC. Some rules are valid for both update types whilst some only apply to a regular or a sensitive TRC update. Based on the type of update, different sets of voters are needed to create a verifiable TRC update and the corresponding voting (signing) process is also described. To verify a TRC update, a relying party <bcp14>MUST</bcp14> perform a couple of checks which are also listed.</t>
          <section anchor="change-new">
            <name> Changed or New Certificates</name>
            <t>In the context of a TRC update,</t>
            <ul spacing="normal">
              <li>
                <t>A certificate is <em>changing</em>, if the certificate is part of the <tt>certificates</tt> sequence in the predecessor TRC, but no longer part of the <tt>certificates</tt> sequence in the updated TRC. Instead, the <tt>certificates</tt> sequence of the updated TRC holds another certificate of the <em>same type</em> and with the <em>same distinguished name</em>.</t>
              </li>
              <li>
                <t>A certificate is <em>new</em>, if there is <strong>no</strong> certificate of the same type and distinguished name at all in the <tt>certificates</tt> sequence of the predecessor TRC.</t>
              </li>
            </ul>
            <t><strong>Note:</strong> Every new sensitive or regular voting certificate in a TRC attaches a signature to the TRC. This is done to ensure that the freshly included voting entity agrees with the contents of the TRC it is now part of.</t>
          </section>
          <section anchor="update-rules-overview">
            <name> Update Rules - Overview</name>
            <t>The following table gives an overview of the types of TRC update as well as the rules that must apply in regard to the updated TRC's payload information.</t>
            <t>The sections that follow provide more detailed descriptions of each rule.</t>
            <table anchor="_table-8">
              <name>Overview of the update types and corresponding rules</name>
              <thead>
                <tr>
                  <th align="left">Type of Update</th>
                  <th align="left">Payload Updated TRC - Unchanged Elements</th>
                  <th align="left">Payload Updated TRC - Required Changes</th>
                  <th align="left">Payload Updated TRC: Other Rules to Hold</th>
                </tr>
              </thead>
              <tbody>
                <tr>
                  <td align="left">Both Regular AND Sensitive Updates</td>
                  <td align="left">- <tt>iD</tt> field: <tt>iSD</tt> and <tt>baseNumber</tt> <br/> - <tt>noTrustReset</tt> field</td>
                  <td align="left">
                    <tt>iD</tt> field: <tt>serialNumber</tt> <bcp14>MUST</bcp14> be incremented by 1</td>
                  <td align="left">
                    <tt>votes</tt> field: Number of votes (indices) =&gt; number set in the <tt>votingQuorum</tt> field of the predecessor TRC</td>
                </tr>
                <tr>
                  <td align="left">Regular TRC Update</td>
                  <td align="left">- Quorum in the <tt>votingQuorum</tt> field<br/>- Core ASes in the <tt>coreASes</tt> field<br/>- ASes in the <tt>authoritativeASes</tt> field<br/>- Nr. and distinguished names of root &amp; voting certificates in the <tt>certificates</tt> field<br/>- Set of sensitive voting certificates in the <tt>certificates</tt> field</td>
                  <td align="left"> </td>
                  <td align="left">
                    <tt>votes</tt> field:<br/> - All votes <bcp14>MUST</bcp14> only refer to <em>regular</em> voting certificates in the predecessor TRC<br/>- Must include votes of each changed regular voting certificate from the predecessor TRC<br/> <tt>signatures</tt> field:<br/> - Must include signatures of each changed root certificate from the predecessor TRC</td>
                </tr>
                <tr>
                  <td align="left">Sensitive TRC Update</td>
                  <td align="left">If the update does not qualify as a regular update, it is a sensitive update</td>
                  <td align="left"> </td>
                  <td align="left">
                    <tt>votes</tt> field: <br/> - All votes <bcp14>MUST</bcp14> only refer to <em>sensitive</em> voting certificates in the predecessor TRC</td>
                </tr>
              </tbody>
            </table>
          </section>
          <section anchor="general-update-rules">
            <name> General Update Rules</name>
            <t>The following rules <bcp14>MUST</bcp14> hold for each updated TRC, independent of the update type:</t>
            <ul spacing="normal">
              <li>
                <t>The <tt>iSD</tt> and <tt>baseNumber</tt> in the <tt>iD</tt> field <bcp14>MUST NOT</bcp14> change (see also <xref target="id"/>).</t>
              </li>
              <li>
                <t>The <tt>serialNumber</tt> in the <tt>iD</tt> field <bcp14>MUST</bcp14> be incremented by one.</t>
              </li>
              <li>
                <t>The <tt>noTrustReset</tt> field <bcp14>MUST NOT</bcp14> change (see also <xref target="notrustreset"/>).</t>
              </li>
              <li>
                <t>The <tt>votes</tt> sequence of the updated TRC <bcp14>MUST</bcp14> only contain indices that refer to sensitive or regular voting certificates in the predecessor TRC. This guarantees that the updated TRC only contains valid votes authenticated by sensitive or regular voting certificates in the predecessor TRC. For more information, see <xref target="votes"/> and <xref target="cert"/>.</t>
              </li>
              <li>
                <t>The number of votes in the updated TRC <bcp14>MUST</bcp14> be greater than or equal to the number set in the <tt>votingQuorum</tt> field of the predecessor TRC (see <xref target="quorum"/>). The number of votes corresponds to the number of indices in the <tt>votes</tt> field of the updated TRC.</t>
              </li>
            </ul>
          </section>
          <section anchor="regular-trc-update">
            <name> Regular TRC Update</name>
            <t>A regular TRC update is a periodic re-issuance of the TRC where the entities and policies listed in the TRC remain unchanged.</t>
            <t>A TRC update qualifies as a regular update, if the following rules apply in regard to the TRC's payload information.</t>
            <ul spacing="normal">
              <li>
                <t>The settings of the following fields in the updated TRC <bcp14>MUST</bcp14> remain the same compared to the predecessor TRC:
                </t>
                <ul spacing="normal">
                  <li>
                    <t>The voting quorum set in the <tt>votingQuorum</tt> field.</t>
                  </li>
                  <li>
                    <t>The core ASes specified in the <tt>coreASes</tt> field.</t>
                  </li>
                  <li>
                    <t>The authoritative ASes specified in the <tt>authoritativeASes</tt> field.</t>
                  </li>
                  <li>
                    <t>The number of sensitive and regular voting certificates as well as Control Plane root certificates included in the <tt>certificates</tt> field, and their distinguished names.</t>
                  </li>
                  <li>
                    <t>The set of sensitive voting certificates specified in the <tt>certificates</tt> field.</t>
                  </li>
                </ul>
              </li>
              <li>
                <t>For every regular voting certificate that changes, the regular voting certificate in the predecessor TRC is part of the voters on the updated TRC. That is, for each changed regular voting certificate, an index in the <tt>votes</tt> field of the updated TRC <bcp14>MUST</bcp14> refer to the changed regular voting certificate in the predecessor TRC.</t>
              </li>
              <li>
                <t>For every Control Plane root certificate that changes, the updated TRC <bcp14>MUST</bcp14> include a signature created with the private key belonging to the changed Control Plane root certificate (which is part of the predecessor TRC).</t>
              </li>
              <li>
                <t>In order for a regular TRC update to be verifiable, all votes <bcp14>MUST</bcp14> be cast by <em>regular</em> voting certificates. That is, each index in the <tt>votes</tt> field of the regularly updated TRC <bcp14>MUST</bcp14> refer to a <em>regular</em> voting certificate in the <tt>certificates</tt> field of the predecessor TRC.</t>
              </li>
            </ul>
          </section>
          <section anchor="sensitive-trc-update">
            <name> Sensitive TRC Update</name>
            <t>If a TRC update does not qualify as a regular update, it is considered a sensitive update.</t>
            <ul spacing="normal">
              <li>
                <t>In order for a sensitive update to be verifiable, all votes <bcp14>MUST</bcp14> be cast by <em>sensitive</em> voting certificates. That is, each index in the <tt>votes</tt> field of the sensitively updated TRC <bcp14>MUST</bcp14> refer to a <em>sensitive</em> voting certificate in the <tt>certificates</tt> field of the predecessor TRC.</t>
              </li>
            </ul>
          </section>
          <section anchor="signing-a-trc-update">
            <name> Signing a TRC Update</name>
            <t>As described above, a set of voters <bcp14>MUST</bcp14> cast votes on the updated TRC to make it verifiable. The <tt>votingQuorum</tt> field of the predecessor TRC (see <xref target="quorum"/>) defines the required number of voters, which will represent regular or sensitive voting certificates, respectively.</t>
            <t>Furthermore, if one or more <em>new</em> certificates are added to the updated TRC, the corresponding voting representatives <bcp14>MUST</bcp14> also sign the updated TRC in order to show that they have access to the private keys listed in these fresh certificates. This is called "showing proof-of-possession", and done by signing the TRC with the respective private key. For the distinction between changed and new certificates in a TRC update, see <xref target="change-new"/>.</t>
            <t>It is up to the ISD members to decide how the "casting a vote" procedure for updated TRCs will take place. Some ISDs will make a distinction between regular and sensitive updates. These ISDs divide the regular and sensitive signing keys in different security classes and act accordingly, e.g. they keep the regular key in an online vault while the sensitive key would be stored offline. This way, the regular TRC update would lend itself to being automated (since the keys are accessible online) whereas the sensitive one would require manual actions to access the offline key. However, other ISDs keep both regular and sensitive keys online and perform both updates automatically.</t>
          </section>
          <section anchor="trc-update-verification">
            <name> TRC Update Verification</name>
            <t>To verify a TRC update, the relying party <bcp14>MUST</bcp14> perform the following checks:</t>
            <ul spacing="normal">
              <li>
                <t>Check that the specified update rules as described above are respected.</t>
              </li>
              <li>
                <t>Check whether the update is regular or sensitive.
                </t>
                <ul spacing="normal">
                  <li>
                    <t>In case of a regular update,
                    </t>
                    <ul spacing="normal">
                      <li>
                        <t>check that the signatures for the changing certificates are present and verifiable, and</t>
                      </li>
                      <li>
                        <t>check that all votes are cast by a regular voting certificate.</t>
                      </li>
                    </ul>
                  </li>
                  <li>
                    <t>In case of a sensitive update, check that all votes are cast by a sensitive voting certificate.</t>
                  </li>
                </ul>
              </li>
              <li>
                <t>In both cases, check that all signatures are verifiable, and no superfluous signatures are attached.</t>
              </li>
            </ul>
            <t>If one or more of the above checks gives a negative result, the updated TRC <bcp14>SHOULD</bcp14> be rejected.</t>
          </section>
        </section>
      </section>
      <section anchor="trc-ceremony">
        <name>Initial TRC Signing Ceremony</name>
        <t>The very first base TRC of an ISD - called the initial TRC - is a special case of the base TRC where the number of the ISD is chosen. The initial TRC <bcp14>MUST</bcp14> be signed during a special signing ceremony - all voting representatives of the initial TRC need to take part in this signing ceremony to sign this and exchange their public keys. Following this, all entities within an ISD can obtain the TRC by means of a secure offline or online mechanism.</t>
        <t><xref target="initial-ceremony"/> describes a possible procedure for the signing ceremony of an ISD's initial TRC. It is in principle up to the initial members of an ISD how to organize the signing ceremony. However, it is recommended having a process in line with the ceremony described in the Appendix.</t>
      </section>
    </section>
    <section anchor="deploy-cp-pki">
      <name>Deploying the CP PKI - Specifications</name>
      <t>This section provides several specifications regarding the deployment of the control plane PKI.</t>
      <section anchor="deploying-a-trc">
        <name>Deploying a TRC</name>
        <section anchor="base-trc">
          <name> Base TRC</name>
          <t>Base TRCs are trust anchors and thus axiomatically trusted. All ASes within an ISD <bcp14>MUST</bcp14> be pre-loaded with the currently valid base-version TRC of their own ISD. For all specifications regarding the creation and distribution of initial/base TRCs, see <xref target="trc-ceremony"/>.</t>
        </section>
        <section anchor="trc-update">
          <name> TRC Update</name>
          <t>All non-base TRCs of an ISD are updates of the ISD's base TRC(s). The TRC update chain consists of regular and sensitive TRC updates. The specifications and rules that apply to updating a TRC are described in <xref target="update"/>.</t>
          <section anchor="discover-trcupdate">
            <name> TRC Update Discovery</name>
            <t>Relying parties <bcp14>MUST</bcp14> have at least one valid TRC available. Relying parties <bcp14>MUST</bcp14> discover TRC updates within the grace period defined in the updated TRC. They <bcp14>SHOULD</bcp14> discover TRC updates in a matter of minutes to hours. Additionally, the following requirement <bcp14>MUST</bcp14> be satisfied:</t>
            <t><strong>Requirement</strong><br/>
Any entity sending information that is secured by the Control Plane PKI <bcp14>MUST</bcp14> be able to provide all the necessary trust material to verify said information.</t>
            <t>SCION provides the following mechanisms for discovering TRC updates and fulfilling the above requirement:</t>
            <ul spacing="normal">
              <li>
                <t><em>Beaconing Process</em><br/>
The TRC version is announced in the beaconing process. Each AS <bcp14>MUST</bcp14> announce what it considers to be the latest TRC, and <bcp14>MUST</bcp14> include the hash value of the TRC contents to facilitate the discovery of discrepancies. Therefore, relying parties that are part of the beaconing process discover TRC updates passively, i.e. a core AS notices TRC updates for remote ISDs that are on the beaconing path. A non-core AS only notices TRC updates for the local ISD through the beaconing process. The creation of a new TRC <bcp14>SHOULD</bcp14> trigger the generation of new control plane messages, as the propagation of control plane messages will help other ASes rapidly discover the new TRC.</t>
              </li>
              <li>
                <t><em>Path Lookup</em><br/>
In every path segment, all ASes <bcp14>MUST</bcp14> reference the latest TRC of their ISD. Therefore, when resolving paths, every relying party will notice TRC updates, even remote ones.<br/></t>
              </li>
            </ul>
            <t><strong>Note:</strong> The above mechanism only works when there is an active communication between the relying party and the ISD in question.</t>
          </section>
        </section>
      </section>
      <section anchor="signing-verifying-cp-messages">
        <name> Signing and Verifying Control Plane Messages</name>
        <t>SCION requires that control plane messages are signed. The main purpose of the Control Plane PKI is providing a mechanism to distribute and authenticate public keys that are used to verify control plane messages and information, e.g. each hop information in a path segment is signed by the respective AS. Consequently, all relying parties <bcp14>MUST</bcp14> be able to verify signatures with the help of the Control Plane PKI.</t>
        <t>The following sections specify the requirements that apply to the signing and verification of control plane messages.</t>
        <section anchor="signing-a-control-plane-message">
          <name> Signing a Control Plane Message</name>
          <t>An AS signs control plane messages with the private key that corresponds to the (valid) AS' certificate.</t>
          <t>The AS <bcp14>MUST</bcp14> attach the following information as signature metadata. It is the minimum information a relying party requires to identify which certificate to use to verify the signed message.</t>
          <ul spacing="normal">
            <li>
              <t>ISD-AS number: The ISD-AS number of the signing entity. For specification details, see <xref target="isd-as-nr"/>.</t>
            </li>
            <li>
              <t>Subject key identifier: The identifier of the public key that <bcp14>MUST</bcp14> be used to verify the message. For specification details, see <xref target="subject-key-id-ext"/>.</t>
            </li>
          </ul>
          <t>Additionally, the signer <bcp14>SHOULD</bcp14> include the following information:</t>
          <ul spacing="normal">
            <li>
              <t>Serial and base number of the latest TRC: Including this information allows relying parties to discover TRC updates and trust resets. For specification details, see <xref target="id"/>.</t>
            </li>
            <li>
              <t>Timestamp: For many messages, the time at which it was signed is useful information to ensure freshness.</t>
            </li>
          </ul>
        </section>
        <section anchor="verifying-a-control-plane-message">
          <name> Verifying a Control Plane Message</name>
          <t>When the relying party receives a control plane message they want to verify, the relying party first needs to identify the certificate needed to validate the corresponding signature on the message.</t>
          <t>AS certificates are bundled together with the corresponding signing CA certificate into certificate chains. For efficiency, SCION distributes these certificate chains separately from the signed messages.</t>
          <t>A certificate chain is verified against the Control Plane root certificate, although the the root certificate is bunded with the TRC and <strong>not</strong> in the chain. This makes it possible to extend the validity period of the root certificate and update the corresponding TRC without having to modify the certificate chain.</t>
          <t>To verify a control plane message, the relying party <bcp14>MUST</bcp14> perform the following steps:</t>
          <ol spacing="normal" type="1"><li>
              <t>Build a collection of root certificates from the latest TRC of the relevant ISD (that is, the ISD referenced in the signature metadata of the message). If the grace period (see <xref target="grace"/>) introduced by the latest TRC is still on-going, the root certificates in the second-to-latest TRC <bcp14>MUST</bcp14> also be included. For a description on how to build the correct collection of certificates, see <xref target="trc-selection"/>.</t>
            </li>
            <li>
              <t>If the signature metadata of the message contains the serial and base number of the latest TRC, the relying party <bcp14>MUST</bcp14> check that they have this latest TRC. If not, the relying party <bcp14>MUST</bcp14> request the latest TRC.</t>
            </li>
            <li>
              <t>After constructing the pool of root certificates, the relying party <bcp14>MUST</bcp14> select the certificate chain used to verify the message. The AS certificate included in this certificate chain <bcp14>MUST</bcp14> have the following properties:
              </t>
              <ul spacing="normal">
                <li>
                  <t>The ISD-AS number in the subject of the AS certificate <bcp14>MUST</bcp14> match the ISD-AS number in the signature metadata. See also <xref target="isd-as-nr"/>.</t>
                </li>
                <li>
                  <t>The subject key identifier of the AS certificate <bcp14>MUST</bcp14> match the subject key identifier in the signature metadata. See also <xref target="subject-key-id-ext"/>.</t>
                </li>
                <li>
                  <t>The AS certificate <bcp14>MUST</bcp14> be valid at verification time. Normally, this will be the current time. In special cases, e.g., auditing, the time can be set to the past to check if the message was verifiable at the given time.</t>
                </li>
              </ul>
            </li>
            <li>
              <t>After selecting a certificate chain to verify the control plane messages, the relying party <bcp14>MUST</bcp14> verify the certificate chain, by:
              </t>
              <ul spacing="normal">
                <li>
                  <t>Executing the regular X.509 verification procedure. For details, see <xref target="X.509"/>.</t>
                </li>
                <li>
                  <t>Checking that
                  </t>
                  <ul spacing="normal">
                    <li>
                      <t>all subjects of the certificates in the chain carry the same ISD number (see also <xref target="isd-as-nr"/>,</t>
                    </li>
                    <li>
                      <t>each certificate is of the correct type (see also <xref target="overview"/>), and</t>
                    </li>
                    <li>
                      <t>the CA certificate validity period covers the AS certificate validity period.</t>
                    </li>
                  </ul>
                </li>
              </ul>
            </li>
            <li>
              <t>If the verification of the certificate chain was successful, the relying party can now verify the control plane messages, with the root certificates from the certificate chain.</t>
            </li>
          </ol>
          <t>If any cryptographic material is missing in the process, the relying party <bcp14>MUST</bcp14> query the originator of the message for the missing material. If it cannot be resolved, the verification process fails.</t>
          <t><strong>Important:</strong> An implication of the above procedure is that path segments <bcp14>SHOULD</bcp14> be verifiable at time of use. It is not enough to rely on path segments being verified on insert since TRC updates that change the root key can invalidate a certificate chain.</t>
        </section>
      </section>
      <section anchor="creating-a-new-control-plane-as-certificate">
        <name>Creating a New Control Plane AS Certificate</name>
        <t>The steps <bcp14>REQUIRED</bcp14> to create a new AS certificate are the following:</t>
        <ol spacing="normal" type="1"><li>
            <t>The AS creates a new key pair and a certificate signing request (CSR) using that key pair.</t>
          </li>
          <li>
            <t>The AS sends the certificate signing request to the relevant CA within the ISD.</t>
          </li>
          <li>
            <t>The CA uses its CA key and the CSR to create the new AS certificate.</t>
          </li>
          <li>
            <t>The CA sends the AS certificate back to the AS.</t>
          </li>
        </ol>
        <t>When an AS joins an ISD, the first CSR is sent out of band to one of the CAs as part of the formalities to join the ISD. Subsequent certificate renewals <bcp14>MAY</bcp14> be automated and can leverage the control plane communication infrastructure.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The goal of SCION is to provide a secure inter-domain network architecture, therefore this section focuses on <em>inter</em>-AS security considerations. All <em>intra</em>-AS trust- and security aspects are out of scope.</t>
      <section anchor="dependency-on-certificates">
        <name>Dependency on Certificates</name>
        <t>In PKIs, CAs have both the responsibility and power to issue and revoke certificates. A compromised or misbehaving CA could refuse to issue certificates to legitimate entities and/or issue illegitimate certificates to allow impersonation of another entity. In the context of the Control Plane PKI, refusing to issue or renew a certificate to an AS will ultimately cut that AS off from the network, turning the Control Plane PKI into a potential network kill switch, so within each ISD there are usually multiple independent CAs.</t>
        <t>SCION fundamentally differs from a global monopolistic trust model as each ISD manages its own trust roots instead of a single global entity providing those roots. This structure gives each ISD autonomy in terms of key management and in terms of trust, and prevents the occurrence of a global kill switch affecting all ISDs at once. However, each ISD is still susceptible to compromises that could affect or halt other components (control plane and forwarding).</t>
        <section anchor="compromise-of-an-isd">
          <name>Compromise of an ISD</name>
          <t>In SCION there is no central authority that could "switch off" an ISD as each relies on its own independent trust roots. Each AS within an ISD is therefore dependant on its ISD's PKI for its functioning, although the following compromises are potentially possible:</t>
          <ul spacing="normal">
            <li>
              <t>At TRC level: The private root keys of the root certificates contained in an TRC are used to sign CA certificates. If one of these private root keys is compromised, the adversary could issue illegitimate CA certificates which may be used in further attacks. To maliciously  perform a TRC update, an attacker would need to compromise multiple voting keys, the number of which is dependent on the voting quorum set in the TRC - the higher the quorum, the more unlikely a malicious update will be.</t>
            </li>
            <li>
              <t>At CA level: The private keys of an ISD's CA certificates are used to sign the AS certificates and all ASes within an ISD obtain certificates directly from the CAs. If one of the CA’s keys is compromised, an adversary could issue illegitimate AS certificates, which may be used in further attacks.</t>
            </li>
            <li>
              <t>At AS level: Each AS within an ISD signs control plane messages with their AS private key. If the keys of an AS are compromised by an adversary, this adversary can illegitimately sign control plane messages including Path Construction Beacons (PCBs). This means that the adversary can manipulate the PCBs and propagate them to neighboring ASes or register/store them as path segments.</t>
            </li>
          </ul>
        </section>
        <section anchor="recovery-from-compromise">
          <name>Recovery from Compromise</name>
          <t>This section deals with possible recovery from the compromises discussed in the previous paragraph.
As described in <xref target="substitutes-to-revocation"/>, there is no revocation in the Control Plane PKI.</t>
          <ul spacing="normal">
            <li>
              <t>At TRC level: If any of the root keys or voting keys contained in the TRC are compromised, the TRC <bcp14>MUST</bcp14> be updated as described in <xref target="update"/>. A trust reset is only required in the case the number of compromised  keys at the same time is greater or equal than the TRC's quorum (see <xref target="quorum"/>) and a invalid update has been produced and distributed in the network.</t>
            </li>
            <li>
              <t>At CA level: If the private key related to a CA certificate is compromised, the impacted CA AS <bcp14>MUST</bcp14> obtain a new CA certificate from the corresponding root AS. CA certificates are generally short lived to limit the impact of compromise. Alternatively, with a TRC update, a new root keys can also be forced, invalidating the compromised CA.</t>
            </li>
            <li>
              <t>At AS level: In the event of a key compromise of a (non-core) AS, the impacted AS needs to obtain a new certificate from its CA. This process will vary depending on internal issuance protocols.</t>
            </li>
          </ul>
        </section>
      </section>
      <section anchor="denial-of-service-attacks">
        <name>Denial of Service Attacks</name>
        <t>The Control Plane PKI lays the foundation for the authentication procedures in SCION by providing each AS within a specific ISD with a certified key pair. These keys enable the authentication of all control plane messages - every AS and endpoint can verify all control plane messages by following the certificate chain.</t>
        <t>The relying party <bcp14>MUST</bcp14> be able to discover and obtain new or updated cryptographic material. For the control plane messages, this is simplified by the observation that the sender of a message (e.g. of a path construction beacon during path exploration or a path segment during a path lookup) always has all the cryptographic material to verify it. Thus, the receiver can always immediately obtain all the cryptographic material from the message originator.
As the corresponding PKI messaging thus only occurs when the control plane is already communicating, these requests to obtain cryptographic material are not prone to additional denial of service attacks. We therefore refer to <xref target="I-D.dekater-scion-controlplane"/> for a more detailed description of DoS vulnerabilities of control-plane messages.</t>
        <t>For certificate renewal, on the other hand, this does not apply. Denial of Service on the CA infrastructure or on the communication links from the individual ASes to the CA could be used by an attacker to prevent victim ASes from renewing their certificates, halting the path discovery process. This risk can be mitigated in multiple ways:</t>
        <ul spacing="normal">
          <li>
            <t>CAs only need to be accessible from ASes within the ISD, reducing the potential DoS attack surface</t>
          </li>
          <li>
            <t>ISDs usually rely on multiple CAs</t>
          </li>
          <li>
            <t>ISDs could create policies and processes to renew certificates out-of-band</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
      <t>The SCION AS and ISD number are SCION-specific numbers. They are currently allocated by Anapaya Systems, a provider of SCION-based networking software and solutions (see <xref target="ISD-AS-assignments"/>). This task is currently being transitioned from Anapaya to the SCION Association.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="I-D.dekater-scion-controlplane">
          <front>
            <title>SCION Control Plane</title>
            <author fullname="Corine de Kater" initials="C." surname="de Kater">
              <organization>SCION Association</organization>
            </author>
            <author fullname="Nicola Rustignoli" initials="N." surname="Rustignoli">
              <organization>SCION Association</organization>
            </author>
            <author fullname="Samuel Hitz" initials="S." surname="Hitz">
              <organization>Anapaya Systems</organization>
            </author>
            <date day="19" month="October" year="2024"/>
            <abstract>
              <t>   This document describes the Control Plane of the path-aware, inter-
   domain network architecture SCION (Scalability, Control, and
   Isolation On Next-generation networks).  One of the basic
   characteristics of SCION is that it gives path control to SCION-
   capable endpoints that can choose between multiple path options,
   enabling the optimization of network paths.  The Control Plane is
   responsible for discovering these paths and making them available to
   the endpoints.

   The main goal of the SCION Control Plane is to create and manage path
   segments which can then be combined into forwarding paths to transmit
   packets in the data plane.  This document discusses how path
   exploration is realized through beaconing and how path segments are
   created and registered.  Each SCION Autonomous System (AS) can
   register segments according to its own policy and can specify which
   path properties and algorithm(s) to use in the selection procedure.
   The document also describes the path lookup process whereby endpoints
   obtain path segments - a fundamental building block for the
   construction of end-to-end paths.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-dekater-scion-controlplane-06"/>
        </reference>
        <reference anchor="I-D.dekater-scion-dataplane">
          <front>
            <title>SCION Data Plane</title>
            <author fullname="Corine de Kater" initials="C." surname="de Kater">
              <organization>SCION Association</organization>
            </author>
            <author fullname="Nicola Rustignoli" initials="N." surname="Rustignoli">
              <organization>SCION Association</organization>
            </author>
            <author fullname="Samuel Hitz" initials="S." surname="Hitz">
              <organization>Anapaya Systems</organization>
            </author>
            <date day="8" month="July" year="2024"/>
            <abstract>
              <t>   This document describes the data plane of the path-aware, inter-
   domain network architecture SCION (Scalability, Control, and
   Isolation On Next-generation networks).  One of the basic
   characteristics of SCION is that it gives path control to endpoints.
   The SCION control plane is responsible for discovering these paths
   and making them available as path segments to the endpoints.  The
   role of the SCION data plane is to combine the path segments into
   end-to-end paths, and forward data between endpoints according to the
   specified path.

   The SCION data plane fundamentally differs from today's IP-based data
   plane in that it is _path-aware_: In SCION, interdomain forwarding
   directives are embedded in the packet header.  This document first
   provides a detailed specification of the SCION data packet format as
   well as the structure of the SCION header.  SCION also supports
   extension headers - these are described, too.  The document then
   shows the life cycle of a SCION packet while traversing the SCION
   Internet.  This is followed by a specification of the SCION path
   authorization mechanisms and the packet processing at routers.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-dekater-scion-dataplane-02"/>
        </reference>
        <reference anchor="RFC5280">
          <front>
            <title>Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile</title>
            <author fullname="D. Cooper" initials="D." surname="Cooper"/>
            <author fullname="S. Santesson" initials="S." surname="Santesson"/>
            <author fullname="S. Farrell" initials="S." surname="Farrell"/>
            <author fullname="S. Boeyen" initials="S." surname="Boeyen"/>
            <author fullname="R. Housley" initials="R." surname="Housley"/>
            <author fullname="W. Polk" initials="W." surname="Polk"/>
            <date month="May" year="2008"/>
            <abstract>
              <t>This memo profiles the X.509 v3 certificate and X.509 v2 certificate revocation list (CRL) for use in the Internet. An overview of this approach and model is provided as an introduction. The X.509 v3 certificate format is described in detail, with additional information regarding the format and semantics of Internet name forms. Standard certificate extensions are described and two Internet-specific extensions are defined. A set of required certificate extensions is specified. The X.509 v2 CRL format is described in detail along with standard and Internet-specific extensions. An algorithm for X.509 certification path validation is described. An ASN.1 module and examples are provided in the appendices. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5280"/>
          <seriesInfo name="DOI" value="10.17487/RFC5280"/>
        </reference>
        <reference anchor="RFC5480">
          <front>
            <title>Elliptic Curve Cryptography Subject Public Key Information</title>
            <author fullname="S. Turner" initials="S." surname="Turner"/>
            <author fullname="D. Brown" initials="D." surname="Brown"/>
            <author fullname="K. Yiu" initials="K." surname="Yiu"/>
            <author fullname="R. Housley" initials="R." surname="Housley"/>
            <author fullname="T. Polk" initials="T." surname="Polk"/>
            <date month="March" year="2009"/>
            <abstract>
              <t>This document specifies the syntax and semantics for the Subject Public Key Information field in certificates that support Elliptic Curve Cryptography. This document updates Sections 2.3.5 and 5, and the ASN.1 module of "Algorithms and Identifiers for the Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile", RFC 3279. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5480"/>
          <seriesInfo name="DOI" value="10.17487/RFC5480"/>
        </reference>
        <reference anchor="RFC5652">
          <front>
            <title>Cryptographic Message Syntax (CMS)</title>
            <author fullname="R. Housley" initials="R." surname="Housley"/>
            <date month="September" year="2009"/>
            <abstract>
              <t>This document describes the Cryptographic Message Syntax (CMS). This syntax is used to digitally sign, digest, authenticate, or encrypt arbitrary message content. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="70"/>
          <seriesInfo name="RFC" value="5652"/>
          <seriesInfo name="DOI" value="10.17487/RFC5652"/>
        </reference>
        <reference anchor="RFC5758">
          <front>
            <title>Internet X.509 Public Key Infrastructure: Additional Algorithms and Identifiers for DSA and ECDSA</title>
            <author fullname="Q. Dang" initials="Q." surname="Dang"/>
            <author fullname="S. Santesson" initials="S." surname="Santesson"/>
            <author fullname="K. Moriarty" initials="K." surname="Moriarty"/>
            <author fullname="D. Brown" initials="D." surname="Brown"/>
            <author fullname="T. Polk" initials="T." surname="Polk"/>
            <date month="January" year="2010"/>
            <abstract>
              <t>This document updates RFC 3279 to specify algorithm identifiers and ASN.1 encoding rules for the Digital Signature Algorithm (DSA) and Elliptic Curve Digital Signature Algorithm (ECDSA) digital signatures when using SHA-224, SHA-256, SHA-384, or SHA-512 as the hashing algorithm. This specification applies to the Internet X.509 Public Key infrastructure (PKI) when digital signatures are used to sign certificates and certificate revocation lists (CRLs). This document also identifies all four SHA2 hash algorithms for use in the Internet X.509 PKI. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5758"/>
          <seriesInfo name="DOI" value="10.17487/RFC5758"/>
        </reference>
        <reference anchor="RFC9217">
          <front>
            <title>Current Open Questions in Path-Aware Networking</title>
            <author fullname="B. Trammell" initials="B." surname="Trammell"/>
            <date month="March" year="2022"/>
            <abstract>
              <t>In contrast to the present Internet architecture, a path-aware internetworking architecture has two important properties: it exposes the properties of available Internet paths to endpoints, and it provides for endpoints and applications to use these properties to select paths through the Internet for their traffic. While this property of "path awareness" already exists in many Internet-connected networks within single domains and via administrative interfaces to the network layer, a fully path-aware internetwork expands these concepts across layers and across the Internet.</t>
              <t>This document poses questions in path-aware networking, open as of 2021, that must be answered in the design, development, and deployment of path-aware internetworks. It was originally written to frame discussions in the Path Aware Networking Research Group (PANRG), and has been published to snapshot current thinking in this space.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9217"/>
          <seriesInfo name="DOI" value="10.17487/RFC9217"/>
        </reference>
        <reference anchor="X.509" target="https://handle.itu.int/11.1002/1000/13031">
          <front>
            <title>ITU-T X.509 (10/2016) | Information technology – Open Systems Interconnection – The Directory: Public-key and attribute certificate frameworks</title>
            <author>
              <organization/>
            </author>
            <date year="2016" month="January"/>
          </front>
        </reference>
        <reference anchor="X.680" target="https://handle.itu.int/11.1002/1000/14468">
          <front>
            <title>ITU-T X.680 (02/2021) | Information technology - Abstract Syntax Notation One (ASN.1): Specification of basic notation</title>
            <author>
              <organization/>
            </author>
            <date year="2021" month="January"/>
          </front>
        </reference>
        <reference anchor="X.690" target="https://handle.itu.int/11.1002/1000/14472">
          <front>
            <title>ITU-T X.690 (02/2021) | Information technology - ASN.1 encoding rules: Specification of Basic Encoding Rules (BER), Canonical Encoding Rules (CER) and Distinguished Encoding Rules (DER)</title>
            <author>
              <organization/>
            </author>
            <date year="2021" month="January"/>
          </front>
        </reference>
        <reference anchor="X9.62">
          <front>
            <title>ANSI X9.62-1998 | Public Key Cryptography For The Financial Services Industry: The Elliptic Curve Digital Signature Algorithm</title>
            <author>
              <organization/>
            </author>
            <date year="1998"/>
          </front>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="I-D.dekater-panrg-scion-overview">
          <front>
            <title>SCION Overview</title>
            <author fullname="Corine de Kater" initials="C." surname="de Kater">
              <organization>SCION Association</organization>
            </author>
            <author fullname="Nicola Rustignoli" initials="N." surname="Rustignoli">
              <organization>SCION Association</organization>
            </author>
            <author fullname="Adrian Perrig" initials="A." surname="Perrig">
              <organization>ETH Zuerich</organization>
            </author>
            <date day="7" month="May" year="2024"/>
            <abstract>
              <t>   The Internet has been successful beyond even the most optimistic
   expectations and is intertwined with many aspects of our society.
   But although the world-wide communication system guarantees global
   reachability, the Internet has not primarily been built with security
   and high availability in mind.  The next-generation inter-network
   architecture SCION (Scalability, Control, and Isolation On Next-
   generation networks) aims to address these issues.  SCION was
   explicitly designed from the outset to offer security and
   availability by default.  The architecture provides route control,
   failure isolation, and trust information for end-to-end
   communication.  It also enables multi-path routing between hosts.

   This document discusses the motivations behind the SCION architecture
   and gives a high-level overview of its fundamental components,
   including its authentication model and the setup of the control- and
   data plane.  As SCION is already in production use today, the
   document concludes with an overview of SCION deployments.

   For detailed descriptions of SCION's components, refer to
   [I-D.dekater-scion-pki], [I-D.dekater-scion-controlplane], and
   [I-D.dekater-scion-dataplane].  A more detailed analysis of
   relationships and dependencies between components is available in
   [I-D.rustignoli-scion-components].

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-dekater-panrg-scion-overview-06"/>
        </reference>
        <reference anchor="ISD-AS-assignments" target="https://docs.anapaya.net/en/latest/resources/isd-as-assignments/">
          <front>
            <title>SCION ISD and AS Assignments</title>
            <author>
              <organization/>
            </author>
            <date year="2024"/>
          </front>
        </reference>
        <reference anchor="RFC5398">
          <front>
            <title>Autonomous System (AS) Number Reservation for Documentation Use</title>
            <author fullname="G. Huston" initials="G." surname="Huston"/>
            <date month="December" year="2008"/>
            <abstract>
              <t>To reduce the likelihood of conflict and confusion when relating documented examples to deployed systems, two blocks of Autonomous System numbers (ASNs) are reserved for use in examples in RFCs, books, documentation, and the like. This document describes the reservation of two blocks of ASNs as reserved numbers for use in documentation. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5398"/>
          <seriesInfo name="DOI" value="10.17487/RFC5398"/>
        </reference>
        <reference anchor="RFC6996">
          <front>
            <title>Autonomous System (AS) Reservation for Private Use</title>
            <author fullname="J. Mitchell" initials="J." surname="Mitchell"/>
            <date month="July" year="2013"/>
            <abstract>
              <t>This document describes the reservation of Autonomous System Numbers (ASNs) that are for Private Use only, known as Private Use ASNs, and provides operational guidance on their use. This document enlarges the total space available for Private Use ASNs by documenting the reservation of a second, larger range and updates RFC 1930 by replacing Section 10 of that document.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="6"/>
          <seriesInfo name="RFC" value="6996"/>
          <seriesInfo name="DOI" value="10.17487/RFC6996"/>
        </reference>
        <reference anchor="RFC8210">
          <front>
            <title>The Resource Public Key Infrastructure (RPKI) to Router Protocol, Version 1</title>
            <author fullname="R. Bush" initials="R." surname="Bush"/>
            <author fullname="R. Austein" initials="R." surname="Austein"/>
            <date month="September" year="2017"/>
            <abstract>
              <t>In order to verifiably validate the origin Autonomous Systems and Autonomous System Paths of BGP announcements, routers need a simple but reliable mechanism to receive Resource Public Key Infrastructure (RFC 6480) prefix origin data and router keys from a trusted cache. This document describes a protocol to deliver them.</t>
              <t>This document describes version 1 of the RPKI-Router protocol. RFC 6810 describes version 0. This document updates RFC 6810.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8210"/>
          <seriesInfo name="DOI" value="10.17487/RFC8210"/>
        </reference>
        <reference anchor="BARRERA17">
          <front>
            <title>The SCION internet architecture</title>
            <author fullname="David Barrera" initials="D." surname="Barrera">
              <organization>ETH Zürich in Switzerland</organization>
            </author>
            <author fullname="Laurent Chuat" initials="L." surname="Chuat">
              <organization>ETH Zürich in Switzerland</organization>
            </author>
            <author fullname="Adrian Perrig" initials="A." surname="Perrig">
              <organization>ETH Zürich in Switzerland</organization>
            </author>
            <author fullname="Raphael M. Reischuk" initials="R." surname="Reischuk">
              <organization>ETH Zürich in Switzerland</organization>
            </author>
            <author fullname="Pawel Szalachowski" initials="P." surname="Szalachowski">
              <organization>ETH Zürich in Switzerland</organization>
            </author>
            <date month="May" year="2017"/>
          </front>
          <seriesInfo name="Communications of the ACM" value="vol. 60, no. 6, pp. 56-65"/>
          <seriesInfo name="DOI" value="10.1145/3085591"/>
          <refcontent>Association for Computing Machinery (ACM)</refcontent>
        </reference>
        <reference anchor="CHUAT22" target="https://doi.org/10.1007/978-3-031-05288-0">
          <front>
            <title>The Complete Guide to SCION</title>
            <author initials="L." surname="Chuat" fullname="Laurent Chuat">
              <organization>ETH Zuerich</organization>
            </author>
            <author initials="M." surname="Legner" fullname="Markus Legner">
              <organization>ETH Zuerich</organization>
            </author>
            <author initials="D." surname="Basin" fullname="David Basin">
              <organization>ETH Zuerich</organization>
            </author>
            <author initials="D." surname="Hausheer" fullname="David Hausheer">
              <organization>Otto von Guericke University Magdeburg</organization>
            </author>
            <author initials="S." surname="Hitz" fullname="Samuel Hitz">
              <organization>Anapaya Systems</organization>
            </author>
            <author initials="P." surname="Mueller" fullname="Peter Mueller">
              <organization>ETH Zuerich</organization>
            </author>
            <author initials="A." surname="Perrig" fullname="Adrian Perrig">
              <organization>ETH Zuerich</organization>
            </author>
            <date year="2022"/>
          </front>
          <seriesInfo name="ISBN" value="978-3-031-05287-3"/>
        </reference>
        <reference anchor="SCIONLAB" target="https://ieeexplore.ieee.org/abstract/document/9259355">
          <front>
            <title>SCIONLAB - A Next-Generation Internet Testbed</title>
            <author initials="J." surname="Kown" fullname="Jonghoon Kwon">
              <organization>ETH Zuerich</organization>
            </author>
            <author initials="J." surname="García-Pardo" fullname="Juan A. García-Pardo">
              <organization>ETH Zuerich</organization>
            </author>
            <author initials="M." surname="Legner" fullname="Markus Legner">
              <organization>ETH Zuerich</organization>
            </author>
            <author initials="F." surname="Wirz" fullname="François Wirz">
              <organization>ETH Zuerich</organization>
            </author>
            <author initials="M." surname="Frei" fullname="Matthias Frei">
              <organization>ETH Zuerich</organization>
            </author>
            <author initials="D." surname="Hausheer" fullname="David Hausheer">
              <organization>Otto von Guericke University Magdeburg</organization>
            </author>
            <author initials="A." surname="Perrig" fullname="Adrian Perrig">
              <organization>ETH Zuerich</organization>
            </author>
            <date year="2020"/>
          </front>
        </reference>
      </references>
    </references>
    <?line 1438?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Many thanks go to Fritz Steinmann (SIX Group AG), Juan A. Garcia Prado (ETH Zurich) and Russ Housley (IETF) for reviewing this document. We are also very grateful to Adrian Perrig (ETH Zurich), for providing guidance and feedback about each aspect of SCION. Finally, we are indebted to the SCION development teams of Anapaya and ETH Zurich, for their practical knowledge and for the documentation about the CP PKI, as well as to the authors of <xref target="CHUAT22"/> - the book is an important source of input and inspiration for this draft.</t>
    </section>
    <section numbered="false" anchor="deployment-testing-scionlab">
      <name>Deployment Testing: SCIONLab</name>
      <t>SCIONLab is a global research network that is available to test the SCION architecture. You can create and use your ASes using your own computation resources which allows you to gain real-world experience of deploying and managing a SCION network.</t>
      <t>More information can be found on the SCIONLab website and in the <xref target="SCIONLAB"/> paper.</t>
    </section>
    <section numbered="false" anchor="initial-ceremony">
      <name>Appendix A. Signing Ceremony Initial TRC</name>
      <t>The following sections describe a possible Signing Ceremony for the first (initial) base TRC of an ISD. Although each ISD is free to decide how to shape this ceremony, it is recommended establishing a procedure similar to the one below.</t>
      <section numbered="false" anchor="ceremony-participants">
        <name> Ceremony Participants</name>
        <t>A Signing Ceremony includes participants from member organizations of the respective Isolation Domain.
The participants of the Signing Ceremony fulfill different roles:</t>
        <ul spacing="normal">
          <li>
            <t>The <strong>Ceremony Administrator</strong> is in charge of moderating the signing process. The Ceremony Administrator guides all participants through the steps and may also act as an intermediary between participants when they share information with each other.</t>
          </li>
          <li>
            <t>A <strong>Voting AS Representative</strong> is capable of creating voting signatures on the TRC. The Voting Representative is in possession of a device with the private keys of the respective certificates in the TRC.</t>
          </li>
          <li>
            <t>A <strong>Witness</strong> is any person that participates in the ceremony as a passive entity. The Witness has no active role in any of the steps of the ceremony but can stop the process and ask for more information if they feel the integrity of the process might have been compromised.</t>
          </li>
        </ul>
        <t><strong>Note:</strong> It is assumed that the member organizations of the ISD have decided in advance, before the Signing Ceremony, on the roles of the ceremony participants. That is, they have reached agreement about the Certificate Authority (CA) ASes (that will also issue the root certificates), the voting ASes, the voting AS representatives, the Ceremony Administrator and the Witnesses.</t>
        <t><strong>Note:</strong> For the Signing Ceremony, it is assumed that all parties are trustworthy. Issues encountered during the ceremony are assumed to be caused by honest mistakes and not by malicious intent. Hash comparison checks are included to counter mistakes, such that every participant is sure that they operate on the same data. Furthermore, the private keys of each participant never leave their machine.The Ceremony Administrator does not have to be entrusted with private keys.</t>
      </section>
      <section numbered="false" anchor="ceremony-preparations">
        <name>Ceremony Preparations</name>
        <t>Prior to the Signing Ceremony, participants <bcp14>MUST</bcp14> decide on the physical location of the ceremony, the devices that will be used during the ceremony and the policy of the ISD. Specifically, the voting entities agree on the following parameters:</t>
        <ul spacing="normal">
          <li>
            <t>validity of the TRC,</t>
          </li>
          <li>
            <t>voting quorum,</t>
          </li>
          <li>
            <t>core ASes/authoritative ASes,</t>
          </li>
          <li>
            <t>description, and</t>
          </li>
          <li>
            <t>list of Control Plane root certificates.</t>
          </li>
        </ul>
        <t>When these values are agreed upon, a number of voters equal to or larger than the specified voting quorum, needs to execute the Signing Ceremony. For the base TRC, all voting entities need to be present with both their sensitive and regular voting keys. The ceremony process is structured in multiple rounds of data sharing. The Ceremony Administrator leads the interaction and provides instructions to each participant.</t>
        <section numbered="false" anchor="location">
          <name> Location</name>
          <t>The location must provide electricity and enough power sockets for each participant. Furthermore, it should provide a monitor (or projector) that allows the Ceremony Administrator to screencast.</t>
        </section>
        <section numbered="false" anchor="devices">
          <name> Devices</name>
          <t>Each participant brings their own device that is provisioned with the required material, as described below.</t>
          <ul spacing="normal">
            <li>
              <t>Device to exchange data. This device can either be provided by the Ceremony Administrator or by any of the voting representatives.</t>
            </li>
            <li>
              <t>Ceremony Administrator's device: The Ceremony Administrator should bring a machine that is capable of creating and verifying a TRC. Furthermore, it needs to be able to compute the SHA-512 digest (hash value) of files.</t>
            </li>
            <li>
              <t>Voting representative's device: The voting representative should bring a machine that is capable of signing and verifying TRCs. Thus, the machine needs to have access to all the voting private keys. Furthermore, it needs to be able to compute the SHA-512 digest (hash value) of the files.</t>
            </li>
          </ul>
          <t>It is very important that all devices, especially the data exchange device, are not compromised. Therefore, the ceremony should ideally include a procedure to verify that the devices are secure.</t>
        </section>
        <section numbered="false" anchor="preparation-steps">
          <name>Preparation Steps</name>
          <t>Each party involved in a Signing Ceremony <bcp14>MUST</bcp14> go through several defined steps in preparation for the ceremony. This section outlines these steps.</t>
          <section numbered="false" anchor="preparatory-tasks-of-the-ceremony-administrator">
            <name> Preparatory Tasks of the Ceremony Administrator</name>
            <t>In the preparation phase of the TRC Signing Ceremony, the Ceremony Administrator has the following tasks:</t>
            <ol spacing="normal" type="1"><li>
                <t>Send out the Signing Ceremony description and phases to the participants, all in digital form.</t>
              </li>
              <li>
                <t>Remind all representatives of the voting ASes that they need to agree on a common TRC policy before scheduling the Signing Ceremony.</t>
              </li>
              <li>
                <t>Bring all digitally distributed documents as a printout for all parties that take part.</t>
              </li>
            </ol>
          </section>
          <section numbered="false" anchor="preparatory-tasks-of-the-voting-as-representatives">
            <name> Preparatory Tasks of the Voting AS Representatives</name>
            <t>The preparatory task of the representatives of the voting ASes (short: the voters) is to generate the necessary certificates.</t>
            <t><strong>Important:</strong> Before generating the certificates, all voters need to agree on a preliminary TRC policy, in particular on the <strong>validity period of the TRC</strong>. This is necessary because all the certificates that are generated in advance <bcp14>MUST</bcp14> <strong>cover the full TRC validity period</strong>. The other policy values could be amended during the ceremony itself.</t>
            <t>Each representative of a voting AS <bcp14>MUST</bcp14> create the following keys and certificates:</t>
            <ul spacing="normal">
              <li>
                <t>A sensitive voting private key, and a certificate holding the corresponding public key.</t>
              </li>
              <li>
                <t>A regular voting private key, and a certificate holding the corresponding public key.</t>
              </li>
            </ul>
          </section>
          <section numbered="false" anchor="preparatory-tasks-of-the-certificate-authority-ases">
            <name>Preparatory Tasks of the Certificate Authority ASes</name>
            <t>Each AS that will be a Certificate Authority (a so-called CA AS) <bcp14>MUST</bcp14> ensure that the following key and certificate is available:</t>
            <ul spacing="normal">
              <li>
                <t>A control plane root private key, and a certificate holding the corresponding public key.</t>
              </li>
            </ul>
            <t>This implies that there will be one control plane root certificate per CA AS.</t>
            <t><strong>Note</strong>: Representatives of CA ASes need not be present at the signing ceremony themselves as they do not have to put a signature on the TRC. However, if a CA AS does not attend the signing ceremony in person, it <bcp14>MUST</bcp14> ensure that the corresponding root certificate is available at the ceremony to be shared.</t>
          </section>
        </section>
      </section>
      <section numbered="false" anchor="ceremony-process">
        <name> Ceremony Process</name>
        <t>The Signing Ceremony process for the initial base TRC is structured in multiple rounds of data sharing. The Ceremony Administrator leads the interaction and instructs each participant with what to do.</t>
        <t>The ceremony process contains the following phases:</t>
        <ul spacing="normal">
          <li>
            <t><xref target="phase1">Phase 1: Certificate Exchange</xref>. In the first phase of the ceremony, all voting parties share the certificates that must be part of the TRC with the Ceremony Administrator.</t>
          </li>
          <li>
            <t><xref target="phase2">Phase 2: Generation of the TRC Payload</xref>. In the second phase, the Ceremony Administrator generates the TRC payload based on the bundled certificates and the agreed upon ISD policy.</t>
          </li>
          <li>
            <t><xref target="phase3">Phase 3: TRC Signing</xref>. In the third phase, each voting representative attaches the required signatures to the TRC.</t>
          </li>
          <li>
            <t><xref target="phase4">Phase 4: TRC Validation</xref>. In the final phase of the ceremony, all voting representatives share the signed TRC with the Ceremony Administrator, who aggregates it in a single signed TRC document.</t>
          </li>
        </ul>
        <t>A detailed description of each phase follows below.</t>
        <section numbered="false" anchor="phase1">
          <name> Phase 1: Certificate Exchange</name>
          <t>In Phase 1 of the Signing Ceremony, all parties share the certificates that must be part of the TRC with the Ceremony Administrator. For the representatives of the voting ASes, these are the sensitive and the regular voting certificates. For the representatives of the CA ASes, these are the Control Plane root certificates. If a CA AS does not attend the signing ceremony in person, it <bcp14>MUST</bcp14> ensure that the corresponding root certificate is available at the ceremony to be shared.</t>
          <t>The actual sharing happens over the data exchange device, which goes from one voting representative to the next. Each representative copies the requested certificates from their own machine onto the data exchange device, before forwarding the device to the next voter. The last representative returns the device to the Ceremony Administrator.</t>
          <t><strong>Important:</strong> Note that only the <strong>certificates</strong> need to be shared during this step, <strong>not</strong> the private keys. Copying a private key by mistake invalidates the security of the ceremony.</t>
          <t>For each provided certificate, the Ceremony Administrator checks that its validity period covers the previously agreed-upon TRC validity, that the signature algorithms are correct, and that the certificate is of the valid type (root, sensitive voting or regular voting certificate). If the results of these checks are as expected, the Ceremony Administrator computes the SHA256 sum for each certificate.</t>
          <t>The Ceremony Administrator then aggregates and bundles the provided certificates, and calculates the hash value (SHA-512 digest) over the entire bundle. Additionally, the Ceremony Administrator displays all hash values on the monitor.</t>
          <t>The Ceremony Administrator now shares the bundle with the representatives of the voting and CA ASes. This could happen again via the data exchange device, which goes from one representative to the next. Each representative verifies that the certificates they contributed have the same hash value as the displayed value on the monitor. Furthermore, all representatives <bcp14>MUST</bcp14> confirm that the hash value of the bundled certificates on their machine is equal to the value on the monitor.</t>
          <t>Phase 1 is concluded when every representative has confirmed that the SHA256 sums are correct.</t>
          <t><strong>Note:</strong> If there is a mismatch in any of the SHA256 sums, Phase 1 needs to be repeated.</t>
        </section>
        <section numbered="false" anchor="phase2">
          <name>Phase 2: Generation of the TRC Payload</name>
          <t>In Phase 2 of the ceremony, the Ceremony Administrator generates the TRC payload based on the bundled certificates and the agreed upon ISD policy. The result is displayed on the monitor along with a hash value (SHA-512 digest).</t>
          <t>To be able to generate the payload, the Ceremony Administrator <bcp14>MUST</bcp14> ask the voting representatives for:</t>
          <ul spacing="normal">
            <li>
              <t>The ISD number of the ISD. The number (identifier, ID) of an ISD <bcp14>MUST</bcp14> be chosen and agreed upon by the participants during the signing ceremony of the ISD's initial TRC. The Ceremony Administrator needs the ISD number to specify the identifier (ID) of the initial TRC. This <tt>iD</tt> is part of the TRC payload. For more information, see <xref target="id"/>.</t>
            </li>
            <li>
              <t>The description of the TRC. For more information, see <xref target="description"/>.</t>
            </li>
            <li>
              <t>The AS numbers of the core ASes of the ISD. For more information, see <xref target="core"/>.</t>
            </li>
            <li>
              <t>The AS numbers of the authoritative ASes of the ISD. For more information, see <xref target="auth"/>.</t>
            </li>
            <li>
              <t>The voting quorum for the next TRC update. For more information, see <xref target="quorum"/>.</t>
            </li>
            <li>
              <t>The validity period of the new TRC. For more information, see <xref target="validity"/>.</t>
            </li>
          </ul>
          <t><strong>Note:</strong> It is assumed that the voting ASes have agreed on the answers to the above questions in advance, before the signing ceremony.</t>
          <t>The Ceremony Administrator can now specify the TRC payload variables in the payload template file, and show the filled-in template on the monitor. When the voters have verified the data, the Ceremony Administrator can compute the DER encoding of the TRC data as well as the SHA256 sum of the TRC payload file. The Ceremony Administrator then distributes the TRC payload (via the data exchange device) to all voting representatives, who verify the payload's hash value. The voters do this by computing the hash value of the TRC payload on their machine and checking whether their value matches the one on the monitor.</t>
          <t>Phase 2 successfully concludes once every voting representative confirms that the contents of the TRC payload are correct.</t>
        </section>
        <section numbered="false" anchor="phase3">
          <name>Phase 3: TRC Signing</name>
          <t>In Phase 3, each voting representative attaches a signature created with each one of their private voting keys to the TRC (payload file). They do this on their own machine. The purpose of signing a TRC that contains newly introduced public keys with the corresponding private keys is to prove the possession of the private keys.</t>
          <t>Phase 3 concludes after all voting representatives have cast their votes.</t>
        </section>
        <section numbered="false" anchor="phase4">
          <name> Phase 4: TRC Validation</name>
          <t>In Phase 4, all voting representatives share the signed TRC with the Ceremony Administrator. This happens again over the data exchange device, which goes from one voter to the next. Each voting representative copies the TRC payload signed with the voter's private keys from their own machine onto the data exchange device. The last voter returns the device to the Ceremony Administrator, who assembles the final TRC by aggregating the payload data with the votes (signatures) cast by the voting representatives.</t>
          <t>The signed TRC is validated by inspecting its contents on the monitor and verifying the signatures based on the exchanged certificates in Phase 1. The ceremony administrator then shares the signed TRC with all participants. Each of them <bcp14>MUST</bcp14> then inspect it once more, and verify it based on the certificates exchanged in Phase 1. At this point, the ceremony is completed. All participants have the signed TRC, and can use it to distribute the trust anchors for their ISD.</t>
        </section>
      </section>
    </section>
    <section numbered="false" anchor="change-log">
      <name>Change Log</name>
      <t>Changes made to drafts since ISE submission. This section is to be removed before publication.</t>
      <section numbered="false" anchor="draft-dekater-scion-pki-07">
        <name>draft-dekater-scion-pki-07</name>
        <t>Minor changes:</t>
        <ul spacing="normal">
          <li>
            <t>Clarified relationship with RPKI.</t>
          </li>
          <li>
            <t>Added this changelog</t>
          </li>
          <li>
            <t>General text editing</t>
          </li>
          <li>
            <t>References: fixed ITU, ANSI, Assigned ISD-AS, fixed cross-reference to text formatting in the CP draft</t>
          </li>
        </ul>
      </section>
      <section numbered="false" anchor="draft-dekater-scion-pki-06">
        <name>draft-dekater-scion-pki-06</name>
        <t>Major changes:</t>
        <ul spacing="normal">
          <li>
            <t>Added overview of SCION components to Introduction section.</t>
          </li>
        </ul>
        <t>Minor changes:</t>
        <ul spacing="normal">
          <li>
            <t>General edits to make terminology consistent, remove duplication and rationalize text.</t>
          </li>
          <li>
            <t>Removed forward references.</t>
          </li>
          <li>
            <t>Added RFC2119 compliant terminology.</t>
          </li>
        </ul>
      </section>
    </section>
  </back>
  <!-- ##markdown-source:
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
AQA=

-->

</rfc>
