<?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.6.39 (Ruby 3.2.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-dekater-scion-pki-04" category="info" submissionType="independent" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.18.0 -->
  <front>
    <title abbrev="SCION CP-PKI">SCION Control-Plane PKI</title>
    <seriesInfo name="Internet-Draft" value="draft-dekater-scion-pki-04"/>
    <author initials="C." surname="de Kater" fullname="Corine de Kater">
      <organization>SCION Association</organization>
      <address>
        <email>cdk@scion.org</email>
      </address>
    </author>
    <author initials="N." surname="Rustignoli" fullname="Nicola Rustignoli">
      <organization>SCION Association</organization>
      <address>
        <email>nic@scion.org</email>
      </address>
    </author>
    <date year="2023" month="September" day="21"/>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 107?>

<t>This document presents the trust concept and design of the SCION <em>control-plane Public Key Infrastructure (PKI)</em>, SCION's public key infrastructure model. SCION (Scalability, Control, and Isolation On Next-generation networks) is a path-aware, inter-domain network architecture. The control-plane PKI, or short CP-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 special trust model based on so-called Isolation Domains.</t>
      <t>This document first introduces the trust model behind the SCION's control-plane PKI, as well as clarifications to the concepts used in it. This is followed by specifications of the different types of certificates and the Trust Root Configuration. The document then specifies how to deploy the whole 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 114?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The control-plane PKI (CP-PKI) lays the foundation for the authentication procedures in SCION. It handles all cryptographic material used in the public key infrastructure of SCION's control plane. This section first introduces the key concepts of the SCION CP-PKI, including the trust model, its core elements (certificates, keys, and roles), and their relationships. The sections after the Introduction provide detailed specifications of the building blocks of the CP-PKI.</t>
      <t><strong>Note:</strong> For extended information on the SCION next-generation inter-domain architecture, see <xref target="CHUAT22"/>, especially Chapter 2, as well as the IETF Internet Drafts <xref target="I-D.scion-overview"/> and <xref target="I-D.scion-components"/>.</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, company, or university can constitute an AS. If an organization operates multiple networks that are not directly connected together, then the different networks are considered different ASes.</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 -construction process (in SCION called "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 must 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 should 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. Also, its revocation can result in a kill-switch for all the entities it certifies. 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>Trust agility (see further below);</li>
          <li>Resilience to single root of trust compromise;</li>
          <li>Multilateral governance; and</li>
          <li>Support for policy versioning and updates.</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). 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 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. The TRC 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 non-compromised 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>
      </section>
      <section anchor="trust-relations-within-an-isolation-domain">
        <name>Trust Relations within an Isolation Domain</name>
        <t>As already mentioned previously, the control-plane PKI, SCION's concept of trust, is organized on ISD-level. 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. A TRC is a fundamental component of an ISD's control-plane PKI. The so-called <strong>base TRC</strong> constitutes the ISD's trust anchor. It 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. 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 allowed by the ISD's trust policy). In this case, a new base TRC is created.</t>
        </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 first impression 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 SCION's control-plane PKI are in X.509 v3 format <xref target="RFC5280"/>. 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>
            <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).</li>
          <li>
            <strong>Certification authorities (CAs)</strong>: CAs are responsible for issuing AS certificates to other ASes and/or themselves.</li>
          <li>
            <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"; the designated ASes that hold the private keys to sign a TRC update are "voting ASes".</li>
          <li>
            <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.</li>
        </ul>
        <t>All further details of the SCION control-plane PKI are specified in the following sections.</t>
      </section>
      <section anchor="trust-as-a-function">
        <name>Trust as a Function</name>
        <t>The SCION 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 must decide about the validity period of the TRC as well as the number of votes required to update a TRC. They must 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 must 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 SCION's 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 in SCION's control-plane PKI. It starts with an overview of the main keys and certificates.</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 and a sensitive TRC update, respectively.</t>
        <t>All certificates in SCION's control-plane PKI are in X.509 v3 format <xref target="RFC5280"/>.</t>
        <t>The next section shows SCION's trust hierarchy. This is followed by sections that describe the main certificates and corresponding key pairs of SCION's control-plane PKI as well as the voting certificates and keys.</t>
        <section anchor="trust-hierarchy">
          <name>Trust Hierarchy</name>
          <t>The trust is anchored in the Trust Root Configuration (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 control-plane root private key is used to sign control-plane CA certificates. Consequently, the control-plane root certificate with the control-plane root public key is used to verify control-plane CA certificates, i.e., root certificates determine which ASes act as CA in an ISD.</t>
          <t>In X.509 terms, CP 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 CP root public key and proof of ownership of the private key are embedded in the Trust Root Configuration (TRC) of an Isolation Domain (ISD), via the self-signed CP root certificate. This facilitates the bootstrapping of trust within an ISD, and marks the CP root certificates as the starting point of an ISD's certificate verification path.</t>
          <t>The recommended <strong>maximum validity period</strong> of a CP root certificate is: 1 year.</t>
          <t><strong>Note</strong>: The TRC of each ISD contains a trusted set of control-plane root certificates. 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 control-plane CA private key is used to sign control-plane AS certificates. Consequently, control-plane CA certificates holding the control-plane CA public key are used to verify control-plane AS certificates.</t>
          <t>The public key needed to verify the CA certificate is in a CP 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 recommended <strong>maximum validity period</strong> of a CP 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 recommended <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 are allowed to 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 are allowed to 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 recommended <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 are allowed to 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 recommended <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's 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 recommended maximum validity period of one year, whereas the recommended maximum validity period of a SCION control-plane CA certificate is 11 days. This is because a root certificate is part of the Trust Root Configuration of an ISD, which itself also has a recommended maximum validity period of one year (see Table 2 below). This ensures that the TRC must 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. Would the control-plane CA and AS certificates be 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 a formal 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 may 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 recommended 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>All certificates used in the SCION control-plane PKI are X.509 v3 certificates. However, the SCION specification is in some places more restrictive. This section defines these additional constraints and conditions compared to <xref target="RFC5280"/> for each type of SCION control-plane PKI certificate.</t>
        <t><strong>Note</strong>: The settings for the SCION-specific constraints and conditions are based on the SCION open-source implementation <eref target="https://github.com/scionproto/scion/">scionproto</eref>. Adjusting these settings to the requirements of a customer implementation may be possible and is allowed.</t>
        <section anchor="basic-fields-scion-specific-constraints-and-conditions">
          <name>Basic Fields: SCION-Specific Constraints and Conditions</name>
          <t>This section briefly describes the fields of the SCION control-plane PKI certificates based on X.509. These fields are relevant for each SCION certificate used in the control plane, regardless of the certificate type. For detailed descriptions of the full generic format of X.509 v3 certificates, see <xref target="RFC5280"/> and <eref target="https://handle.itu.int/11.1002/1000/13031">X509</eref>, clause 7.2. Additionally, the section lists the SCION-specific constraints and conditions compared to <xref target="RFC5280"/>, per certificate field.</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.  </t>
              <ul spacing="normal">
                <li>
                  <strong>SCION constraints</strong>: "v1" and "v2" are not allowed.</li>
                <li>
                  <strong>Additional conditions and remarks</strong>: <bcp14>MUST</bcp14> be set to "v3" (as extensions are used and mandatory in SCION).</li>
              </ul>
            </li>
            <li>
              <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.</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>
                  <strong>SCION constraints</strong>: Currently, SCION only supports the ECDSA signature algorithm. Find all details here: <xref target="certsign"/>.</li>
                <li>
                  <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.</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>This field <bcp14>MUST</bcp14> be non-empty.</li>
                    <li>SCION implementations <bcp14>MUST</bcp14> ONLY use the “UTF8String” value type for all attributes (including the SCION-specific attribute <tt>ISD-AS number</tt>).</li>
                  </ul>
                </li>
                <li>
                  <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"/>.</li>
              </ul>
            </li>
            <li>
              <t><tt>validity</tt> field: Defines the validity period of the certificate.  </t>
              <ul spacing="normal">
                <li>
                  <strong>SCION constraints</strong>: All certificates used in SCION's control-plane PKI <bcp14>MUST</bcp14> have a well-defined expiration date. Certificates with a generalized time value are not valid and <bcp14>MUST</bcp14> be rejected.</li>
                <li>
                  <strong>Additional conditions and remarks</strong>: SCION recommends a specific maximum validity period for each type of control-plane PKI certificate. For details, see <xref target="formal"/>. SCION implementations should adopt these values.</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>This field <bcp14>MUST</bcp14> be non-empty.</li>
                    <li>SCION implementations <bcp14>MUST</bcp14> ONLY use the “UTF8String” value type for all attributes (including the SCION-specific attribute <tt>ISD-AS number</tt>).</li>
                  </ul>
                </li>
                <li>
                  <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"/>.</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>
                  <strong>SCION constraints</strong>: For constraints regarding the algorithm, see the <tt>signature</tt> field.</li>
              </ul>
            </li>
            <li>
              <t><tt>issuerUniqueID</tt> field: If set, it enables reusing the issuer name over time.  </t>
              <ul spacing="normal">
                <li>
                  <strong>SCION constraints</strong>: This field is disallowed in SCION and <bcp14>MUST NOT</bcp14> be used.</li>
              </ul>
            </li>
            <li>
              <t><tt>subjectUniqueID</tt> field: If set, it enables reusing the subject name over time.  </t>
              <ul spacing="normal">
                <li>
                  <strong>SCION constraints</strong>: This field is disallowed in SCION and <bcp14>MUST NOT</bcp14> be used.</li>
              </ul>
            </li>
            <li>
              <tt>extensions</tt> sequence: Defines the extensions of the certificate. For a description of all extensions used in SCION, see <xref target="exts"/>.</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. This list of acceptable signature algorithms is specified in the <tt>signature</tt> field. The list currently only contains the ECDSA signature algorithm (defined in <eref target="https://webstore.ansi.org/standards/ascx9/ansix9621998">X962</eref>). However, the list might be extended in the future. 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> The accepted cryptographic algorithms listed in this document are the only currently accepted cryptographic algorithms. SCION implementations <bcp14>MUST</bcp14> reject cryptographic algorithms not found in the list.</t>
            <t>The only accepted curves for ECDSA are:</t>
            <ul spacing="normal">
              <li>NIST P-256 (NISTFIPS186-4, section D.1.2.3) (named <tt>secp256r1</tt> in <xref target="RFC5480"/>)</li>
              <li>NIST P-384 (NISTFIPS186-4, section D.1.2.4) (named <tt>secp384r1</tt> in <xref target="RFC5480"/>)</li>
              <li>NIST P-521 (NISTFIPS186-4, section D.1.2.5) (named <tt>secp521r1</tt> in <xref target="RFC5480"/>)</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>ECDSA with SHA-256, for a P-256 signing key</li>
              <li>ECDSA with SHA-384, for a P-384 signing key</li>
              <li>ECDSA with SHA-512, for a P-521 signing key</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>. This attribute is specified below.</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 following points apply when setting the attribute value of the <tt>ISD-AS number</tt> attribute:</t>
              <ul spacing="normal">
                <li>The string representation <bcp14>MUST</bcp14> follow the canonical formatting defined in <eref target="https://github.com/scionproto/scion/wiki/ISD-and-AS-numbering">ISD and AS numbering</eref>.</li>
                <li>The canonical string representation uses a dash separator between the ISD and AS numbers.</li>
                <li>The ISD numbers are formatted as decimal.</li>
                <li>The canonical string formatting of AS numbers in the BGP AS range (0, 2<sup>32-1</sup>) is the decimal form. Larger AS numbers, i.e., from 2<sup>32</sup> to 2<sup>48-1</sup>, 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>.</li>
              </ul>
              <t><strong>Example:</strong> AS <tt>ff00:0:110</tt> in ISD <tt>1</tt> is formatted as <tt>1-ff00:0:110</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 <eref target="https://handle.itu.int/11.1002/1000/13031">X509</eref> (10/2016) are clause 7.2 and clause 9, respectively.</t>
          <t>Currently, the following extensions are relevant for SCION:</t>
          <ul spacing="normal">
            <li>
              <tt>authorityKeyIdentifier</tt></li>
            <li>
              <tt>subjectKeyIdentifier</tt></li>
            <li>
              <tt>keyUsage</tt></li>
            <li>
              <tt>extKeyUsage</tt></li>
            <li>
              <tt>basicConstraints</tt></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 <eref target="https://handle.itu.int/11.1002/1000/13031">X509</eref>, 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>
                <tt>keyIdentifier</tt></li>
              <li>
                <tt>authorityCertIssuer</tt></li>
              <li>
                <tt>authorityCertSerialNumber</tt></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 may 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 should 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 <eref target="https://handle.itu.int/11.1002/1000/13031">X509</eref>, 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 <eref target="https://handle.itu.int/11.1002/1000/13031">X509</eref>, 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>
                <tt>digitalSignature</tt>: The public key can be used to verify the digital signature of a control-plane payload.</li>
              <li>
                <tt>contentCommitment</tt>: Not used.</li>
              <li>
                <tt>keyEncipherment</tt>: Not used.</li>
              <li>
                <tt>dataEncipherment</tt>: Not used.</li>
              <li>
                <tt>keyAgreement</tt>: Not used.</li>
              <li>
                <tt>keyCertSign</tt>: The public key can be used to verify the CA signature on a control-plane certificate.</li>
              <li>
                <tt>cRLSign</tt>: Not used.</li>
              <li>
                <tt>encipherOnly</tt>: Not used.</li>
              <li>
                <tt>decipherOnly</tt>: Not used.</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 must 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 should be marked as "critical". That is, the <tt>critical</tt> Boolean attribute of this extension must 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 should 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 should not be used to verify control-plane messages.<br/>
(2) The CA certificate should not 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 <eref target="https://handle.itu.int/11.1002/1000/13031">X509</eref>, 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>
                <tt>id-kp-serverAuth</tt>: If set, the public key can be used for SCION control-plane server authentication.</li>
              <li>
                <tt>id-kp-clientAuth</tt>: If set, the public key can be used for SCION control-plane client authentication.</li>
              <li>
                <tt>id-kp-timeStamping</tt>: If set, the public key can be used for the verification of timestamps.</li>
            </ul>
            <t>Additionally, the Extended Key Usage extension sequence may 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 Trust Root Configuration 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 must be specified as follows:</t>
              <ul spacing="normal">
                <li>Root certificate:<br/> <tt>id-kp-root AttributeType ::= {id-scion id-cppki(1) id-kp(3) 3}</tt></li>
                <li>Regular voting certificate:<br/> <tt>id-kp-regular AttributeType ::= {id-scion id-cppki(1) id-kp(3) 2}</tt></li>
                <li>Sensitive voting certificate:<br/> <tt>id-kp-sensitive AttributeType ::= {id-scion id-cppki(1) id-kp(3) 1}</tt></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 <eref target="https://handle.itu.int/11.1002/1000/13031">X509</eref>, clause 9.4.2.1.</t>
            <t>The <tt>basicConstraints</tt> extension includes the following attributes relevant for SCION:</t>
            <ul spacing="normal">
              <li>
                <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.</li>
              <li>
                <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 allowed length of the certification path.</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 securing the 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 trust root configuration (TRC) is a signed collection of <eref target="https://handle.itu.int/11.1002/1000/13031">X.509</eref> 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><strong>Note:</strong> See <xref target="cert-specs"/> for the general specifications of SCION's control-plane PKI certificates, as well as <xref target="cp-root-cert"/> and <xref target="cp-voting-cert"/>, for the specifications of the control-plane root certificates and voting certificates, respectively.</t>
        <t>This section provides a detailed specification of the TRC. It presents the TRC format definitions and describes the TRC payload fields. The section uses the ITU-T <eref target="https://handle.itu.int/11.1002/1000/14468">X.680</eref> syntax.</t>
        <section anchor="trc-states">
          <name> TRC Types and States</name>
          <t>The following types of TRCs exist:</t>
          <ul spacing="normal">
            <li>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.</li>
            <li>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.</li>
            <li>Update: All non-base TRCs are updated TRCs. They are the product of either a regular or a sensitive update.</li>
          </ul>
          <t>A TRC can have the following states:</t>
          <ul spacing="normal">
            <li>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.</li>
            <li>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.</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 trust root configuration (TRC) of an ISD defines the roots of trust of the ISD, and builds the base 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) <eref target="https://handle.itu.int/11.1002/1000/14472">X.690</eref>. 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>ISD number (<tt>iSD</tt> attribute),</li>
                <li>base number (<tt>baseNumber</tt> attribute), and</li>
                <li>TRC serial number (<tt>serialNumber</tt> attribute).</li>
              </ul>
              <t>All numbers <bcp14>MUST</bcp14> be positive integers.</t>
              <ul spacing="normal">
                <li>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"/>).</li>
                <li>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.</li>
                <li>The <strong>serial number</strong> represents the current update cycle, counting from the initial TRC of a specific ISD.</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. An ISD's initial TRC <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 a TRC 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 <eref target="https://handle.itu.int/11.1002/1000/13031">X.509</eref>.</t>
              <t>In addition to this standard definition, the following constraint applies to the <tt>validity</tt> field of the TRC used in SCION:</t>
              <ul spacing="normal">
                <li>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.</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>the grace period has passed,</li>
                <li>the predecessor’s expiration time is reached, or</li>
                <li>the successor TRC of the new TRC has been announced.</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 should 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 CANNOT 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 optional 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 must 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>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.</li>
                  <li>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.</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>Every authoritative AS <bcp14>MUST</bcp14> be a core AS and be listed in the <tt>coreASes</tt> field.</li>
                <li>Each authoritative AS number <bcp14>MUST</bcp14> be unique in the sequence of authoritative AS numbers. That is, each AS number must appear only once in the <tt>authoritativeASes</tt> field.</li>
              </ul>
              <section anchor="revoking-or-assigning-authoritative-status">
                <name> Revoking or Assigning Authoritative Status</name>
                <ul spacing="normal">
                  <li>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.</li>
                  <li>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.</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>The <tt>description</tt> field <bcp14>SHOULD NOT</bcp14> be empty.</li>
                <li>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.</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 must be one of the following types:</t>
              <ul spacing="normal">
                <li>a sensitive voting certificate,</li>
                <li>a regular voting certificate, or</li>
                <li>a CP root certificate.</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>Each certificate <bcp14>MUST</bcp14> be unique in the sequence of certificates. That is, each certificate must appear only once in the <tt>certificates</tt> field.</li>
                <li>The <tt>issuer</tt> / <tt>serialNumber</tt> pair for each certificate <bcp14>MUST</bcp14> be unique.</li>
                <li>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"/>).</li>
                <li>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.</li>
                <li>Per certificate type, every certificate distinguished name <bcp14>MUST</bcp14> be unique.</li>
              </ul>
              <t>The following must hold for the entire sequence of certificates in the <tt>certificates</tt> field:</t>
              <ul spacing="normal">
                <li>
                  <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"/>) must be smaller than or equal to the number of <em>sensitive</em> voting certificates specified in the TRC's <tt>certificates</tt> field.</li>
                <li>
                  <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"/>) must be smaller than or equal to the number of <em>regular</em> voting certificates specified in the TRC's <tt>certificates</tt> field.</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. Each TRC (payload) is digitally signed. 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"/>. 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 have to fulfil the following additional rules, on top of the general syntax rules from <xref target="RFC5652"/>:</t>
            <ul spacing="normal">
              <li>
                <t><tt>EncapsulatedContentInfo</tt> sequence:
                </t>
                <ul spacing="normal">
                  <li>The <tt>eContentType</tt> field must be set to "id-data".</li>
                  <li>The content of the <tt>eContent</tt> field must 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"/>.</li>
                </ul>
              </li>
              <li>
                <t><tt>SignedData</tt> sequence:
                </t>
                <ul spacing="normal">
                  <li>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"/>).</li>
                  <li>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"/>).</li>
                </ul>
              </li>
              <li>
                <t><tt>SignerIdentifier</tt> choice:
                </t>
                <ul spacing="normal">
                  <li>The type of signer identifier chosen here <bcp14>MUST</bcp14> be <tt>IssuerAndSerialNumber</tt>.</li>
                </ul>
              </li>
              <li>
                <t><tt>SignerInfo</tt> sequence:
                </t>
                <ul spacing="normal">
                  <li>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"/>).</li>
                  <li>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>).</li>
                  <li>The <tt>digestAlgorithm</tt> is determined by the algorithm specified in the <tt>signatureAlgorithm</tt> field.</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, per <xref target="RFC5652"/>. This implies that the signer information can be reordered without affecting verification. Certain operations, however, require TRCs to be equal, according to the following equality 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>The required 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"/>.</li>
              <li>The required signatures for new certificates are implied by the currently valid TRC payload, and, in case of a TRC update, the predecessor payload.</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-plane AS certificate starts in a control-plane root certificate. The control-plane root certificates for a given ISD are distributed via the TRC. 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 must build a collection of root certificates from the latest TRC of the relevant ISD. 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 CP-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. In 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 for which you want 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. The type of update determines the (payload) information that changes in the updated TRC. 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, some only apply to a regular or a sensitive TRC update, respectively. Based on the type of update, a different set of voters is necessary to create a verifiable TRC update - the section includes a description of the corresponding voting (signing) process. To verify a TRC update, a relying party must perform a couple of checks. These checks are listed at the end of the section.</t>
          <section anchor="change-new">
            <name> Changed or New Certificates</name>
            <t>In the context of a TRC update,</t>
            <ul spacing="normal">
              <li>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>.</li>
              <li>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.</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.<br/>
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 must 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 must 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>The <tt>iSD</tt> and <tt>baseNumber</tt> in the <tt>iD</tt> field <bcp14>MUST NOT</bcp14> change (see also <xref target="id"/>).</li>
              <li>The <tt>serialNumber</tt> in the <tt>iD</tt> field <bcp14>MUST</bcp14> be incremented by one.</li>
              <li>The <tt>noTrustReset</tt> field <bcp14>MUST NOT</bcp14> change (see also <xref target="notrustreset"/>).</li>
              <li>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"/>.</li>
              <li>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.</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>The voting quorum set in the <tt>votingQuorum</tt> field.</li>
                  <li>The core ASes specified in the <tt>coreASes</tt> field.</li>
                  <li>The authoritative ASes specified in the <tt>authoritativeASes</tt> field.</li>
                  <li>The number of sensitive and regular voting certificates as well as CP root certificates included in the <tt>certificates</tt> field, and their distinguished names.</li>
                  <li>The set of sensitive voting certificates specified in the <tt>certificates</tt> field.</li>
                </ul>
              </li>
              <li>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.</li>
              <li>For every CP root certificate that changes, the updated TRC <bcp14>MUST</bcp14> include a signature created with the private key belonging to the changed CP root certificate (which is part of the predecessor TRC).</li>
              <li>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.</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>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.</li>
            </ul>
          </section>
          <section anchor="signing-a-trc-update">
            <name> Signing a TRC Update</name>
            <t>As described above, a set of voters must 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. Furthermore, if one or more <em>new</em> certificates are added to the updated TRC, the corresponding voting representatives must 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. For example, they keep the regular key in an online vault while the sensitive key would be stored offline in cold storage. 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. Other ISDs, however, 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 must perform the following checks:</t>
            <ul spacing="normal">
              <li>Check that the specified update rules as described above are respected.</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>check that the signatures for the changing certificates are present and verifiable, and</li>
                      <li>check that all votes are cast by a regular voting certificate.</li>
                    </ul>
                  </li>
                  <li>In case of a sensitive update, check that all votes are cast by a sensitive voting certificate.</li>
                </ul>
              </li>
              <li>In both cases, check that all signatures are verifiable, and no superfluous signatures are attached.</li>
            </ul>
            <t>If one or more of the above checks gives a negative result, the updated TRC should 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 must be signed during a special signing ceremony--all voting representatives of the initial TRC need to take part in this signing ceremony to sign the agreed-upon TRC. As part of the ceremony, the public keys of all voters are exchanged. The TRC is then distributed throughout the ISD. All entities within an ISD can initially obtain an authentic TRC, by means of a secure off- 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 shape 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 must 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="trc-update-discovery">
            <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 must be satisfied:</t>
            <t><strong>Requirement</strong><br/>
Any entity sending information that is secured by the CP-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>
                <em>Beaconing Process</em><br/>
The TRC version is announced in the beaconing process. Each AS must announce what it considers to be the latest TRC. Furthermore, each AS must 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. That is, 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 should trigger the generation of new control-plane messages, as the propagation of control-plane messages will help other ASes rapidly discover the new TRC.</li>
              <li>
                <em>Path Lookup</em><br/>
In every path segment, all ASes must reference the latest TRC of their ISD. Therefore, when resolving paths, every relying party will notice TRC updates, even remote ones.<br/>
                <strong>Note:</strong> The above mechanism only works when there is an active communication between the relying party and the ISD in question.</li>
            </ul>
          </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 SCION control-plane PKI is providing a mechanism to distribute and authenticate public keys that are used to verify control-plane messages and information. For example, each hop information in a path segment is signed by the respective AS. Consequently, all relying parties must be able to verify signatures with the help of the CP-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>ISD-AS number: The ISD-AS number of the signing entity. For specification details, see <xref target="isd-as-nr"/>.</li>
            <li>Subject key identifier: The identifier of the public key that must be used to verify the message. For specification details, see <xref target="subject-key-id-ext"/>.</li>
          </ul>
          <t>Additionally, the signer <bcp14>SHOULD</bcp14> include the following information:</t>
          <ul spacing="normal">
            <li>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"/>.</li>
            <li>Timestamp: For many messages, the time at which it was signed is useful information to ensure freshness.</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. A certificate chain is verified against the CP root certificate. However, the root certificate is <strong>not</strong> bundled in the chain, but with the TRC. This 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.</t>
          <t>To verify a control-plane message, the relying party must perform the following steps:</t>
          <ol spacing="normal" type="1"><li>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 must also be included. For a description on how to build the correct collection of certificates, see <xref target="trc-selection"/>.</li>
            <li>If the signature metadata of the message contains the serial and base number of the latest TRC, the relying party must check that they have this latest TRC. If not, the relying party must request the latest TRC.</li>
            <li>
              <t>After constructing the pool of root certificates, the relying party must 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>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"/>.</li>
                <li>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"/>.</li>
                <li>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.</li>
              </ul>
            </li>
            <li>
              <t>After selecting a certificate chain to verify the control-plane messages, the relying party must verify the certificate chain, by:
              </t>
              <ul spacing="normal">
                <li>Executing the regular X.509 verification procedure. For details, see <eref target="https://handle.itu.int/11.1002/1000/13031">X.509</eref>.</li>
                <li>
                  <t>Checking that
                  </t>
                  <ul spacing="normal">
                    <li>all subjects of the certificates in the chain carry the same ISD number (see also <xref target="isd-as-nr"/>,</li>
                    <li>each certificate is of the correct type (see also <xref target="overview"/>), and</li>
                    <li>the CA certificate validity period covers the AS certificate validity period.</li>
                  </ul>
                </li>
              </ul>
            </li>
            <li>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.</li>
          </ol>
          <t>If any cryptographic material is missing in the process, the relying party must 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 should 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 required to create a new AS certificate are the following:</t>
        <ol spacing="normal" type="1"><li>The AS creates a new key pair and a certificate signing request (CSR) using that key pair.</li>
          <li>The AS sends the certificate signing request to the relevant CA within the ISD.</li>
          <li>The CA uses its CA key and the CSR to create the new AS certificate.</li>
          <li>The CA sends the AS certificate back to the AS.</li>
        </ol>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The entire document is about security considerations.
More details will follow in future versions of this draft.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>Future iterations of this draft will comprise more detailed IANA considerations.</t>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <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="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="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="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="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>
        <name>Informative References</name>
        <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="I-D.scion-overview" target="https://datatracker.ietf.org/doc/draft-dekater-panrg-scion-overview/">
          <front>
            <title>SCION Overview</title>
            <author initials="C." surname="de Kater" fullname="Corine de Kater">
              <organization>ETH Zuerich</organization>
            </author>
            <author initials="N." surname="Rustignoli" fullname="Nicola Rustignoli">
              <organization>ETH Zuerich</organization>
            </author>
            <author initials="A." surname="Perrig" fullname="Adrian Perrig">
              <organization>ETH Zuerich</organization>
            </author>
            <date year="2022"/>
          </front>
        </reference>
        <reference anchor="I-D.scion-components" target="https://datatracker.ietf.org/doc/draft-rustignoli-panrg-scion-components/">
          <front>
            <title>SCION Components Analysis</title>
            <author initials="N." surname="Rustignoli" fullname="Nicola Rustignoli">
              <organization>ETH Zuerich</organization>
            </author>
            <author initials="C." surname="de Kater" fullname="Corine de Kater">
              <organization>ETH Zuerich</organization>
            </author>
            <date year="2022"/>
          </front>
        </reference>
      </references>
    </references>
    <?line 1333?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Many thanks go to Samuel Hitz (Anapaya), 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="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 signing 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>The <strong>ceremony administrator</strong> is in charge of moderating the signing process. He/she guides all participants through the steps they need to take. The ceremony administrator may also act as an intermediary between participants when they share information with each other.</li>
          <li>A <strong>voting AS representative</strong> is capable of creating voting signatures on the TRC. This means the voting representative is in possession of a device with the private keys of the respective certificates in the TRC.</li>
          <li>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 inquire for more information if they feel the integrity of the process might have been compromised.</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 representatives of the voting ASes, 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 ceremony, participants 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>validity of the TRC,</li>
          <li>voting quorum,</li>
          <li>core ASes/authoritative ASes,</li>
          <li>description, and</li>
          <li>list of CP root certificates.</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 gives 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 party brings their own device that is provisioned with the required material, as described below.</t>
          <ul spacing="normal">
            <li>Device to exchange data. This device can either be provided by the ceremony administrator, or, if preferable, by any of the voting representatives.</li>
            <li>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.</li>
            <li>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. The exact binaries that are required are described in a separate document.</li>
          </ul>
          <t><strong>Important:</strong> 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 TRC signing ceremony must go through a few 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>Send out the high-level TRC Signing Ceremony description and the document describing the TRC Signing Ceremony Phases to the participants, all in digital form.</li>
              <li>Remind all representatives of the voting ASes that they need to agree on a common TRC policy before scheduling the TRC ceremony.</li>
              <li>Bring all digitally distributed documents as a printout for all parties that take part.</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 must <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 must create the following keys and certificates:</t>
            <ul spacing="normal">
              <li>A sensitive voting private key, and a certificate holding the corresponding public key.</li>
              <li>A regular voting private key, and a certificate holding the corresponding public key.</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) must ensure that the following key and certificate is available:</t>
            <ul spacing="normal">
              <li>A control-plane root private key, and a certificate holding the corresponding public key.</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 must 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 must 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 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>
            <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.</li>
          <li>
            <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.</li>
          <li>
            <xref target="phase3">Phase 3: TRC Signing</xref>. In the third phase, each voting representative attaches the required signatures to the TRC.</li>
          <li>
            <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.</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 CP root certificates. If a CA AS does not attend the signing ceremony in person, it must 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> must 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 must 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 must ask the voting representatives for</t>
          <ul spacing="normal">
            <li>The ISD number of the ISD. The number (identifier, ID) of an ISD must 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"/>.</li>
            <li>The description of the TRC. For more information, see <xref target="description"/>.</li>
            <li>The AS numbers of the core ASes of the ISD. For more information, see <xref target="core"/>.</li>
            <li>The AS numbers of the authoritative ASes of the ISD. For more information, see <xref target="auth"/>.</li>
            <li>The voting quorum for the next TRC update. For more information, see <xref target="quorum"/>.</li>
            <li>The validity period of the new TRC. For more information, see <xref target="validity"/>.</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 must 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>
  </back>
  <!-- ##markdown-source:
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
VRU97+IL+fg8ZMH+/m//Z7O+kgSdhw12J9vpIoJHpwGZALWynUNIZBcpeP4s
n7xZzzl2dKCaP3KKORvP0BjGmTUVtUUmU1c8NTXSKo2yS8so3EaaBz05/H09
v82IO2Vg71y1qKKDvREKOew/0o2rn4Y2f9YZbCuh3g7zlQIqyYvX2eOqmsHp
NTyf1hrwfev2iDPf6asfn7IJHuhIvppR0Ztnh9+fPA0VijFOhYRfpunnOOyj
y6YHWSWZh4IadNSyXlbsVeyaSt8BKypFhNf4sLDylkTSaErOLV9TYzvXN7KX
Ee8a6GA3Jci+3zWFGgOH9abjw0ouvpgszrrVk0LZ/rzjSMIsekhxQJ2nFIcR
PBE1yE4ykbjLSTha85OlXicfJp6mv4u/gRnsOpX6wW5iYYmfdBhPOqDqth+c
QZo34QS00Emsoct6HiaewpPDf7IPds5WriKu6qIGPIku7bUrsd4QeG529gaJ
h5SAwXr0cuPjBDsXEqo1hL8zioLM3aRduMdT6HuYWNgmsw0G752ozTr2UON4
dKtN96MwoiV9XDVDmbO9JIhdOtN2T+Zal5/s9LKTZPlD+nO2TquvCthyeDFK
suZBC3NROfpoXEVXLLv18+Z358bTw8td+zPZ7YdjLUziLgnPDHdJ/lP1JsEs
oxGexF5qJ6F6at+b7El+YM4aeIM3yxEVM62xdvpr71AVa+GiYq2pSBXuJ6rR
PfbjTGYlPP/543A//eOgi9dJC2I0QHHzkfB1UFcJgQ49NdgTInA3omTdfnj9
OGqjrDK/z4bd6PzxAKNfj/zFF6T69OiWyU35WuN/Iv2Tje/pTWsOYFkth3h4
jfUgVQxqTUWM4Qb1Q8iMZoumpxhdz71iW60SFLEq6w+lsD9EITcIpZJYpohN
8gVZuxVTPwrj1MM68YsU+9T9Kman9PnPZ6rWcEa3sUx97z8Oq7WGX7qNkbp7
vLX5BrmJHmwTHizNbVH/MXsV8VU9DXs7jOfVId/R8izH4VKQrnnRGV/fqZ47
VgavTKQnT2PUYFr2hBR/+v0JfNKQ7NQ3A7Moc1f8Zy6Kp/GxFhVcTN1Fded9
O2anG/Z2GGFQdBV1u7c3UqfPHi9+7A5uI5ewSP6byPZ8EN9xdx0CudR0puuD
7k159/kbDv2RcuiGFnwIky4+Z1EQ8aG/vN/q+M7L7+48gWUGnM7FeVvkWmqZ
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
dsGX+BQA+2CKGsGFiY7xENaEYkNS3OnpEm0rjeH3Rmc+zFaLGUZatRjQQDeq
P12Y6LXB7EFSgK0umzccHoP3qY02mudvOIYjmPhcty9k4IKPjIbMa57wEibt
022bhuSi1XWHSr0AOXdSSDcYau1fzwsqFgUDemjLPT/1RXCjwDwyoQTBZPbm
whprTVvk02EEKjeUJsMJIl00fCUR8RJrC8tGP3akAngstDEawaPy0Uz6LqrQ
F/KU4nzL+ExJppV9S9mSe5dOHRU/ZSWdbBPcGkyCeMdFT+/IXvANhoHVLjTD
jv86ZIeT/A4HE5Ht1SUHs9d9T6Lrau1w3fSAHueP7eU5DBbtqxQBY8JVuLee
klIUDkXt8oJ2PtcbmPWdnA5VrGyIVCCrSRUdmDUbmalUa9lMVo0w1jhXCWvo
sC+d8QweUE5r4PnbiufnLlqMnUTqi6NzHQnZQnPAnJKb9ckY+e63qjMqEBYc
sI0Tpi8a3BY55HQYabe6wznxTF79K5vLgQ+o4LDN2hLVknysSVFIzIM73RSU
IxY0TqXi8ld3xkISqzFJ18TBXJXVjKLwkXZyUr25XE68awukvMrFB6Y5Y9r3
B5fnbk6u+abLDnrmz+mrBREoA3/I3yI0ANQIaQ8MsjSEcLsgwitSL6adv0a5
Qfcdw7AXFzNXsZz2mvVbdDvMc4zFleBaHwvnlq2eCn7J+EQX7N8m6omaWnsu
+lXjXbQKMCusJSt6bdpEh8mViDe4HzZoTJp5ylXjuyIKjgw/3jaLqBBdvAYt
8QmLf1VcVXSJwo4cNhoYTUE7GIy6asgIWOGFX70p/AobeslYxPrvwxOM4J1X
V4p5GsxrZulOoV1jt15hd740h7zxBQnMHACJ7Bzy6bR/As46dbfhYz7LQi1v
bDh5CJx7ODeclvJDch7xqtsxqXbSeNlxi/EIiq8UQROfbYSpQbsUyh52P+DY
U6wCoN+LPxld0rJIF1rqtcHW1wvIb8MZI/0dlpgLJ/sn+xXNVkTeueOzA6CN
Mr694o68tdqdJfJpK4Ja3WmUoyPb6XDjs9vT8oMPcd8+O5TpPc7hRvad63C+
v+wB719LfNKTs/r4R34NcDc++z0A/HlEwDi8+eNvHioVCL7r8NU/nj4bfekc
j6RsLJ3Z0NWGDz77FaS6DHNICePIn1vPPOPY6a3o2VO4pMvmMpXcJDUWJgnW
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
/H8BQZ1aoKe+AQA=

-->

</rfc>
