<?xml version='1.0' encoding='utf-8'?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" version="3" category="info" consensus="true" docName="draft-ietf-sidrops-rp-06" indexInclude="true" ipr="trust200902" number="8897" prepTime="2020-09-03T17:33:50" scripts="Common,Latin" sortRefs="true" submissionType="IETF" symRefs="true" tocDepth="3" tocInclude="true" xml:lang="en">
  <link href="https://datatracker.ietf.org/doc/draft-ietf-sidrops-rp-06" rel="prev"/>
  <link href="https://dx.doi.org/10.17487/rfc8897" rel="alternate"/>
  <link href="urn:issn:2070-1721" rel="alternate"/>
  <front>
    <title abbrev="RPKI RP Requirements">Requirements for Resource Public Key Infrastructure (RPKI) Relying Parties</title>
    <seriesInfo name="RFC" value="8897" stream="IETF"/>
    <author fullname="Di Ma" initials="D." surname="Ma">
      <organization showOnFrontPage="true">ZDNS</organization>
      <address>
        <postal>
          <street>4 South 4th St. Zhongguancun</street>
          <city>Haidian</city>
          <code>100190</code>
          <region>Beijing</region>
          <country>China</country>
        </postal>
        <email>madi@zdns.cn</email>
      </address>
    </author>
    <author fullname="Stephen Kent" initials="S." surname="Kent">
      <organization showOnFrontPage="true">Independent</organization>
      <address>
        <email>kent@alum.mit.edu</email>
      </address>
    </author>
    <date month="09" year="2020"/>
    <area>Routing Area</area>
    <workgroup>SIDROPS</workgroup>
    <keyword>dns</keyword>
    <abstract pn="section-abstract">
      <t indent="0" pn="section-abstract-1"> This document provides a single reference point for requirements for
      Relying Party (RP) software for use in the Resource Public Key
      Infrastructure (RPKI). It cites requirements that appear in several RPKI
      RFCs, making it easier for implementers to become aware of these
      requirements. Over time, this RFC will be updated to reflect changes to
      the requirements and guidance specified in the RFCs discussed
      herein.</t>
    </abstract>
    <boilerplate>
      <section anchor="status-of-memo" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.1">
        <name slugifiedName="name-status-of-this-memo">Status of This Memo</name>
        <t indent="0" pn="section-boilerplate.1-1">
            This document is not an Internet Standards Track specification; it is
            published for informational purposes.  
        </t>
        <t indent="0" pn="section-boilerplate.1-2">
            This document is a product of the Internet Engineering Task Force
            (IETF).  It represents the consensus of the IETF community.  It has
            received public review and has been approved for publication by the
            Internet Engineering Steering Group (IESG).  Not all documents
            approved by the IESG are candidates for any level of Internet
            Standard; see Section 2 of RFC 7841. 
        </t>
        <t indent="0" pn="section-boilerplate.1-3">
            Information about the current status of this document, any
            errata, and how to provide feedback on it may be obtained at
            <eref target="https://www.rfc-editor.org/info/rfc8897" brackets="none"/>.
        </t>
      </section>
      <section anchor="copyright" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.2">
        <name slugifiedName="name-copyright-notice">Copyright Notice</name>
        <t indent="0" pn="section-boilerplate.2-1">
            Copyright (c) 2020 IETF Trust and the persons identified as the
            document authors. All rights reserved.
        </t>
        <t indent="0" pn="section-boilerplate.2-2">
            This document is subject to BCP 78 and the IETF Trust's Legal
            Provisions Relating to IETF Documents
            (<eref target="https://trustee.ietf.org/license-info" brackets="none"/>) in effect on the date of
            publication of this document. Please review these documents
            carefully, as they describe your rights and restrictions with
            respect to this document. Code Components extracted from this
            document must include Simplified BSD License text as described in
            Section 4.e of the Trust Legal Provisions and are provided without
            warranty as described in the Simplified BSD License.
        </t>
      </section>
    </boilerplate>
    <toc>
      <section anchor="toc" numbered="false" removeInRFC="false" toc="exclude" pn="section-toc.1">
        <name slugifiedName="name-table-of-contents">Table of Contents</name>
        <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1">
          <li pn="section-toc.1-1.1">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.1.1"><xref derivedContent="1" format="counter" sectionFormat="of" target="section-1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-introduction">Introduction</xref></t>
          </li>
          <li pn="section-toc.1-1.2">
            <t indent="0" pn="section-toc.1-1.2.1"><xref derivedContent="2" format="counter" sectionFormat="of" target="section-2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-fetching-and-caching-rpki-r">Fetching and Caching RPKI Repository Objects</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.2.2">
              <li pn="section-toc.1-1.2.2.1">
                <t indent="0" keepWithNext="true" pn="section-toc.1-1.2.2.1.1"><xref derivedContent="2.1" format="counter" sectionFormat="of" target="section-2.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-tal-configuration-and-proce">TAL Configuration and Processing</xref></t>
              </li>
              <li pn="section-toc.1-1.2.2.2">
                <t indent="0" keepWithNext="true" pn="section-toc.1-1.2.2.2.1"><xref derivedContent="2.2" format="counter" sectionFormat="of" target="section-2.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-locating-rpki-objects-using">Locating RPKI Objects Using Authority and Subject Information Extensions</xref></t>
              </li>
              <li pn="section-toc.1-1.2.2.3">
                <t indent="0" pn="section-toc.1-1.2.2.3.1"><xref derivedContent="2.3" format="counter" sectionFormat="of" target="section-2.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-dealing-with-key-rollover">Dealing with Key Rollover</xref></t>
              </li>
              <li pn="section-toc.1-1.2.2.4">
                <t indent="0" pn="section-toc.1-1.2.2.4.1"><xref derivedContent="2.4" format="counter" sectionFormat="of" target="section-2.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-dealing-with-algorithm-tran">Dealing with Algorithm Transition</xref></t>
              </li>
              <li pn="section-toc.1-1.2.2.5">
                <t indent="0" pn="section-toc.1-1.2.2.5.1"><xref derivedContent="2.5" format="counter" sectionFormat="of" target="section-2.5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-strategies-for-efficient-ca">Strategies for Efficient Cache Maintenance</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.3">
            <t indent="0" pn="section-toc.1-1.3.1"><xref derivedContent="3" format="counter" sectionFormat="of" target="section-3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-certificate-and-crl-process">Certificate and CRL Processing</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.3.2">
              <li pn="section-toc.1-1.3.2.1">
                <t indent="0" pn="section-toc.1-1.3.2.1.1"><xref derivedContent="3.1" format="counter" sectionFormat="of" target="section-3.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-verifying-resource-certific">Verifying Resource Certificate and Syntax</xref></t>
              </li>
              <li pn="section-toc.1-1.3.2.2">
                <t indent="0" pn="section-toc.1-1.3.2.2.1"><xref derivedContent="3.2" format="counter" sectionFormat="of" target="section-3.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-certificate-path-validation">Certificate Path Validation</xref></t>
              </li>
              <li pn="section-toc.1-1.3.2.3">
                <t indent="0" pn="section-toc.1-1.3.2.3.1"><xref derivedContent="3.3" format="counter" sectionFormat="of" target="section-3.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-crl-processing">CRL Processing</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.4">
            <t indent="0" pn="section-toc.1-1.4.1"><xref derivedContent="4" format="counter" sectionFormat="of" target="section-4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-processing-rpki-repository-">Processing RPKI Repository Signed Objects</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.4.2">
              <li pn="section-toc.1-1.4.2.1">
                <t indent="0" pn="section-toc.1-1.4.2.1.1"><xref derivedContent="4.1" format="counter" sectionFormat="of" target="section-4.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-basic-signed-object-syntax-">Basic Signed Object Syntax Checks</xref></t>
              </li>
              <li pn="section-toc.1-1.4.2.2">
                <t indent="0" pn="section-toc.1-1.4.2.2.1"><xref derivedContent="4.2" format="counter" sectionFormat="of" target="section-4.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-syntax-and-validation-for-e">Syntax and Validation for Each Type of Signed Object</xref></t>
                <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.4.2.2.2">
                  <li pn="section-toc.1-1.4.2.2.2.1">
                    <t indent="0" pn="section-toc.1-1.4.2.2.2.1.1"><xref derivedContent="4.2.1" format="counter" sectionFormat="of" target="section-4.2.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-manifest">Manifest</xref></t>
                  </li>
                  <li pn="section-toc.1-1.4.2.2.2.2">
                    <t indent="0" pn="section-toc.1-1.4.2.2.2.2.1"><xref derivedContent="4.2.2" format="counter" sectionFormat="of" target="section-4.2.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-roa">ROA</xref></t>
                  </li>
                  <li pn="section-toc.1-1.4.2.2.2.3">
                    <t indent="0" pn="section-toc.1-1.4.2.2.2.3.1"><xref derivedContent="4.2.3" format="counter" sectionFormat="of" target="section-4.2.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-ghostbusters">Ghostbusters</xref></t>
                  </li>
                  <li pn="section-toc.1-1.4.2.2.2.4">
                    <t indent="0" pn="section-toc.1-1.4.2.2.2.4.1"><xref derivedContent="4.2.4" format="counter" sectionFormat="of" target="section-4.2.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-verifying-bgpsec-router-cer">Verifying BGPsec Router Certificate</xref></t>
                  </li>
                </ul>
              </li>
              <li pn="section-toc.1-1.4.2.3">
                <t indent="0" pn="section-toc.1-1.4.2.3.1"><xref derivedContent="4.3" format="counter" sectionFormat="of" target="section-4.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-how-to-make-use-of-manifest">How to Make Use of Manifest Data</xref></t>
              </li>
              <li pn="section-toc.1-1.4.2.4">
                <t indent="0" pn="section-toc.1-1.4.2.4.1"><xref derivedContent="4.4" format="counter" sectionFormat="of" target="section-4.4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-what-to-do-with-ghostbuster">What To Do with Ghostbusters Information</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.5">
            <t indent="0" pn="section-toc.1-1.5.1"><xref derivedContent="5" format="counter" sectionFormat="of" target="section-5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-distributing-validated-cach">Distributing Validated Cache</xref></t>
          </li>
          <li pn="section-toc.1-1.6">
            <t indent="0" pn="section-toc.1-1.6.1"><xref derivedContent="6" format="counter" sectionFormat="of" target="section-6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-local-control">Local Control</xref></t>
          </li>
          <li pn="section-toc.1-1.7">
            <t indent="0" pn="section-toc.1-1.7.1"><xref derivedContent="7" format="counter" sectionFormat="of" target="section-7"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-security-considerations">Security Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.8">
            <t indent="0" pn="section-toc.1-1.8.1"><xref derivedContent="8" format="counter" sectionFormat="of" target="section-8"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-iana-considerations">IANA Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.9">
            <t indent="0" pn="section-toc.1-1.9.1"><xref derivedContent="9" format="counter" sectionFormat="of" target="section-9"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-references">References</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.9.2">
              <li pn="section-toc.1-1.9.2.1">
                <t indent="0" pn="section-toc.1-1.9.2.1.1"><xref derivedContent="9.1" format="counter" sectionFormat="of" target="section-9.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-normative-references">Normative References</xref></t>
              </li>
              <li pn="section-toc.1-1.9.2.2">
                <t indent="0" pn="section-toc.1-1.9.2.2.1"><xref derivedContent="9.2" format="counter" sectionFormat="of" target="section-9.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-informative-references">Informative References</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.10">
            <t indent="0" pn="section-toc.1-1.10.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.a"/><xref derivedContent="" format="title" sectionFormat="of" target="name-acknowledgements">Acknowledgements</xref></t>
          </li>
          <li pn="section-toc.1-1.11">
            <t indent="0" pn="section-toc.1-1.11.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.b"/><xref derivedContent="" format="title" sectionFormat="of" target="name-authors-addresses">Authors' Addresses</xref></t>
          </li>
        </ul>
      </section>
    </toc>
  </front>
  <middle>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-1">
      <name slugifiedName="name-introduction">Introduction</name>
      <t indent="0" pn="section-1-1">RPKI Relying Party (RP) software is used by network operators and
   others to acquire and verify Internet Number Resource (INR) data
   stored in the RPKI repository system.  RPKI data, when verified,
   allows an RP to verify assertions about which Autonomous Systems
   (ASes) are authorized to originate routes for IP address prefixes.
   RPKI data also establishes a binding between public keys and BGP
   routers and indicates the AS numbers that each router is authorized
   to represent.</t>
      <t indent="0" pn="section-1-2">The essential requirements imposed on RP software to support
      secure Internet routing <xref target="RFC6480" format="default" sectionFormat="of" derivedContent="RFC6480"/> are
      scattered throughout numerous protocol-specific RFCs and Best Current
      Practice RFCs. The following RFCs define these
      requirements:</t>
      <ul spacing="compact" empty="true" bare="false" indent="3" pn="section-1-3">
        <li pn="section-1-3.1">
          <xref target="RFC6481" format="none" sectionFormat="of" derivedContent="">RFC 6481</xref> (Repository
       Structure)</li>
        <li pn="section-1-3.2">
          <xref target="RFC6482" format="none" sectionFormat="of" derivedContent="">RFC 6482</xref> (ROA
       format)</li>
        <li pn="section-1-3.3">
          <xref target="RFC6486" format="none" sectionFormat="of" derivedContent="">RFC 6486</xref>
       (Manifests)</li>
        <li pn="section-1-3.4">
          <xref target="RFC6487" format="none" sectionFormat="of" derivedContent="">RFC 6487</xref> (Certificate and CRL profile)</li>
        <li pn="section-1-3.5">
          <xref target="RFC6488" format="none" sectionFormat="of" derivedContent="">RFC 6488</xref> (RPKI Signed Objects)</li>
        <li pn="section-1-3.6">
          <xref target="RFC6489" format="none" sectionFormat="of" derivedContent="">RFC 6489</xref> (Key Rollover)</li>
        <li pn="section-1-3.7">
          <xref target="RFC6810" format="none" sectionFormat="of" derivedContent="">RFC 6810</xref> (RPKI to Router Protocol)</li>
        <li pn="section-1-3.8">
          <xref target="RFC6916" format="none" sectionFormat="of" derivedContent="">RFC 6916</xref> (Algorithm Agility)</li>
        <li pn="section-1-3.9">
          <xref target="RFC7935" format="none" sectionFormat="of" derivedContent="">RFC 7935</xref> (Algorithms)</li>
        <li pn="section-1-3.10">
          <xref target="RFC8209" format="none" sectionFormat="of" derivedContent="">RFC 8209</xref> (Router Certificates)</li>
        <li pn="section-1-3.11">
          <xref target="RFC8210" format="none" sectionFormat="of" derivedContent="">RFC 8210</xref> (RPKI to
       Router Protocol, Version 1)</li>
        <li pn="section-1-3.12">
          <xref target="RFC8360" format="none" sectionFormat="of" derivedContent="">RFC 8360</xref> (Certificate Validation Procedure)</li>
        <li pn="section-1-3.13">
          <xref target="RFC8630" format="none" sectionFormat="of" derivedContent="">RFC 8630</xref> (Trust Anchor Locator) </li>
      </ul>
      <t indent="0" pn="section-1-4">The distribution of RPKI RP requirements across these 13 documents
      makes it hard for an implementer to be confident that he/she has
      addressed all of these requirements. Additionally, good software
      engineering practice may call for segmenting the RP system into
      components with orthogonal functionalities so that those components may
      be distributed.  A taxonomy of the collected RP software requirements
      can help clarify the role of the RP.</t>
      <t indent="0" pn="section-1-5">To consolidate RP software requirements in one document, with
   pointers to all the relevant RFCs, this document outlines a set of
   baseline requirements imposed on RPs and provides a single reference
   point for requirements for RP software for use in the RPKI. The requirements
   are organized into four groups:</t>
      <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-1-6">
        <li pn="section-1-6.1">Fetching and Caching RPKI Repository Objects</li>
        <li pn="section-1-6.2">Processing Certificates and Certificate Revocation Lists (CRLs)</li>
        <li pn="section-1-6.3">Processing RPKI Repository Signed Objects</li>
        <li pn="section-1-6.4">Distributing Validated Cache of the RPKI Data</li>
      </ul>
      <t indent="0" pn="section-1-7">This document will be updated to reflect new or changed requirements
   as these RFCs are updated or additional RFCs are written.</t>
    </section>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-2">
      <name slugifiedName="name-fetching-and-caching-rpki-r">Fetching and Caching RPKI Repository Objects</name>
      <t indent="0" pn="section-2-1">RP software uses synchronization mechanisms supported by targeted
   repositories (e.g., <xref target="rsync" format="default" sectionFormat="of" derivedContent="rsync"/> or RRDP  <xref target="RFC8182" format="default" sectionFormat="of" derivedContent="RFC8182"/>) 
   to download RPKI signed objects from the repository system in order to
   update a local cache. These mechanisms download only those objects that
   have been added or replaced with new versions since the time when the
   RP most recently checked the repository.
   RP software validates the RPKI data and uses it to
   generate authenticated data identifying which ASes are authorized to
   originate routes for address prefixes and which routers are
   authorized to sign BGP updates on behalf of specified ASes.</t>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-2.1">
        <name slugifiedName="name-tal-configuration-and-proce">TAL Configuration and Processing</name>
        <t indent="0" pn="section-2.1-1">In the RPKI, each RP chooses a set of trust anchors
	(TAs). Consistent with the extant INR allocation hierarchy, the IANA
	and/or the five Regional Internet Registries (RIRs) are obvious
	candidates to be default TAs for the RP.</t>
        <t indent="0" pn="section-2.1-2">An RP does not retrieve TAs directly.  A set of Trust Anchor
	Locators (TALs) is used by RP software to retrieve and verify the
	authenticity of each TA.</t>
        <t indent="0" pn="section-2.1-3">TAL configuration and processing are specified in <xref target="RFC8630" sectionFormat="of" section="3" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8630#section-3" derivedContent="RFC8630"/>.</t>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-2.2">
        <name slugifiedName="name-locating-rpki-objects-using">Locating RPKI Objects Using Authority and Subject Information Extensions</name>
        <t indent="0" pn="section-2.2-1">The RPKI repository system is a distributed one, consisting of
   multiple repository instances.  Each repository instance contains one
   or more repository publication points.  RP software discovers publication
   points using the Subject Information Access (SIA) and the Authority
   Information Access (AIA) extensions from (validated) certificates.</t>
        <t indent="0" pn="section-2.2-2"><xref target="RFC6481" sectionFormat="of" section="5" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6481#section-5" derivedContent="RFC6481"/>  specifies how RP software
        locates all RPKI objects by using the SIA and AIA extensions.
        Detailed specifications of SIA and AIA extensions in a resource
        certificate are described in Sections <xref target="RFC6487" sectionFormat="bare" section="4.8.8" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6487#section-4.8.8" derivedContent="RFC6487"/> and <xref target="RFC6487" sectionFormat="bare" section="4.8.7" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6487#section-4.8.7" derivedContent="RFC6487"/> of <xref target="RFC6487" format="default" sectionFormat="of" derivedContent="RFC6487"/>, respectively.</t>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-2.3">
        <name slugifiedName="name-dealing-with-key-rollover">Dealing with Key Rollover</name>
        <t indent="0" pn="section-2.3-1">RP software takes the key rollover period into account with regard to its
   frequency of synchronization with the RPKI repository system.</t>
        <t indent="0" pn="section-2.3-2">RP software requirements for dealing with key rollover are
	described in <xref target="RFC6489" sectionFormat="of" section="3" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6489#section-3" derivedContent="RFC6489"/>
	and <xref target="RFC8634" sectionFormat="of" section="3" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8634#section-3" derivedContent="RFC8634"/>.</t>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-2.4">
        <name slugifiedName="name-dealing-with-algorithm-tran">Dealing with Algorithm Transition</name>
        <t indent="0" pn="section-2.4-1">The set of cryptographic algorithms used with the RPKI is expected to
   change over time.  Each RP is expected to be aware of the milestones
   established for the algorithm transition and what actions are
   required at every juncture.</t>
        <t indent="0" pn="section-2.4-2">RP software requirements for dealing with algorithm transition are
   specified in <xref target="RFC6916" sectionFormat="of" section="4" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6916#section-4" derivedContent="RFC6916"/>.</t>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-2.5">
        <name slugifiedName="name-strategies-for-efficient-ca">Strategies for Efficient Cache Maintenance</name>
        <t indent="0" pn="section-2.5-1">Each RP is expected to maintain a local cache of RPKI objects.  
The cache needs to be brought up to date and made consistent with the
repository publication point data as frequently as allowed by 
repository publication points and by locally selected RP processing
constraints.</t>
        <t indent="0" pn="section-2.5-2">The last paragraph of <xref target="RFC6481" sectionFormat="of" section="5" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6481#section-5" derivedContent="RFC6481"/> provides
    guidance for maintenance of a local cache.</t>
      </section>
    </section>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-3">
      <name slugifiedName="name-certificate-and-crl-process">Certificate and CRL Processing</name>
      <t indent="0" pn="section-3-1">The RPKI makes use of X.509 certificates and CRLs, but it profiles
      the standard formats described in <xref target="RFC6487" format="default" sectionFormat="of" derivedContent="RFC6487"/>.  The
      major change to the profile established in <xref target="RFC5280" format="default" sectionFormat="of" derivedContent="RFC5280"/> is the mandatory use of a new extension in RPKI
      certificates, defined in <xref target="RFC3779" format="default" sectionFormat="of" derivedContent="RFC3779"/>.</t>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-3.1">
        <name slugifiedName="name-verifying-resource-certific">Verifying Resource Certificate and Syntax</name>
        <t indent="0" pn="section-3.1-1">Certificates in the RPKI are called resource certificates, and they
	are required to conform to the profile described in <xref target="RFC6487" format="default" sectionFormat="of" derivedContent="RFC6487"/>.  An RP is required to verify that a resource
	certificate adheres to the profile established by <xref target="RFC6487" sectionFormat="of" section="4" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6487#section-4" derivedContent="RFC6487"/>.  This means that
	all extensions mandated by <xref target="RFC6487" sectionFormat="of" section="4.8" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6487#section-4.8" derivedContent="RFC6487"/> must be present and the value of each extension
	must be within the range specified by <xref target="RFC6487" format="default" sectionFormat="of" derivedContent="RFC6487"/>.  Moreover, any extension excluded by
	<xref target="RFC6487" sectionFormat="of" section="4.8" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6487#section-4.8" derivedContent="RFC6487"/> must be omitted.</t>
        <t indent="0" pn="section-3.1-2"><xref target="RFC6487" sectionFormat="of" section="7.1" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6487#section-7.1" derivedContent="RFC6487"/> specifies
	the procedure that RP software follows when verifying extensions
	described in <xref target="RFC3779" format="default" sectionFormat="of" derivedContent="RFC3779"/>.</t>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-3.2">
        <name slugifiedName="name-certificate-path-validation">Certificate Path Validation</name>
        <t indent="0" pn="section-3.2-1">Initially, the INRs in the issuer's certificate are required to
	encompass the INRs in the subject's certificate.  This is one of the
	necessary principles of certificate path validation in addition to
	cryptographic verification (i.e., verification of the signature on
	each certificate using the public key of the parent certificate).</t>
        <t indent="0" pn="section-3.2-2"><xref target="RFC6487" sectionFormat="of" section="7.2" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6487#section-7.2" derivedContent="RFC6487"/> specifies
	the procedure that RP software should follow to perform certificate
	path validation.</t>
        <t indent="0" pn="section-3.2-3">Certification Authorities (CAs) that want to reduce aspects of
	operational fragility will migrate to the new OIDs <xref target="RFC8360" format="default" sectionFormat="of" derivedContent="RFC8360"/>, informing RP software to use an
	alternative RPKI validation algorithm.  An RP is expected to support
	the amended procedure to handle accidental overclaiming, which is
	described in <xref target="RFC8360" sectionFormat="of" section="4" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8360#section-4" derivedContent="RFC8360"/>.</t>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-3.3">
        <name slugifiedName="name-crl-processing">CRL Processing</name>
        <t indent="0" pn="section-3.3-1">The CRL processing requirements imposed on CAs and RPs are described
	in <xref target="RFC6487" sectionFormat="of" section="5" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6487#section-5" derivedContent="RFC6487"/>.  CRLs in
	the RPKI are tightly constrained; only the AuthorityKeyIdentifier
	(<xref target="RFC6487" sectionFormat="of" section="4.8.3" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6487#section-4.8.3" derivedContent="RFC6487"/>) and
	CRLNumber (<xref target="RFC5280" sectionFormat="of" section="5.2.3" format="default" derivedLink="https://rfc-editor.org/rfc/rfc5280#section-5.2.3" derivedContent="RFC5280"/>)
	extensions are allowed, and they are required to be present.  No other
	CRL extensions are allowed, and no CRLEntry extensions are permitted.
	RP software is required to verify that these constraints have been
	met.  Each CRL in the RPKI must be verified using the public key from
	the certificate of the CA that issued the CRL.</t>
        <t indent="0" pn="section-3.3-2">In the RPKI, RPs are expected to pay extra attention when dealing
	with a CRL that is not consistent with the manifest associated with
	the publication point associated with the CRL.</t>
        <t indent="0" pn="section-3.3-3">Processing of a CRL that is not consistent with a manifest is a
	matter of local policy, as described in the fifth paragraph of <xref target="RFC6486" sectionFormat="of" section="6.6" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6486#section-6.6" derivedContent="RFC6486"/>.</t>
      </section>
    </section>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-4">
      <name slugifiedName="name-processing-rpki-repository-">Processing RPKI Repository Signed Objects</name>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-4.1">
        <name slugifiedName="name-basic-signed-object-syntax-">Basic Signed Object Syntax Checks</name>
        <t indent="0" pn="section-4.1-1">Before an RP can use a signed object from the RPKI repository, RP software
   is required to check the signed-object syntax.</t>
        <t indent="0" pn="section-4.1-2"><xref target="RFC6488" sectionFormat="of" section="3" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6488#section-3" derivedContent="RFC6488"/> lists all
	the steps that RP software is required to execute in order to validate
	the top-level syntax of a repository signed object.</t>
        <t indent="0" pn="section-4.1-3">Note that these checks are necessary but not sufficient.
	Additional validation checks must be performed based on the specific
	type of signed object, as described in <xref target="syntax" format="default" sectionFormat="of" derivedContent="Section 4.2"/>.</t>
      </section>
      <section anchor="syntax" numbered="true" toc="include" removeInRFC="false" pn="section-4.2">
        <name slugifiedName="name-syntax-and-validation-for-e">Syntax and Validation for Each Type of Signed Object</name>
        <section numbered="true" toc="include" removeInRFC="false" pn="section-4.2.1">
          <name slugifiedName="name-manifest">Manifest</name>
          <t indent="0" pn="section-4.2.1-1">To determine whether a manifest is valid, RP software is required
	  to perform manifest-specific checks in addition to the generic
	  signed-object checks specified in <xref target="RFC6488" format="default" sectionFormat="of" derivedContent="RFC6488"/>.</t>
          <t indent="0" pn="section-4.2.1-2">Specific checks for a manifest are described in <xref target="RFC6486" sectionFormat="of" section="4" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6486#section-4" derivedContent="RFC6486"/>.  If any of these
	  checks fail, indicating that the manifest is invalid, then the
	  manifest will be discarded, and RP software will act as though no
	  manifest were present.</t>
        </section>
        <section numbered="true" toc="include" removeInRFC="false" pn="section-4.2.2">
          <name slugifiedName="name-roa">ROA</name>
          <t indent="0" pn="section-4.2.2-1">To validate a Route Origin Authorization (ROA), RP software is
	  required to perform all the checks specified in <xref target="RFC6488" format="default" sectionFormat="of" derivedContent="RFC6488"/> as well as additional,
	  ROA-specific validation steps.  The IP Address Delegation extension
	  <xref target="RFC3779" format="default" sectionFormat="of" derivedContent="RFC3779"/> present in the end-entity
	  (EE) certificate (contained within the ROA) must encompass each of
	  the IP address prefix(es) in the ROA.</t>
          <t indent="0" pn="section-4.2.2-2">More details for ROA validation are specified in <xref target="RFC6482" sectionFormat="of" section="4" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6482#section-4" derivedContent="RFC6482"/>.</t>
        </section>
        <section numbered="true" toc="include" removeInRFC="false" pn="section-4.2.3">
          <name slugifiedName="name-ghostbusters">Ghostbusters</name>
          <t indent="0" pn="section-4.2.3-1">The Ghostbusters Record is optional; a publication point in the RPKI
   can have zero or more associated Ghostbusters Records.  If a CA has at
   least one Ghostbusters Record, RP software is required to verify that this
   Ghostbusters Record conforms to the syntax of signed objects defined
   in <xref target="RFC6488" format="default" sectionFormat="of" derivedContent="RFC6488"/>.</t>
          <t indent="0" pn="section-4.2.3-2">The payload of this signed object is a (severely) profiled
	  vCard. RP software is required to verify that the payload of
	  Ghostbusters conforms to format as profiled in <xref target="RFC6493" format="default" sectionFormat="of" derivedContent="RFC6493"/>.</t>
        </section>
        <section numbered="true" toc="include" removeInRFC="false" pn="section-4.2.4">
          <name slugifiedName="name-verifying-bgpsec-router-cer">Verifying BGPsec Router Certificate</name>
          <t indent="0" pn="section-4.2.4-1">A BGPsec Router Certificate is a resource certificate, so it is
	  required to comply with <xref target="RFC6487" format="default" sectionFormat="of" derivedContent="RFC6487"/>.
	  Additionally, the certificate must contain an AS Identifier
	  Delegation extension (<xref target="RFC6487" sectionFormat="of" section="4.8.11" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6487#section-4.8.11" derivedContent="RFC6487"/>) and must not contain an IP Address Delegation
	  extension (<xref target="RFC6487" sectionFormat="of" section="4.8.10" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6487#section-4.8.10" derivedContent="RFC6487"/>).  The validation procedure used for BGPsec
	  Router Certificates is analogous to the validation procedure
	  described in <xref target="RFC6487" sectionFormat="of" section="7" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6487#section-7" derivedContent="RFC6487"/>, but it uses the constraints defined in <xref target="RFC8209" sectionFormat="of" section="3" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8209#section-3" derivedContent="RFC8209"/>.</t>
          <t indent="0" pn="section-4.2.4-2">Note that the cryptographic algorithms used by BGPsec routers are
	  found in <xref target="RFC8608" format="default" sectionFormat="of" derivedContent="RFC8608"/>.  Currently, the
	  algorithms specified in <xref target="RFC8608" format="default" sectionFormat="of" derivedContent="RFC8608"/>
	  and <xref target="RFC7935" format="default" sectionFormat="of" derivedContent="RFC7935"/> are different.  BGPsec
	  RP software will need to support algorithms that are used to
	  validate BGPsec signatures as well as the algorithms that are needed
	  to validate signatures on BGPsec certificates, RPKI CA certificates,
	  and RPKI CRLs.</t>
        </section>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-4.3">
        <name slugifiedName="name-how-to-make-use-of-manifest">How to Make Use of Manifest Data</name>
        <t indent="0" pn="section-4.3-1">For a given publication point, RP software ought to perform tests,
	as specified in <xref target="RFC6486" sectionFormat="of" section="6.1" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6486#section-6.1" derivedContent="RFC6486"/>, to determine the state of the manifest at the
	publication point.  A manifest can be classified as either valid or
	invalid, and a valid manifest is either current or stale.  An RP
	decides how to make use of a manifest based on its state, according to
	local (RP) policy.</t>
        <t indent="0" pn="section-4.3-2">If there are valid objects in a publication point that are not
	present on a manifest, <xref target="RFC6486" format="default" sectionFormat="of" derivedContent="RFC6486"/> does
	not mandate specific RP behavior with respect to such objects.</t>
        <t indent="0" pn="section-4.3-3">In the absence of a manifest, an RP is expected to accept all valid
	signed objects present in the publication point (see <xref target="RFC6486" sectionFormat="of" section="6.2" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6486#section-6.2" derivedContent="RFC6486"/>). If a manifest is
	stale or invalid and an RP has no way to acquire a more recent valid
	manifest, the RP is expected to contact the repository manager via
	Ghostbusters Records and thereafter make decisions according to local
	(RP) policy (see Sections <xref target="RFC6486" sectionFormat="bare" section="6.3" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6486#section-6.3" derivedContent="RFC6486"/> and <xref target="RFC6486" sectionFormat="bare" section="6.4" format="default" derivedLink="https://rfc-editor.org/rfc/rfc6486#section-6.4" derivedContent="RFC6486"/> of <xref target="RFC6486" format="default" sectionFormat="of" derivedContent="RFC6486"/>).</t>
      </section>
      <section numbered="true" toc="include" removeInRFC="false" pn="section-4.4">
        <name slugifiedName="name-what-to-do-with-ghostbuster">What To Do with Ghostbusters Information</name>
        <t indent="0" pn="section-4.4-1">RP software may encounter a stale manifest or CRL, or an expired CA
	certificate or ROA at a publication point. An RP is expected to use
	the information from the Ghostbusters Records to contact the maintainer
	of the publication point where any stale/expired objects were
	encountered.  The intent here is to encourage the relevant CA and/or
	repository manager to update the stale or expired objects.</t>
      </section>
    </section>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-5">
      <name slugifiedName="name-distributing-validated-cach">Distributing Validated Cache</name>
      <t indent="0" pn="section-5-1">On a periodic basis, BGP speakers within an AS request updated
   validated origin AS data and router/ASN data from the (local) validated cache of RPKI data.
   The RP may either transfer the validated data to the BGP speakers directly,
   or it may transfer the validated data to a cache server that is responsible
   for provisioning such data to BGP speakers.  The specifications of the
   protocol designed to deliver validated cache data to a BGP Speaker are provided
   in <xref target="RFC6810" format="default" sectionFormat="of" derivedContent="RFC6810"/> and <xref target="RFC8210" format="default" sectionFormat="of" derivedContent="RFC8210"/>.</t>
    </section>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-6">
      <name slugifiedName="name-local-control">Local Control</name>
      <t indent="0" pn="section-6-1">ISPs may want to establish a local view of exceptions to the RPKI
   data in the form of local filters and additions.  For instance, a
   network operator might wish to make use of a local override
   capability to protect routes from adverse actions <xref target="RFC8211" format="default" sectionFormat="of" derivedContent="RFC8211"/>. The
   mechanisms developed to provide this capability to network operators
   are called Simplified Local Internet Number Resource Management with the
   RPKI (SLURM).  If an ISP wants to implement SLURM, its RP system
   can follow the instruction specified in <xref target="RFC8416" format="default" sectionFormat="of" derivedContent="RFC8416"/>.</t>
    </section>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-7">
      <name slugifiedName="name-security-considerations">Security Considerations</name>
      <t indent="0" pn="section-7-1">This document does not introduce any new security considerations; it
   is a resource for implementers.  The RP links the RPKI provisioning
   side and the routing system, establishing a verified, local view of global
   RPKI data to BGP speakers.  The security of the RP is critical for exchanging BGP
   messages.  Each RP implementation is expected to offer
   cache backup management to facilitate recovery from outages.
   RP software should also support secure transport (e.g., IPsec <xref target="RFC4301" format="default" sectionFormat="of" derivedContent="RFC4301"/>) that can protect validated cache
   delivery in an unsafe environment. This document highlights
   many validation actions applied to RPKI signed objects, an essential
   element of secure operation of RPKI security.</t>
    </section>
    <section numbered="true" toc="include" removeInRFC="false" pn="section-8">
      <name slugifiedName="name-iana-considerations">IANA Considerations</name>
      <t indent="0" pn="section-8-1">This document has no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references pn="section-9">
      <name slugifiedName="name-references">References</name>
      <references pn="section-9.1">
        <name slugifiedName="name-normative-references">Normative References</name>
        <reference anchor="RFC3779" target="https://www.rfc-editor.org/info/rfc3779" quoteTitle="true" derivedAnchor="RFC3779">
          <front>
            <title>X.509 Extensions for IP Addresses and AS Identifiers</title>
            <author initials="C." surname="Lynn" fullname="C. Lynn">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Kent" fullname="S. Kent">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="K." surname="Seo" fullname="K. Seo">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2004" month="June"/>
            <abstract>
              <t indent="0">This document defines two X.509 v3 certificate extensions.  The first binds a list of IP address blocks, or prefixes, to the subject of a certificate.  The second binds a list of autonomous system identifiers to the subject of a certificate.  These extensions may be used to convey the authorization of the subject to use the IP addresses and autonomous system identifiers contained in the extensions.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3779"/>
          <seriesInfo name="DOI" value="10.17487/RFC3779"/>
        </reference>
        <reference anchor="RFC5280" target="https://www.rfc-editor.org/info/rfc5280" quoteTitle="true" derivedAnchor="RFC5280">
          <front>
            <title>Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile</title>
            <author initials="D." surname="Cooper" fullname="D. Cooper">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Santesson" fullname="S. Santesson">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Farrell" fullname="S. Farrell">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Boeyen" fullname="S. Boeyen">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Housley" fullname="R. Housley">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="W." surname="Polk" fullname="W. Polk">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2008" month="May"/>
            <abstract>
              <t indent="0">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="RFC6481" target="https://www.rfc-editor.org/info/rfc6481" quoteTitle="true" derivedAnchor="RFC6481">
          <front>
            <title>A Profile for Resource Certificate Repository Structure</title>
            <author initials="G." surname="Huston" fullname="G. Huston">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Loomans" fullname="R. Loomans">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="G." surname="Michaelson" fullname="G. Michaelson">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2012" month="February"/>
            <abstract>
              <t indent="0">This document defines a profile for the structure of the Resource Public Key Infrastructure (RPKI) distributed repository.  Each individual repository publication point is a directory that contains files that correspond to X.509/PKIX Resource Certificates, Certificate Revocation Lists and signed objects.  This profile defines the object (file) naming scheme, the contents of repository publication points (directories), and a suggested internal structure of a local repository cache that is intended to facilitate synchronization across a distributed collection of repository publication points and to facilitate certification path construction.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6481"/>
          <seriesInfo name="DOI" value="10.17487/RFC6481"/>
        </reference>
        <reference anchor="RFC6482" target="https://www.rfc-editor.org/info/rfc6482" quoteTitle="true" derivedAnchor="RFC6482">
          <front>
            <title>A Profile for Route Origin Authorizations (ROAs)</title>
            <author initials="M." surname="Lepinski" fullname="M. Lepinski">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Kent" fullname="S. Kent">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="Kong" fullname="D. Kong">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2012" month="February"/>
            <abstract>
              <t indent="0">This document defines a standard profile for Route Origin Authorizations (ROAs).  A ROA is a digitally signed object that provides a means of verifying that an IP address block holder has authorized an Autonomous System (AS) to originate routes to one or more prefixes within the address block.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6482"/>
          <seriesInfo name="DOI" value="10.17487/RFC6482"/>
        </reference>
        <reference anchor="RFC6486" target="https://www.rfc-editor.org/info/rfc6486" quoteTitle="true" derivedAnchor="RFC6486">
          <front>
            <title>Manifests for the Resource Public Key Infrastructure (RPKI)</title>
            <author initials="R." surname="Austein" fullname="R. Austein">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="G." surname="Huston" fullname="G. Huston">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Kent" fullname="S. Kent">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="M." surname="Lepinski" fullname="M. Lepinski">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2012" month="February"/>
            <abstract>
              <t indent="0">This document defines a "manifest" for use in the Resource Public Key Infrastructure (RPKI).  A manifest is a signed object (file) that contains a listing of all the signed objects (files) in the repository publication point (directory) associated with an authority responsible for publishing in the repository.  For each certificate, Certificate Revocation List (CRL), or other type of signed objects issued by the authority that are published at this repository publication point, the manifest contains both the name of the file containing the object and a hash of the file content.  Manifests are intended to enable a relying party (RP) to detect certain forms of attacks against a repository.  Specifically, if an RP checks a manifest's contents against the signed objects retrieved from a repository publication point, then the RP can detect "stale" (valid) data and deletion of signed objects.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6486"/>
          <seriesInfo name="DOI" value="10.17487/RFC6486"/>
        </reference>
        <reference anchor="RFC6487" target="https://www.rfc-editor.org/info/rfc6487" quoteTitle="true" derivedAnchor="RFC6487">
          <front>
            <title>A Profile for X.509 PKIX Resource Certificates</title>
            <author initials="G." surname="Huston" fullname="G. Huston">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="G." surname="Michaelson" fullname="G. Michaelson">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Loomans" fullname="R. Loomans">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2012" month="February"/>
            <abstract>
              <t indent="0">This document defines a standard profile for X.509 certificates for the purpose of supporting validation of assertions of "right-of-use" of Internet Number Resources (INRs).  The certificates issued under this profile are used to convey the issuer's authorization of the subject to be regarded as the current holder of a "right-of-use" of the INRs that are described in the certificate.  This document contains the normative specification of Certificate and Certificate Revocation List (CRL) syntax in the Resource Public Key Infrastructure (RPKI).  This document also specifies profiles for the format of certificate requests and specifies the Relying Party RPKI certificate path validation procedure.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6487"/>
          <seriesInfo name="DOI" value="10.17487/RFC6487"/>
        </reference>
        <reference anchor="RFC6488" target="https://www.rfc-editor.org/info/rfc6488" quoteTitle="true" derivedAnchor="RFC6488">
          <front>
            <title>Signed Object Template for the Resource Public Key Infrastructure (RPKI)</title>
            <author initials="M." surname="Lepinski" fullname="M. Lepinski">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="A." surname="Chi" fullname="A. Chi">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Kent" fullname="S. Kent">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2012" month="February"/>
            <abstract>
              <t indent="0">This document defines a generic profile for signed objects used in the Resource Public Key Infrastructure (RPKI).  These RPKI signed objects make use of Cryptographic Message Syntax (CMS) as a standard encapsulation format.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6488"/>
          <seriesInfo name="DOI" value="10.17487/RFC6488"/>
        </reference>
        <reference anchor="RFC6489" target="https://www.rfc-editor.org/info/rfc6489" quoteTitle="true" derivedAnchor="RFC6489">
          <front>
            <title>Certification Authority (CA) Key Rollover in the Resource Public Key Infrastructure (RPKI)</title>
            <author initials="G." surname="Huston" fullname="G. Huston">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="G." surname="Michaelson" fullname="G. Michaelson">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Kent" fullname="S. Kent">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2012" month="February"/>
            <abstract>
              <t indent="0">This document describes how a Certification Authority (CA) in the Resource Public Key Infrastructure (RPKI) performs a planned rollover of its key pair.  This document also notes the implications of this key rollover procedure for relying parties (RPs).  In general, RPs are expected to maintain a local cache of the objects that have been published in the RPKI repository, and thus the way in which a CA performs key rollover impacts RPs.  This memo documents an Internet  Best Current Practice.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="174"/>
          <seriesInfo name="RFC" value="6489"/>
          <seriesInfo name="DOI" value="10.17487/RFC6489"/>
        </reference>
        <reference anchor="RFC6493" target="https://www.rfc-editor.org/info/rfc6493" quoteTitle="true" derivedAnchor="RFC6493">
          <front>
            <title>The Resource Public Key Infrastructure (RPKI) Ghostbusters Record</title>
            <author initials="R." surname="Bush" fullname="R. Bush">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2012" month="February"/>
            <abstract>
              <t indent="0">In the Resource Public Key Infrastructure (RPKI), resource certificates completely obscure names or any other information that might be useful for contacting responsible parties to deal with issues of certificate expiration, maintenance, roll-overs, compromises, etc.  This document describes the RPKI Ghostbusters Record containing human contact information that may be verified (indirectly) by a Certification Authority (CA) certificate.  The data in the record are those of a severely profiled vCard.  [STANDARDS- TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6493"/>
          <seriesInfo name="DOI" value="10.17487/RFC6493"/>
        </reference>
        <reference anchor="RFC6810" target="https://www.rfc-editor.org/info/rfc6810" quoteTitle="true" derivedAnchor="RFC6810">
          <front>
            <title>The Resource Public Key Infrastructure (RPKI) to Router Protocol</title>
            <author initials="R." surname="Bush" fullname="R. Bush">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Austein" fullname="R. Austein">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2013" month="January"/>
            <abstract>
              <t indent="0">In order to verifiably validate the origin Autonomous Systems of BGP announcements, routers need a simple but reliable mechanism to receive Resource Public Key Infrastructure (RFC 6480) prefix origin data from a trusted cache.  This document describes a protocol to deliver validated prefix origin data to routers.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6810"/>
          <seriesInfo name="DOI" value="10.17487/RFC6810"/>
        </reference>
        <reference anchor="RFC6916" target="https://www.rfc-editor.org/info/rfc6916" quoteTitle="true" derivedAnchor="RFC6916">
          <front>
            <title>Algorithm Agility Procedure for the Resource Public Key Infrastructure (RPKI)</title>
            <author initials="R." surname="Gagliano" fullname="R. Gagliano">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Kent" fullname="S. Kent">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Turner" fullname="S. Turner">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2013" month="April"/>
            <abstract>
              <t indent="0">This document specifies the process that Certification Authorities (CAs) and Relying Parties (RPs) participating in the Resource Public Key Infrastructure (RPKI) will need to follow to transition to a new (and probably cryptographically stronger) algorithm set.  The process is expected to be completed over a timescale of several years. Consequently, no emergency transition is specified.  The transition procedure defined in this document supports only a top-down migration (parent migrates before children).</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="182"/>
          <seriesInfo name="RFC" value="6916"/>
          <seriesInfo name="DOI" value="10.17487/RFC6916"/>
        </reference>
        <reference anchor="RFC7935" target="https://www.rfc-editor.org/info/rfc7935" quoteTitle="true" derivedAnchor="RFC7935">
          <front>
            <title>The Profile for Algorithms and Key Sizes for Use in the Resource Public Key Infrastructure</title>
            <author initials="G." surname="Huston" fullname="G. Huston">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="G." surname="Michaelson" fullname="G. Michaelson" role="editor">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2016" month="August"/>
            <abstract>
              <t indent="0">This document specifies the algorithms, algorithms' parameters, asymmetric key formats, asymmetric key size, and signature format for the Resource Public Key Infrastructure (RPKI) subscribers that generate digital signatures on certificates, Certificate Revocation Lists (CRLs), Cryptographic Message Syntax (CMS) signed objects and certification requests as well as for the relying parties (RPs) that verify these digital signatures.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7935"/>
          <seriesInfo name="DOI" value="10.17487/RFC7935"/>
        </reference>
        <reference anchor="RFC8209" target="https://www.rfc-editor.org/info/rfc8209" quoteTitle="true" derivedAnchor="RFC8209">
          <front>
            <title>A Profile for BGPsec Router Certificates, Certificate Revocation Lists, and Certification Requests</title>
            <author initials="M." surname="Reynolds" fullname="M. Reynolds">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Turner" fullname="S. Turner">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Kent" fullname="S. Kent">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2017" month="September"/>
            <abstract>
              <t indent="0">This document defines a standard profile for X.509 certificates used to enable validation of Autonomous System (AS) paths in the Border Gateway Protocol (BGP), as part of an extension to that protocol known as BGPsec.  BGP is the standard for inter-domain routing in the Internet; it is the "glue" that holds the Internet together.  BGPsec is being developed as one component of a solution that addresses the requirement to provide security for BGP.  The goal of BGPsec is to provide full AS path validation based on the use of strong cryptographic primitives.  The end entity (EE) certificates specified by this profile are issued to routers within an AS.  Each of these certificates is issued under a Resource Public Key Infrastructure (RPKI) Certification Authority (CA) certificate.  These CA certificates and EE certificates both contain the AS Resource extension. An EE certificate of this type asserts that the router or routers holding the corresponding private key are authorized to emit secure route advertisements on behalf of the AS(es) specified in the certificate.  This document also profiles the format of certification requests and specifies Relying Party (RP) certificate path validation procedures for these EE certificates. This document extends the RPKI; therefore, this document updates the RPKI Resource Certificates Profile (RFC 6487).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8209"/>
          <seriesInfo name="DOI" value="10.17487/RFC8209"/>
        </reference>
        <reference anchor="RFC8210" target="https://www.rfc-editor.org/info/rfc8210" quoteTitle="true" derivedAnchor="RFC8210">
          <front>
            <title>The Resource Public Key Infrastructure (RPKI) to Router Protocol, Version 1</title>
            <author initials="R." surname="Bush" fullname="R. Bush">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Austein" fullname="R. Austein">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2017" month="September"/>
            <abstract>
              <t indent="0">In order to verifiably validate the origin Autonomous Systems and Autonomous System Paths of BGP announcements, routers need a simple but reliable mechanism to receive Resource Public Key Infrastructure (RFC 6480) prefix origin data and router keys from a trusted cache. This document describes a protocol to deliver them.</t>
              <t indent="0">This document describes version 1 of the RPKI-Router protocol.  RFC 6810 describes version 0.  This document updates RFC 6810.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8210"/>
          <seriesInfo name="DOI" value="10.17487/RFC8210"/>
        </reference>
        <reference anchor="RFC8360" target="https://www.rfc-editor.org/info/rfc8360" quoteTitle="true" derivedAnchor="RFC8360">
          <front>
            <title>Resource Public Key Infrastructure (RPKI) Validation Reconsidered</title>
            <author initials="G." surname="Huston" fullname="G. Huston">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="G." surname="Michaelson" fullname="G. Michaelson">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="C." surname="Martinez" fullname="C. Martinez">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="T." surname="Bruijnzeels" fullname="T. Bruijnzeels">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="A." surname="Newton" fullname="A. Newton">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="Shaw" fullname="D. Shaw">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2018" month="April"/>
            <abstract>
              <t indent="0">This document specifies an alternative to the certificate validation procedure specified in RFC 6487 that reduces aspects of operational fragility in the management of certificates in the Resource Public Key Infrastructure (RPKI), while retaining essential security features.</t>
              <t indent="0">The procedure specified in RFC 6487 requires that Resource Certificates are rejected entirely if they are found to overclaim any resources not contained on the issuing certificate, whereas the validation process defined here allows an issuing Certification Authority (CA) to chose to communicate that such Resource Certificates should be accepted for the intersection of their resources and the issuing certificate.</t>
              <t indent="0">It should be noted that the validation process defined here considers validation under a single trust anchor (TA) only.  In particular, concerns regarding overclaims where multiple configured TAs claim overlapping resources are considered out of scope for this document.</t>
              <t indent="0">This choice is signaled by a set of alternative Object Identifiers (OIDs) per "X.509 Extensions for IP Addresses and AS Identifiers" (RFC 3779) and "Certificate Policy (CP) for the Resource Public Key                                      Infrastructure (RPKI)" (RFC 6484).  It should be noted that in case these OIDs are not used for any certificate under a trust anchor, the validation procedure defined here has the same outcome as the procedure defined in RFC 6487.</t>
              <t indent="0">Furthermore, this document provides an alternative to Route Origin Authorization (ROA) (RFC 6482) and BGPsec Router Certificate (BGPsec PKI Profiles -- publication requested) validation.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8360"/>
          <seriesInfo name="DOI" value="10.17487/RFC8360"/>
        </reference>
        <reference anchor="RFC8608" target="https://www.rfc-editor.org/info/rfc8608" quoteTitle="true" derivedAnchor="RFC8608">
          <front>
            <title>BGPsec Algorithms, Key Formats, and Signature Formats</title>
            <author initials="S." surname="Turner" fullname="S. Turner">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="O." surname="Borchert" fullname="O. Borchert">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2019" month="June"/>
            <abstract>
              <t indent="0">This document specifies the algorithms, algorithm parameters, asymmetric key formats, asymmetric key sizes, and signature formats used in BGPsec (Border Gateway Protocol Security).  This document updates RFC 7935 ("The Profile for Algorithms and Key Sizes for Use                            in the Resource Public Key Infrastructure") and obsoletes RFC 8208 ("BGPsec Algorithms, Key Formats, and Signature Formats") by adding Documentation and Experimentation Algorithm IDs, correcting the range of unassigned algorithms IDs to fill the complete range, and restructuring the document for better reading.</t>
              <t indent="0">This document also includes example BGPsec UPDATE messages as well as the private keys used to generate the messages and the certificates necessary to validate those signatures.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8608"/>
          <seriesInfo name="DOI" value="10.17487/RFC8608"/>
        </reference>
        <reference anchor="RFC8630" target="https://www.rfc-editor.org/info/rfc8630" quoteTitle="true" derivedAnchor="RFC8630">
          <front>
            <title>Resource Public Key Infrastructure (RPKI) Trust Anchor Locator</title>
            <author initials="G." surname="Huston" fullname="G. Huston">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Weiler" fullname="S. Weiler">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="G." surname="Michaelson" fullname="G. Michaelson">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Kent" fullname="S. Kent">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="T." surname="Bruijnzeels" fullname="T. Bruijnzeels">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2019" month="August"/>
            <abstract>
              <t indent="0">This document defines a Trust Anchor Locator (TAL) for the Resource Public Key Infrastructure (RPKI).  The TAL allows Relying Parties in the RPKI to download the current Trust Anchor (TA) Certification Authority (CA) certificate from one or more locations and verify that the key of this self-signed certificate matches the key on the TAL. Thus, Relying Parties can be configured with TA keys but can allow these TAs to change the content of their CA certificate.  In particular, it allows TAs to change the set of IP Address Delegations and/or Autonomous System Identifier Delegations included in the extension(s) (RFC 3779) of their certificate.</t>
              <t indent="0">This document obsoletes the previous definition of the TAL as provided in RFC 7730 by adding support for Uniform Resource Identifiers (URIs) (RFC 3986) that use HTTP over TLS (HTTPS) (RFC 7230) as the scheme.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8630"/>
          <seriesInfo name="DOI" value="10.17487/RFC8630"/>
        </reference>
        <reference anchor="RFC8634" target="https://www.rfc-editor.org/info/rfc8634" quoteTitle="true" derivedAnchor="RFC8634">
          <front>
            <title>BGPsec Router Certificate Rollover</title>
            <author initials="B." surname="Weis" fullname="B. Weis">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Gagliano" fullname="R. Gagliano">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="K." surname="Patel" fullname="K. Patel">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2019" month="August"/>
            <abstract>
              <t indent="0">Certification Authorities (CAs) within the Resource Public Key Infrastructure (RPKI) manage BGPsec router certificates as well as RPKI certificates.  The rollover of BGPsec router certificates must be carefully performed in order to synchronize the distribution of router public keys with BGPsec UPDATE messages verified with those router public keys.  This document describes a safe rollover process, and it discusses when and why the rollover of BGPsec router certificates is necessary.  When this rollover process is followed, the rollover will be performed without routing information being lost.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="224"/>
          <seriesInfo name="RFC" value="8634"/>
          <seriesInfo name="DOI" value="10.17487/RFC8634"/>
        </reference>
      </references>
      <references pn="section-9.2">
        <name slugifiedName="name-informative-references">Informative References</name>
        <reference anchor="RFC4301" target="https://www.rfc-editor.org/info/rfc4301" quoteTitle="true" derivedAnchor="RFC4301">
          <front>
            <title>Security Architecture for the Internet Protocol</title>
            <author initials="S." surname="Kent" fullname="S. Kent">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="K." surname="Seo" fullname="K. Seo">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2005" month="December"/>
            <abstract>
              <t indent="0">This document describes an updated version of the "Security Architecture for IP", which is designed to provide security services for traffic at the IP layer.  This document obsoletes RFC 2401 (November 1998).  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4301"/>
          <seriesInfo name="DOI" value="10.17487/RFC4301"/>
        </reference>
        <reference anchor="RFC6480" target="https://www.rfc-editor.org/info/rfc6480" quoteTitle="true" derivedAnchor="RFC6480">
          <front>
            <title>An Infrastructure to Support Secure Internet Routing</title>
            <author initials="M." surname="Lepinski" fullname="M. Lepinski">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="S." surname="Kent" fullname="S. Kent">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2012" month="February"/>
            <abstract>
              <t indent="0">This document describes an architecture for an infrastructure to support improved security of Internet routing.  The foundation of this architecture is a Resource Public Key Infrastructure (RPKI) that represents the allocation hierarchy of IP address space and Autonomous System (AS) numbers; and a distributed repository system for storing and disseminating the data objects that comprise the RPKI, as well as other signed objects necessary for improved routing security.  As an initial application of this architecture, the document describes how a legitimate holder of IP address space can explicitly and verifiably authorize one or more ASes to originate routes to that address space.  Such verifiable authorizations could be used, for example, to more securely construct BGP route filters.   This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6480"/>
          <seriesInfo name="DOI" value="10.17487/RFC6480"/>
        </reference>
        <reference anchor="RFC8182" target="https://www.rfc-editor.org/info/rfc8182" quoteTitle="true" derivedAnchor="RFC8182">
          <front>
            <title>The RPKI Repository Delta Protocol (RRDP)</title>
            <author initials="T." surname="Bruijnzeels" fullname="T. Bruijnzeels">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="O." surname="Muravskiy" fullname="O. Muravskiy">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="B." surname="Weber" fullname="B. Weber">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="R." surname="Austein" fullname="R. Austein">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2017" month="July"/>
            <abstract>
              <t indent="0">In the Resource Public Key Infrastructure (RPKI), Certificate Authorities (CAs) publish certificates, including end-entity certificates, Certificate Revocation Lists (CRLs), and RPKI signed objects to repositories.  Relying Parties retrieve the published information from those repositories.  This document specifies a new RPKI Repository Delta Protocol (RRDP) for this purpose.  RRDP was specifically designed for scaling.  It relies on an Update Notification File which lists the current Snapshot and Delta Files that can be retrieved using HTTPS (HTTP over Transport Layer Security (TLS)), and it enables the use of Content Distribution Networks (CDNs) or other caching infrastructures for the retrieval of these files.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8182"/>
          <seriesInfo name="DOI" value="10.17487/RFC8182"/>
        </reference>
        <reference anchor="RFC8211" target="https://www.rfc-editor.org/info/rfc8211" quoteTitle="true" derivedAnchor="RFC8211">
          <front>
            <title>Adverse Actions by a Certification Authority (CA) or Repository Manager in the Resource Public Key Infrastructure (RPKI)</title>
            <author initials="S." surname="Kent" fullname="S. Kent">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="Ma" fullname="D. Ma">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2017" month="September"/>
            <abstract>
              <t indent="0">This document analyzes actions by or against a Certification Authority (CA) or an independent repository manager in the RPKI that can adversely affect the Internet Number Resources (INRs) associated with that CA or its subordinate CAs.  The analysis is done from the perspective of an affected INR holder.  The analysis is based on examination of the data items in the RPKI repository, as controlled by a CA (or an independent repository manager) and fetched by Relying Parties (RPs).  The analysis does not purport to be comprehensive; it does represent an orderly way to analyze a number of ways that errors by or attacks against a CA or repository manager can affect the RPKI and routing decisions based on RPKI data.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8211"/>
          <seriesInfo name="DOI" value="10.17487/RFC8211"/>
        </reference>
        <reference anchor="RFC8416" target="https://www.rfc-editor.org/info/rfc8416" quoteTitle="true" derivedAnchor="RFC8416">
          <front>
            <title>Simplified Local Internet Number Resource Management with the RPKI (SLURM)</title>
            <author initials="D." surname="Ma" fullname="D. Ma">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="D." surname="Mandelberg" fullname="D. Mandelberg">
              <organization showOnFrontPage="true"/>
            </author>
            <author initials="T." surname="Bruijnzeels" fullname="T. Bruijnzeels">
              <organization showOnFrontPage="true"/>
            </author>
            <date year="2018" month="August"/>
            <abstract>
              <t indent="0">The Resource Public Key Infrastructure (RPKI) is a global authorization infrastructure that allows the holder of Internet Number Resources (INRs) to make verifiable statements about those resources.  Network operators, e.g., Internet Service Providers (ISPs), can use the RPKI to validate BGP route origin assertions. ISPs can also use the RPKI to validate the path of a BGP route. However, ISPs may want to establish a local view of exceptions to the RPKI data in the form of local filters and additions.  The mechanisms described in this document provide a simple way to enable INR holders to establish a local, customized view of the RPKI, overriding global RPKI repository data as needed.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8416"/>
          <seriesInfo name="DOI" value="10.17487/RFC8416"/>
        </reference>
        <reference anchor="rsync" target="http://rsync.samba.org/" quoteTitle="true" derivedAnchor="rsync">
          <front>
            <title>rsync</title>
            <author/>
          </front>
        </reference>
      </references>
    </references>
    <section numbered="false" toc="include" removeInRFC="false" pn="section-appendix.a">
      <name slugifiedName="name-acknowledgements">Acknowledgements</name>
      <t indent="0" pn="section-appendix.a-1">The authors thank <contact fullname="David Mandelberg"/>, <contact fullname="Wei Wang"/>, <contact fullname="Tim Bruijnzeels"/>, <contact fullname="George Michaelson"/>, and <contact fullname="Oleg Muravskiy"/>
      for their review, feedback, and editorial assistance in preparing this
      document.</t>
    </section>
    <section anchor="authors-addresses" numbered="false" removeInRFC="false" toc="include" pn="section-appendix.b">
      <name slugifiedName="name-authors-addresses">Authors' Addresses</name>
      <author fullname="Di Ma" initials="D." surname="Ma">
        <organization showOnFrontPage="true">ZDNS</organization>
        <address>
          <postal>
            <street>4 South 4th St. Zhongguancun</street>
            <city>Haidian</city>
            <code>100190</code>
            <region>Beijing</region>
            <country>China</country>
          </postal>
          <email>madi@zdns.cn</email>
        </address>
      </author>
      <author fullname="Stephen Kent" initials="S." surname="Kent">
        <organization showOnFrontPage="true">Independent</organization>
        <address>
          <email>kent@alum.mit.edu</email>
        </address>
      </author>
    </section>
  </back>
</rfc>
