<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.19 (Ruby 3.0.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-chen-sidrops-sispi-02" category="std" consensus="true" submissionType="IETF" xml:lang="en" version="3">
  <!-- xml2rfc v2v3 conversion 3.23.1 -->
  <front>
    <title abbrev="Signed SAVNET-Peering Information">A Profile of Signed SAVNET-Peering Information (SiSPI) Object for Deploying Inter-domain SAVNET</title>
    <seriesInfo name="Internet-Draft" value="draft-chen-sidrops-sispi-02"/>
    <author initials="L." surname="Chen" fullname="Li Chen">
      <organization>Zhongguancun Laboratory</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>lichen@zgclab.edu.cn</email>
      </address>
    </author>
    <author initials="L." surname="Liu" fullname="Libin Liu">
      <organization>Zhongguancun Laboratory</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>liulb@zgclab.edu.cn</email>
      </address>
    </author>
    <author initials="D." surname="Li" fullname="Dan Li">
      <organization>Tsinghua University</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>tolidan@tsinghua.edu.cn</email>
      </address>
    </author>
    <author initials="L." surname="Qin" fullname="Lancheng Qin">
      <organization>Zhongguancun Laboratory</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>qinlc@zgclab.edu.cn</email>
      </address>
    </author>
    <date year="2024" month="September" day="26"/>
    <area>Ops</area>
    <workgroup>SIDR Operations</workgroup>
    <abstract>
      <?line 73?>

<t>This document defines a "Signed SAVNET-Peering Information" (SiSPI) object, a Cryptographic Message Syntax (CMS) protected content type included in the Resource Public Key Infrastructure (RPKI). A SiSPI object is a digitally signed object which carries the list of Autonomous Systems (ASes) deploying inter-domain SAVNET. When validated, the eContent of a SiSPI object confirms that the holder of the listed ASN produces the object and the AS has deployed inter-domain SAV and is ready to establish neighbor relationship for preventing source address spoofing.</t>
    </abstract>
  </front>
  <middle>
    <?line 77?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Attacks based on source IP address spoofing, such as reflective DDoS and flooding attacks, continue to present significant challenges to Internet security. Mitigating these attacks in inter-domain networks requires effective source address validation (SAV). While BCP84 <xref target="RFC3704"/> <xref target="RFC8704"/> offers some SAV solutions, such as ACL-based ingress filtering and uRPF-based mechanisms, existing inter-domain SAV mechanisms have limitations in terms of validation accuracy and operational overhead in different scenarios <xref target="inter-domain-ps"/>.</t>
      <t>Inter-domain SAVNET <xref target="savnet"/> proposes to exchange SAV-specific information among ASes to solve the problems of existing inter-domain SAV mechanisms. Two SAV-specific information exchanging protocols (or SAVNET protocols for short) are shown to achieve higher validation accuracy and lower operational overhead in large-scale emulations <xref target="emu-9-savs"/>. However, operators face significant difficulties in deploying SAVNET protocols. To benefit Internet routing, supporting incremental deployment is an essential requirement of SAVNET protocols <xref target="inter-domain-ps"/>. As illustrated in the Section 9.2 of <xref target="savnet"/>, during the partial or incremental deployment of SAVNET protocols, protocol-speaking agents (or SAVNET agents) within the SAVNET-adopting ASes need to find and establish connections with other SAVNET agents. Currently, there is no mechanism to achieve this automatically, and operators of SAVNET-adopting ASes must configure peering SAVNET relationship by hand, which is slow and error-prone.</t>
      <t>The neighbor discovery and connection setup process of SAV protocols can be done in an automatic and correct manner, with the introduction of a public registry that contains all ASes which both deploy SAVNET and are willing to setup SAVNET peering relationships. A newly adopting AS can use this registry as a reference, and pick appropriate ASes to setup SAVNET peering relationship.</t>
      <t>The Resource Public Key Infrastructure (RPKI) is the most suitable to host this public registry, because the primary purpose of RPKI is to improve routing security <xref target="RFC6480"/>, and defending against address spoofing is a main aspect of routing security. To this end, a mechanism is needed to facilitate holders of Automous System (AS) identifiers to declare their deployment of SAVNET <xref target="savnet"/>. The digitally Signed SAVNET-Peering Information (SiSPI) object described in this document serves the function.</t>
      <t>A SiSPI object is a cryptographically verifiable attestation signed by the holder of an AS identifier. It contains the identification information of one AS, which means the listed AS has deployed SAVNET and can perform SAV on its data plane.</t>
      <t>The SiSPI object makes use of the template for RPKI digitally signed objects <xref target="RFC6488"/>, which defines a Crytopgraphic Message Syntax (CMS) <xref target="RFC5652"/> wrapper for the SiSPI content as well as a generic validation procedure for RPKI signed objects. In accordance with Section 4 of <xref target="RFC6488"/>, this document defines:</t>
      <ol spacing="normal" type="1"><li>
          <t>The object identifier (OID) that identifies the SiSPI object. This OID appears in the eContentType field of the enCapContentInfo object as well as the content-type signed attribute within the signerInfo structure.</t>
        </li>
        <li>
          <t>The ASN.1 syntax for the SiSPI eContent, which is the payload that specifies the AS deploying SAVNET. The SiSPI eContent is encoded using the ASN.1 Distinguished Encoding Rules (DER) <xref target="X.690"/>.</t>
        </li>
        <li>
          <t>The steps required to validate a SiSPI beyond the validation steps specified in <xref target="RFC6488"/>.</t>
        </li>
      </ol>
      <section anchor="terminology">
        <name>Terminology</name>
        <t>This document makes use of the terms and concepts described in "Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile" <xref target="RFC5280"/>, "X.509 Extensions for IP Address and AS Identifiers" <xref target="RFC3779"/>, "Signed Object Template for the Resource Public Key Infrastructure (RPKI)" <xref target="RFC6488"/>, and "A Profile for X.509 PKIX Resource Certificates" <xref target="RFC6487"/>. The readers should be familiar with the terms and concepts.</t>
      </section>
      <section anchor="requirements-language">
        <name>Requirements Language</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>
    <section anchor="sav-content">
      <name>The SiSPI ContentType</name>
      <t>The content-type for a SiSPI object is defined as id-ct-rpkiSiSPI, which has the numerical value of 1.2.840.113549.1.9.16.1.52 (suggested). This OID <bcp14>MUST</bcp14> appear both within the eContentType in the encapContentInfo structure as well as the ContentType signed attribute within the signerInfo structure (see <xref target="RFC6488"/>).</t>
    </section>
    <section anchor="sav-econtent">
      <name>The SiSPI eContent</name>
      <t>The content of a SiSPI object identifies a single AS that has deployed SAVNET <xref target="savnet"/> for inter-domain SAV and a list of its IP addresses. The eContent of a SiSPI object is an instance of SAVNETAttestation, formally defined by the following ASN.1 <xref target="X.680"/> module:</t>
      <artwork><![CDATA[
RpkiSiSPI-2024
     { iso(1) member-body(2) us(840) rsadsi(113549)
       pkcs(1) pkcs9(9) smime(16) mod(0)
       id-mod-rpkiSiSPI-2024-2024(TBD0) }

DEFINITIONS EXPLICIT TAGS ::=
BEGIN

IMPORTS
  CONTENT-TYPE
  FROM CryptographicMessageSyntax-2010 -- in [RFC6268]
    { iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1)
      pkcs-9(9) smime(16) modules(0) id-mod-cms-2009(58) } ;

ct-rpkiSiSPI CONTENT-TYPE ::=
  { TYPE SAVNETAttestation IDENTIFIED BY id-ct-rpkiSiSPI }

id-ct-rpkiSiSPI OBJECT IDENTIFIER ::=
  { iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1)
    pkcs-9(9) id-smime(16) id-ct(1) TBD1 }

SAVNETAttestation ::= SEQUENCE {
  version [0]   INTEGER DEFAULT 0,
  asID          ASID,
  addresses     SEQUENCE OF IPFamilyAddresses }

ASID ::= INTEGER (0..4294967295)

IPFamilyAddresses ::= SEQUENCE {
  ipFamily    IP-ADDRESS-FAMILY.&afi ({IPAddressFamilySet}),
  ipAddresses IP-ADDRESS-FAMILY.&IPAddresses ({IPAddressFamilySet}{@ipFamily}) }

IP-ADDRESS-FAMILY ::= CLASS {
     &afi          OCTET STRING (SIZE(2)) UNIQUE,
     &IPAddresses
   } WITH SYNTAX { AFI &afi IP &IPAddresses }

IPAddressFamilySet IP-ADDRESS-FAMILY ::= { ipAddressFamilyIPv4 | ipAddressFamilyIPv6 }

ipAddressFamilyIPv4 IP-ADDRESS-FAMILY ::= { AFI afi-IPv4 IP IPv4Addresses }

ipAddressFamilyIPv6 IP-ADDRESS-FAMILY ::= { AFI afi-IPv6 IP IPv6Addresses }

afi-IPv4 OCTET STRING ::= '0001'H

afi-IPv6 OCTET STRING ::= '0002'H

IPv4Addresses ::= SEQUENCE (SIZE(1..MAX)) OF IPAddress{ub-IPv4}

IPv6Addresses ::= SEQUENCE (SIZE(1..MAX)) OF IPAddress{ub-IPv6}

ub-IPv4 INTEGER ::= 32

ub-IPv6 INTEGER ::= 128

IPAddress {INTEGER: ub} ::= BIT STRING (SIZE(0..ub))

END
]]></artwork>
      <t>Note that this content appears as the eContent within the encapContentInfo as specified in <xref target="RFC6488"/>.</t>
      <section anchor="version">
        <name>version</name>
        <t>The version number of the SAVNETAttestation that compiles with this specification <bcp14>MUST</bcp14> be 2 and <bcp14>MUST</bcp14> be explicitly encoded.</t>
      </section>
      <section anchor="asid">
        <name>asID</name>
        <t>The asID field contains the AS number that has deployed SAVNET and can perform SAV on the data plane.</t>
      </section>
      <section anchor="addresses">
        <name>addresses</name>
        <t>The addresses field contains a SEQUENCE of IPFamilyAddresses, which stores the router's IP addresses within the AS whose ID is asID, which is utilized for establishing SAVNET connections.</t>
        <section anchor="element-ipfamilyaddresses">
          <name>Element IPFamilyAddresses</name>
          <t>This field contains a SEQUENCE which contains one instance of ipFamily and one instance of ipAddresses.</t>
          <section anchor="ipfamily">
            <name>ipFamily</name>
            <t>This field contains an OCTET STRING which is either '0001'H (IPv4) or '0002'H (IPv6).</t>
          </section>
          <section anchor="ipaddresses">
            <name>ipAddresses</name>
            <t>This field contains a SEQUENCE of IPAddress instances.</t>
          </section>
          <section anchor="element-ipaddress">
            <name>Element IPAddress</name>
            <t>This element is length bounded through the Information Object Class IP-ADDRESS-FAMILY and its type is a BIT STRING.</t>
          </section>
        </section>
      </section>
    </section>
    <section anchor="sav-v">
      <name>SiSPI Validation</name>
      <t>Before, a relying party can use a SiSPI object to validate the deployment of SAVNET for inter-domain SAV, the relying party <bcp14>MUST</bcp14> first validate the SiSPI object. To validate a SiSPI object, the relying party <bcp14>MUST</bcp14> perform all the validation checks specified in <xref target="RFC6488"/> as well as the following additional specific validation steps of the Signed AS List.</t>
      <ul spacing="normal">
        <li>
          <t>The contents of the CMS eContent field <bcp14>MUST</bcp14> adhere to all the constraints described in <xref target="sav-content"/>.</t>
        </li>
        <li>
          <t>The AS Identifier Delegation Extension <xref target="RFC3779"/> <bcp14>MUST</bcp14> be present in the end-entity (EE) certificate (contained within the SiSPI object), and the asID in the SiSPI object eContent <bcp14>MUST</bcp14> be contained within the set of AS numbers specified by the EE certificate's AS Identifier Delegation Extension.</t>
        </li>
        <li>
          <t>The EE certificate's AS Identifier Delegation Extension <bcp14>MUST NOT</bcp14> contain any ''inherit'' elements.</t>
        </li>
        <li>
          <t>The IP Address Delegation Extension <xref target="RFC3779"/> <bcp14>MUST</bcp14> be absent.</t>
        </li>
      </ul>
      <t>The pseudocode for SiSPI validation is as follows:</t>
      <artwork><![CDATA[
function ValidateSiSPI(sispiObject, eeCertificate):
    // Step 1: Validate the SiSPI object using the generic RPKI 
    //         validation procedure.
    // This includes checking the CMS wrapper, signature, and 
    //         certification path.
    if not IsValidRPKISignedObject(sispiObject):
        return False, "Invalid RPKI Signed Object"

    // Step 2: Check the content-type of the SiSPI object.
    if not sispiObject.eContentType == SAVNETAuthzOID:
        return False, "Invalid content-type"

    // Step 3: Parse the eContent of the SiSPI object as 
    //         SAVNETAttestation.
    sispiContent = ParseSAVNETAttestation(sispiObject.eContent)
    if sispiContent is None:
        return False, "Unable to parse SAVNETAttestation"

    // Step 4: Ensure the version number is explicitly set to 2.
    if not (sispiContent.version exists and sispiContent.version==2):
        return False, "Invalid version"

    // Step 5: Validate the AS Identifier Delegation Extension in
    //         the EE certificate.
    if not ValidateASIdExt(eeCertificate, sispiContent.asID):
        return False, "AS Identifier Extension validation failed"

    // Step 6: Ensure the EE certificate's AS Identifier Delegation
    //         Extension does not contain 'inherit'.
    if "inherit" in eeCertificate.asIdentifiers:
        return False, 
               "AS Identifier Delegation Extension contains 'inherit'"

    // Step 7: Ensure the IP Address Delegation Extension is absent.
    if HasIPAddressDelegationExtension(eeCertificate):
        return False, "IP Address Delegation Extension is present"

    // Step 8: Determine if all validation checks are successful.
    return True, "SiSPI object is valid"

function ValidateASIdentifierExtension(eeCertificate, asID):
    // Check if the asID is within the set of AS numbers 
    //   specified by the AS Identifier Delegation Extension.
    return asID in eeCertificate.asIdentifiers

function HasIPAddressDelegationExtension(eeCertificate):
    // Check for the presence of the IP Address Delegation 
    //   Extension.
    return "ipAddresses" in eeCertificate.extensions
]]></artwork>
    </section>
    <section anchor="IANA">
      <name>IANA Considerations</name>
      <section anchor="rpki-signed-object-registry">
        <name>RPKI Signed Object Registry</name>
        <t>Please add an item for the SiSPI object file extension to the RPKI Signed Object registry (https://www.iana.org/assignments/rpki/rpki.xhtml#signed-objects) as follows:</t>
        <artwork><![CDATA[
Name                              | OID                                    | Reference
-----------------------------------------------------------------------------------------------------
Signed SAVNET-Peering Information | 1.2.840.113549.1.9.16.1.52 (suggested) | draft-chen-sidrops-sispi
]]></artwork>
      </section>
      <section anchor="rpki-repository-name-scheme-registry">
        <name>RPKI Repository Name Scheme Registry</name>
        <t>Please add an item for the SiSPI object file extension to the "RPKI Repository Name Scheme" registry created by <xref target="RFC6481"/> as follows:</t>
        <artwork><![CDATA[
Filename
Extension | RPKI Object                       | Reference
------------------------------------------------------------------------
   .sav   | Signed SAVNET-Peering Information | draft-chen-sidrops-sispi
]]></artwork>
      </section>
      <section anchor="smi-security-for-smime-module-identifier-1284011354919160">
        <name>SMI Security for S/MIME Module Identifier (1.2.840.113549.1.9.16.0)</name>
        <t>IANA is requested to allocate the following in the "SMI Security for S/MIME Module Identifier (1.2.840.113549.1.9.16.0)" registry:</t>
        <artwork><![CDATA[
Decimal | Description                | Reference
---------------------------------------------------------------
TBD     | id-mod-rpkiSiSPI-2024-2024 | draft-chen-sidrops-sispi
]]></artwork>
      </section>
      <section anchor="media-type-registry">
        <name>Media Type Registry</name>
        <t>The IANA is requested to register the media type application/rpki-sispi in the "Media Type" registry as follows:</t>
        <artwork><![CDATA[
Type name: application
Subtype name: rpki-sispi
Required parameters: N/A
Optional parameters: N/A
Encoding considerations: binary
Security considerations: Carries Signed SAVNET-Peering Information.
  This media type contains no active content. See
  Section 4 of draft-chen-sidrops-sispi for further information.
Interoperability considerations: None
Published specification: draft-chen-sidrops-sispi
Applications that use this media type: RPKI operators
Additional information:
  Content: This media type is a signed object, as defined
      in {{RFC6488}}, which contains a payload of an AS identifer
      as defined in draft-chen-sidrops-sispi.
Magic number(s): None
File extension(s): .sav
Macintosh file type code(s):
Person & email address to contact for further information:
Li Chen <lichen@zgclab.edu.cn>
Intended usage: COMMON
Restrictions on usage: None
Change controller: IETF
]]></artwork>
      </section>
    </section>
    <section anchor="using-sispi">
      <name>Using SiSPI</name>
      <t>A router can use the AS_Path from BGP announcements, ASPA objects, and SiSPI to find the closest ASes to set up SAVNET peering, as described below:</t>
      <ol spacing="normal" type="1"><li>
          <t>BGP AS_Paths Analysis:  </t>
          <ul spacing="normal">
            <li>
              <t>Collect AS paths from BGP announcements.</t>
            </li>
            <li>
              <t>Determine the frequency or preference of certain AS paths based on routing policies, which may involve path attributes like AS path length, origin type, local preference, and MED (Multi-Exit Discriminator).</t>
            </li>
          </ul>
        </li>
        <li>
          <t>ASPA Verification:  </t>
          <ul spacing="normal">
            <li>
              <t>Use ASPA objects to verify the legitimacy of customer-provider AS relationships.</t>
            </li>
            <li>
              <t>Ensure that the AS paths conform to the customer-provider relationships indicated by the ASPAs, thereby validating the correctness of the routing information.</t>
            </li>
          </ul>
        </li>
        <li>
          <t>Peering Candidates Determination:  </t>
          <ul spacing="normal">
            <li>
              <t>Identify the ASes that frequently appear on the preferred paths to various destinations, implying they are topologically 'close' or significant transit providers.</t>
            </li>
            <li>
              <t>Among these ASes, rank those according to their frequency in an descending order, since the frequency indicates the weight of traffic from the local AS and higher frequency represents more volume of traffic to transmit for the local AS.</t>
            </li>
          </ul>
        </li>
        <li>
          <t>SiSPI Objects Utilization:  </t>
          <ul spacing="normal">
            <li>
              <t>Retrieve SiSPI objects from the RPKI repository to determine which ASes have deployed SAVNET.</t>
            </li>
            <li>
              <t>Filter the previously identified candidate ASes by checking whether they have a valid SiSPI object, which would indicate their readiness to establish SAVNET peering.</t>
            </li>
          </ul>
        </li>
        <li>
          <t>Peering Candidates Selection:  </t>
          <ul spacing="normal">
            <li>
              <t>From the set of candidate ASes with valid SiSPI objects, select candidates for SAVNET peering based on their rankings.</t>
            </li>
            <li>
              <t>The selection criteria may include additional factors such as existing peering policies, traffic volumes, and peering agreements.</t>
            </li>
          </ul>
        </li>
        <li>
          <t>Peering Establishment:  </t>
          <ul spacing="normal">
            <li>
              <t>Initiate peering negotiations with the selected candidate ASes.</t>
            </li>
            <li>
              <t>Upon successful negotiation, establish SAVNET peering relationships and configure the necessary SAVNET protocols.</t>
            </li>
          </ul>
        </li>
      </ol>
      <t>Based on the above steps, a description of the detailed procedure to establish SAVNET peering relationships is as follows:</t>
      <ol spacing="normal" type="1"><li>
          <t>Let the set of selected AS paths to all the potential destinations be denoted as ASPaths.</t>
        </li>
        <li>
          <t>Let i = 1. Validate ASPaths(i) using ASPA objects.</t>
        </li>
        <li>
          <t>Let the set of validated AS paths be denoted as ASPaths-V.</t>
        </li>
        <li>
          <t>If ASPaths(i) passes the validation of ASPA objects, add it to ASPaths-V.</t>
        </li>
        <li>
          <t>Increment i to i+1.</t>
        </li>
        <li>
          <t>If ASPaths(i) is null, then set i_max = i - 1 and go to Step 7. Else, go to Step 4.</t>
        </li>
        <li>
          <t>Let j = 1 and k = 1. Initialize AS-set S(1) = ASPaths-V(1)(1) and N(ASPaths-V(1)(1)) = 1.</t>
        </li>
        <li>
          <t>If ASPaths-V(j)(k) belongs to S, N(ASPaths-V(j)(k)) = N(ASPaths-V(j)(k)) + 1. Else, N(ASPaths-V(j)(k)) = 1 and S(J * k) = ASPaths-V(j)(k).</t>
        </li>
        <li>
          <t>Increment k to k+1.</t>
        </li>
        <li>
          <t>If ASPaths-V(j)(k) is null, then go to Step 11. Else, go to Step 8.</t>
        </li>
        <li>
          <t>Increment j to j+1.</t>
        </li>
        <li>
          <t>If ASPaths-V(j)(k) is null, then go to Step 13. Else, go to Step 8.</t>
        </li>
        <li>
          <t>Rank the AS-set N according to its values in descending order.</t>
        </li>
        <li>
          <t>Retrieve SiSPI objects from the RPKI repository and let the set of ASes within the SiSPI objects be denoted as O.</t>
        </li>
        <li>
          <t>Let m = 1. Create a SAVNET neighbor candidate set C.</t>
        </li>
        <li>
          <t>If N(m) belongs to O, add N(1) to C.</t>
        </li>
        <li>
          <t>Increate m to m + 1.</t>
        </li>
        <li>
          <t>If N(m) is null or the number of ASes in set C exceeds 4000, go to Step 19. Else, go to Step 16.</t>
        </li>
        <li>
          <t>Establish SAVNET peering relationship with the selected candidate ASes in set C.</t>
        </li>
      </ol>
    </section>
    <section anchor="newly-savnet-adopting-ases">
      <name>Newly SAVNET-adopting ASes</name>
      <t>The newly SAVNET-adopting ASes need to register the SiSPI object proactively to help other SAVNET-adopting ASes find it and establish SAVNET peering relationships, as well as using the SiSPI objects to establish SAVNET peering relationships with other SAVNET-adopting ASes.</t>
      <t>To register the SiSPI object, the newly SAVNET-adopting ASes should share its information as described in <xref target="sav-econtent"/>.</t>
      <t>To establish SAVNET peering relationships with other SAVNET-adopting ASes, the newly SAVNET-adopting ASes should collect BGP announcements, ASPA objects, and SiSPI objects, and run the procedures described in <xref target="using-sispi"/>.</t>
    </section>
    <section anchor="security">
      <name>Security Considerations</name>
      <t>The security considerations of <xref target="RFC6481"/>, <xref target="RFC6485"/>, and <xref target="RFC6488"/> also apply to the SiSPI object.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC3704">
          <front>
            <title>Ingress Filtering for Multihomed Networks</title>
            <author fullname="F. Baker" initials="F." surname="Baker"/>
            <author fullname="P. Savola" initials="P." surname="Savola"/>
            <date month="March" year="2004"/>
            <abstract>
              <t>BCP 38, RFC 2827, is designed to limit the impact of distributed denial of service attacks, by denying traffic with spoofed addresses access to the network, and to help ensure that traffic is traceable to its correct source network. As a side effect of protecting the Internet against such attacks, the network implementing the solution also protects itself from this and other attacks, such as spoofed management access to networking equipment. There are cases when this may create problems, e.g., with multihoming. This document describes the current ingress filtering operational mechanisms, examines generic issues related to ingress filtering, and delves into the effects on multihoming in particular. This memo updates RFC 2827. 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="84"/>
          <seriesInfo name="RFC" value="3704"/>
          <seriesInfo name="DOI" value="10.17487/RFC3704"/>
        </reference>
        <reference anchor="RFC8704">
          <front>
            <title>Enhanced Feasible-Path Unicast Reverse Path Forwarding</title>
            <author fullname="K. Sriram" initials="K." surname="Sriram"/>
            <author fullname="D. Montgomery" initials="D." surname="Montgomery"/>
            <author fullname="J. Haas" initials="J." surname="Haas"/>
            <date month="February" year="2020"/>
            <abstract>
              <t>This document identifies a need for and proposes improvement of the unicast Reverse Path Forwarding (uRPF) techniques (see RFC 3704) for detection and mitigation of source address spoofing (see BCP 38). Strict uRPF is inflexible about directionality, the loose uRPF is oblivious to directionality, and the current feasible-path uRPF attempts to strike a balance between the two (see RFC 3704). However, as shown in this document, the existing feasible-path uRPF still has shortcomings. This document describes enhanced feasible-path uRPF (EFP-uRPF) techniques that are more flexible (in a meaningful way) about directionality than the feasible-path uRPF (RFC 3704). The proposed EFP-uRPF methods aim to significantly reduce false positives regarding invalid detection in source address validation (SAV). Hence, they can potentially alleviate ISPs' concerns about the possibility of disrupting service for their customers and encourage greater deployment of uRPF techniques. This document updates RFC 3704.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="84"/>
          <seriesInfo name="RFC" value="8704"/>
          <seriesInfo name="DOI" value="10.17487/RFC8704"/>
        </reference>
        <reference anchor="RFC6480">
          <front>
            <title>An Infrastructure to Support Secure Internet Routing</title>
            <author fullname="M. Lepinski" initials="M." surname="Lepinski"/>
            <author fullname="S. Kent" initials="S." surname="Kent"/>
            <date month="February" year="2012"/>
            <abstract>
              <t>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="RFC6488">
          <front>
            <title>Signed Object Template for the Resource Public Key Infrastructure (RPKI)</title>
            <author fullname="M. Lepinski" initials="M." surname="Lepinski"/>
            <author fullname="A. Chi" initials="A." surname="Chi"/>
            <author fullname="S. Kent" initials="S." surname="Kent"/>
            <date month="February" year="2012"/>
            <abstract>
              <t>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="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="RFC3779">
          <front>
            <title>X.509 Extensions for IP Addresses and AS Identifiers</title>
            <author fullname="C. Lynn" initials="C." surname="Lynn"/>
            <author fullname="S. Kent" initials="S." surname="Kent"/>
            <author fullname="K. Seo" initials="K." surname="Seo"/>
            <date month="June" year="2004"/>
            <abstract>
              <t>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="RFC6481">
          <front>
            <title>A Profile for Resource Certificate Repository Structure</title>
            <author fullname="G. Huston" initials="G." surname="Huston"/>
            <author fullname="R. Loomans" initials="R." surname="Loomans"/>
            <author fullname="G. Michaelson" initials="G." surname="Michaelson"/>
            <date month="February" year="2012"/>
            <abstract>
              <t>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="RFC6485">
          <front>
            <title>The Profile for Algorithms and Key Sizes for Use in the Resource Public Key Infrastructure (RPKI)</title>
            <author fullname="G. Huston" initials="G." surname="Huston"/>
            <date month="February" year="2012"/>
            <abstract>
              <t>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, and signed objects as well as for the relying parties (RPs) that verify these digital signatures. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6485"/>
          <seriesInfo name="DOI" value="10.17487/RFC6485"/>
        </reference>
        <reference anchor="RFC5280">
          <front>
            <title>Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile</title>
            <author fullname="D. Cooper" initials="D." surname="Cooper"/>
            <author fullname="S. Santesson" initials="S." surname="Santesson"/>
            <author fullname="S. Farrell" initials="S." surname="Farrell"/>
            <author fullname="S. Boeyen" initials="S." surname="Boeyen"/>
            <author fullname="R. Housley" initials="R." surname="Housley"/>
            <author fullname="W. Polk" initials="W." surname="Polk"/>
            <date month="May" year="2008"/>
            <abstract>
              <t>This memo profiles the X.509 v3 certificate and X.509 v2 certificate revocation list (CRL) for use in the Internet. An overview of this approach and model is provided as an introduction. The X.509 v3 certificate format is described in detail, with additional information regarding the format and semantics of Internet name forms. Standard certificate extensions are described and two Internet-specific extensions are defined. A set of required certificate extensions is specified. The X.509 v2 CRL format is described in detail along with standard and Internet-specific extensions. An algorithm for X.509 certification path validation is described. An ASN.1 module and examples are provided in the appendices. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5280"/>
          <seriesInfo name="DOI" value="10.17487/RFC5280"/>
        </reference>
        <reference anchor="RFC6487">
          <front>
            <title>A Profile for X.509 PKIX Resource Certificates</title>
            <author fullname="G. Huston" initials="G." surname="Huston"/>
            <author fullname="G. Michaelson" initials="G." surname="Michaelson"/>
            <author fullname="R. Loomans" initials="R." surname="Loomans"/>
            <date month="February" year="2012"/>
            <abstract>
              <t>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="X.690">
          <front>
            <title>Information Technology - ASN.1 encoding rules&amp;#59; Specification of Basic Encoding Rules (BER), Canonical Encoding Rules (CER) and Distinguished Encoding Rules (DER)</title>
            <author>
              <organization/>
            </author>
            <date year="2021"/>
          </front>
        </reference>
        <reference anchor="X.680">
          <front>
            <title>Information technology - Abstract Syntax Notation One (ASN.1)&amp;#59; Specification of basic notation</title>
            <author>
              <organization/>
            </author>
            <date year="2021"/>
          </front>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="inter-domain-ps" target="https://datatracker.ietf.org/doc/draft-ietf-savnet-inter-domain-problem-statement/">
          <front>
            <title>Source Address Validation in Inter-domain Networks Gap Analysis, Problem Statement, and Requirements</title>
            <author>
              <organization/>
            </author>
            <date year="2024"/>
          </front>
        </reference>
        <reference anchor="savnet" target="https://datatracker.ietf.org/doc/draft-wu-savnet-inter-domain-architecture/">
          <front>
            <title>Inter-domain Source Address Validation (SAVNET) Architecture</title>
            <author>
              <organization/>
            </author>
            <date year="2024"/>
          </front>
        </reference>
        <reference anchor="emu-9-savs" target="https://datatracker.ietf.org/meeting/118/materials/slides-118-savnet-emulations-of-nine-sav-mechanisms-with-sav-open-playground-00">
          <front>
            <title>Emulations of 9 SAV Mechanisms with SAV Open Playground</title>
            <author>
              <organization/>
            </author>
            <date year="2023"/>
          </front>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
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
/wOdyaRLrlEAAA==

-->

</rfc>
