<?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-rfc2629 version 1.6.2 (Ruby 3.0.3) -->
<?rfc rfcedstyle="yes"?>
<?rfc tocindent="yes"?>
<?rfc strict="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc text-list-symbols="-o*+"?>
<?rfc docmapping="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="pre5378Trust200902" docName="draft-ietf-tls-dtls-rrc-05" category="std" consensus="true" updates="6347" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.12.3 -->
  <front>
    <title abbrev="DTLS Return Routability Check">Return Routability Check for DTLS 1.2 and DTLS 1.3</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-tls-dtls-rrc-05"/>
    <author initials="H." surname="Tschofenig" fullname="Hannes Tschofenig" role="editor">
      <organization>Arm Limited</organization>
      <address>
        <email>hannes.tschofenig@arm.com</email>
      </address>
    </author>
    <author initials="T." surname="Fossati" fullname="Thomas Fossati">
      <organization>Arm Limited</organization>
      <address>
        <email>thomas.fossati@arm.com</email>
      </address>
    </author>
    <date year="2022" month="March" day="07"/>
    <area>Security</area>
    <workgroup>TLS</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <t>This document specifies a return routability check for use in context of the
Connection ID (CID) construct for the Datagram Transport Layer Security (DTLS)
protocol versions 1.2 and 1.3.</t>
    </abstract>
    <note removeInRFC="true">
      <name>Discussion Venues</name>
      <t>Discussion of this document takes place on the
  Transport Layer Security Working Group mailing list (tls@ietf.org),
  which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/tls/"/>.</t>
      <t>Source for this draft and an issue tracker can be found at
  <eref target="https://github.com/tlswg/dtls-rrc"/>.</t>
    </note>
  </front>
  <middle>
    <section anchor="introduction">
      <name>Introduction</name>
      <t>In "classical" DTLS, selecting a security context of an incoming DTLS record is
accomplished with the help of the 5-tuple, i.e. source IP address, source port,
transport protocol, destination IP address, and destination port.  Changes to
this 5 tuple can happen for a variety reasons over the lifetime of the DTLS
session.  In the IoT context, NAT rebinding is common with sleepy devices.
Other examples include end host mobility and multi-homing.  Without CID, if the
source IP address and/or source port changes during the lifetime of an ongoing
DTLS session then the receiver will be unable to locate the correct security
context.  As a result, the DTLS handshake has to be re-run.  Of course, it is
not necessary to re-run the full handshake if session resumption is supported
and negotiated.</t>
      <t>A CID is an identifier carried in the record layer header of a DTLS datagram
that gives the receiver additional information for selecting the appropriate
security context.  The CID mechanism has been specified in
<xref target="I-D.ietf-tls-dtls-connection-id"/> for DTLS 1.2 and in
<xref target="I-D.ietf-tls-dtls13"/> for DTLS 1.3.</t>
      <t>Section 6 of <xref target="I-D.ietf-tls-dtls-connection-id"/> describes how the use of CID
increases the attack surface by providing both on-path and off-path attackers
an opportunity for (D)DoS.  It then goes on describing the steps a DTLS
principal must take when a record with a CID is received that has a source
address (and/or port) different from the one currently associated with the DTLS
connection.  However, the actual mechanism for ensuring that the new peer
address is willing to receive and process DTLS records is left open.  This
document standardizes a return routability check (RRC) as part of the DTLS
protocol itself.</t>
      <t>The return routability check is performed by the receiving peer before the
CID-to-IP address/port binding is updated in that peer's session state
database.  This is done in order to provide more confidence to the receiving
peer that the sending peer is reachable at the indicated address and port.</t>
      <t>Note however that, irrespective of CID, if RRC has been successfully negotiated
by the peers, path validation can be used at any time by either endpoint. For
instance, an endpoint might use RRC to check that a peer is still in possession
of its address after a period of quiescence.</t>
    </section>
    <section anchor="conventions-and-terminology">
      <name>Conventions and Terminology</name>
      <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED",
"MAY", and "OPTIONAL" 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>
      <t>This document assumes familiarity with the CID format and protocol defined for
DTLS 1.2 <xref target="I-D.ietf-tls-dtls-connection-id"/> and for DTLS 1.3
<xref target="I-D.ietf-tls-dtls13"/>.  The presentation language used in this document is
described in Section 4 of <xref target="RFC8446"/>.</t>
      <t>This document reuses the definition of "anti-amplification limit" from
<xref target="RFC9000"/> to mean three times the amount of data received from an
unvalidated address.  This includes all DTLS records originating from that
source address, excluding discarded ones.</t>
    </section>
    <section anchor="rrc-extension">
      <name>RRC Extension</name>
      <t>The use of RRC is negotiated via the <tt>rrc</tt> DTLS-only extension.  On connecting,
the client includes the <tt>rrc</tt> extension in its ClientHello if it wishes to use
RRC.  If the server is capable of meeting this requirement, it responds with a
<tt>rrc</tt> extension in its ServerHello.  The <tt>extension_type</tt> value for this
extension is TBD1 and the <tt>extension_data</tt> field of this extension is empty.
The client and server MUST NOT use RRC unless both sides have successfully
exchanged <tt>rrc</tt> extensions.</t>
      <t>Note that the RRC extension applies to both DTLS 1.2 and DTLS 1.3.</t>
    </section>
    <section anchor="the-return-routability-check-message">
      <name>The Return Routability Check Message</name>
      <t>When a record with CID is received that has the source address of the enclosing
UDP datagram different from the one previously associated with that CID, the
receiver MUST NOT update its view of the peer's IP address and port number with
the source specified in the UDP datagram before cryptographically validating
the enclosed record(s) but instead perform a return routability check.</t>
      <artwork><![CDATA[
enum {
    invalid(0),
    change_cipher_spec(20),
    alert(21),
    handshake(22),
    application_data(23),
    heartbeat(24),  /* RFC 6520 */
    return_routability_check(TBD2), /* NEW */
    (255)
} ContentType;

uint64 Cookie;

enum {
    path_challenge(0),
    path_response(1),
    path_delete(2),
    reserved(2..255)
} rrc_msg_type;

struct {
    rrc_msg_type msg_type;
    select (return_routability_check.msg_type) {
        case path_challenge: Cookie;
        case path_response:  Cookie;
        case path_delete:  Cookie;
    };
} return_routability_check;
]]></artwork>
      <t>The cookie is a 8-byte field containing arbitrary data.</t>
      <t>The <tt>return_routability_check</tt> message MUST be authenticated and encrypted using
the currently active security context.</t>
    </section>
    <section anchor="off-path">
      <name>Off-Path Packet Forwarding</name>
      <t>An off-path attacker that can observe packets might forward copies of
genuine packets to endpoints. If the copied packet arrives before
the genuine packet, this will appear as a NAT rebinding. Any genuine
packet will be discarded as a duplicate. If the attacker is able to
continue forwarding packets, it might be able to cause migration to a
path via the attacker. This places the attacker on-path, giving it
the ability to observe or drop all subsequent packets.</t>
      <t>This style of attack relies on the attacker using a path that has
approximately the same characteristics as the direct path between
endpoints. The attack is more reliable if relatively few packets are
sent or if packet loss coincides with the attempted attack.</t>
      <t>A data packet received on the original path that increases the
maximum received packet number will cause the endpoint to move back
to that path. Eliciting packets on this path increases the
likelihood that the attack is unsuccessful.</t>
      <t><xref target="fig-off-path"/> demonstrates the case where a receiver receives a
packet with a new source IP address and/or new port number. The
receiver needs to determine whether this path change is caused
by an attacker and will send a RRC message of type path_challenge (RRC-1)
on the old path.</t>
      <figure anchor="fig-off-path">
        <name>Off-Path Packet Forwarding Scenario</name>
        <artwork><![CDATA[
        new   +--------+  old
        path  |        |  path
       +----->|Receiver|<-----+
       |      |        |      |
       |      +--------+      |
       |                      |
       |                      |
       |                      |
       |                      |
       |                      |
 +----------+                 |
 | Attacker?|                 |
 +----------+                 |
       |                      |
       |                      |
       |                      |
       |      +--------+      |
       |      |        |      |
       +------| Sender |------+
              |        |
              +--------+
]]></artwork>
      </figure>
      <t>Three cases need to be considered:</t>
      <t>Case 1: The old path is dead, which leads to a timeout of RRC-1.</t>
      <t>As shown in <xref target="fig-old-path-dead"/>, a RRC message of type
path_challenge (RRC-2) needs to be sent on the new path. In this
situation the switch to the new path is considered legitimate.
The sender will reply with RRC-3 containing a path_response on
the new path.</t>
      <figure anchor="fig-old-path-dead">
        <name>Old path is dead</name>
        <artwork><![CDATA[
   ...................>+--------+
   .           ********|        |********
   .           *+----->|Receiver|<-----+*
   .           *| new  |        | old  |*
   .     RRC-2 *| path +--------+ path |* RRC-1
   .      with *|                      |* with
   .     path- *|                      |* path-
   . challenge *|                      |* challenge
   .           *|                      |*
   .           *|                      |*
   .      +----------+                 |*
   .      | Attacker |                 |*
   .      +----------+                 |*
   .           *|                      |v
   .           *|                      |timeout
   .           *|                      |
   .RRC-3      *|      +--------+      |
   .with       *|      |        |      |
   .path-      *+------| Sender |------+
   .response   *******>|        |
   ....................+--------+
]]></artwork>
      </figure>
      <t>Case 2: The old path is alive but not preferred.</t>
      <t>This case is shown in <xref target="fig-old-path-not-preferred"/> whereby the
sender replies with a RRC-2 path_delete message on the old path.
This triggers the receiver to send RRC-3 with a path-challenge
along the new path. The sender will reply with RRC-4 containing
a path_response along the new path.</t>
      <figure anchor="fig-old-path-not-preferred">
        <name>Old path is not preferred</name>
        <artwork><![CDATA[
  ...................>+--------+<....................
  .           ********|        |********            .
  .           *+----->|Receiver|<-----+*            .
  .           *| new  |        | old  |*            .
  .     RRC-3 *| path +--------+ path |* RRC-1      .
  .      with *|                      |* with       .
  .     path- *|                      |* path-      .
  . challenge *|                      |* challenge  .
  .           *|                      |*            .
  .           *|                      |*            .
  .      +----------+                 |*            .
  .      | Attacker |                 |*            .
  .      +----------+                 |*            .
  .           *|                      |*            .
  .           *|                      |*            .
  .           *|                      |*            .
  .RRC-4      *|      +--------+      |*       RRC-2.
  .with       *|      |        |      |*        with.
  .path-      *+------| Sender |------+*       path-.
  .response   *******>|        |<*******      delete.
  ....................+--------+.....................
]]></artwork>
      </figure>
      <t>Case 3: The old path is alive and preferred.</t>
      <t>This is most likely the result of an attacker. The sender replies
with RRC-2 containing a path_response along the old path. The
interaction is shown in <xref target="fig-old-path-preferred"/>. This results
in the connection being migrated back to the old path.</t>
      <figure anchor="fig-old-path-preferred">
        <name>Old path is preferred</name>
        <artwork><![CDATA[
               +--------+<....................
               |        |********            .
        +----->|Receiver|<-----+*            .
        | new  |        | old  |*            .
        | path +--------+ path |* RRC-1      .
        |                      |* with       .
        |                      |* path-      .
        |                      |* challenge  .
        |                      |*            .
        |                      |*            .
  +----------+                 |*            .
  | Attacker |                 |*            .
  +----------+                 |*            .
        |                      |*            .
        |                      |*            .
        |                      |*            .
        |      +--------+      |*       RRC-2.
        |      |        |      |*        with.
        +------| Sender |------+*       path-.
               |        |<*******    response.
               +--------+.....................
]]></artwork>
      </figure>
      <t>Note that this defense is imperfect, but this is not considered a serious
problem. If the path via the attack is reliably faster than the
old path despite multiple attempts to use that old path, it
is not possible to distinguish between an attack and an improvement
in routing.</t>
      <t>An endpoint could also use heuristics to improve detection of this
style of attack. For instance, NAT rebinding is improbable if
packets were recently received on the old path; similarly, rebinding
is rare on IPv6 paths. Endpoints can also look for duplicated
packets. Conversely, a change in connection ID is more likely to
indicate an intentional migration rather than an attack. Note, however,
changes in connection IDs are only supported in DTLS 1.3 but not in
DTLS 1.2.</t>
    </section>
    <section anchor="regular">
      <name>Path Validation Procedure</name>
      <t>Note: This algorithm does not take the <xref target="off-path"/> scenario into account.</t>
      <t>The receiver that observes the peer's address or port update MUST stop sending
any buffered application data (or limit the data sent to the unvalidated
address to the anti-amplification limit) and initiate the return routability
check that proceeds as follows:</t>
      <ol spacing="normal" type="1"><li>The receiver creates a <tt>return_routability_check</tt> message of
type path_challenge and places the unpredictable cookie into the message.</li>
        <li>The message is sent to the observed new address and a timer T (see
<xref target="timer-choice"/>) is started.</li>
        <li>The peer endpoint, after successfully verifying the received
<tt>return_routability_check</tt> message responds by echoing the cookie value in a
<tt>return_routability_check</tt> message of type path_response.</li>
        <li>When the initiator receives and verifies the <tt>return_routability_check</tt>
message contains the sent cookie, it updates the peer address binding.</li>
        <li>If T expires, or the address confirmation fails, the peer address binding is
not updated.</li>
      </ol>
      <t>After this point, any pending send operation is resumed to the bound peer
address.</t>
      <t><xref target="path-challenge-reqs"/> and <xref target="path-response-reqs"/> contain the requirements for
the initiator and responder roles, broken down per protocol phase.</t>
    </section>
    <section anchor="enhanced">
      <name>Enhanced Path Validation Procedure</name>
      <t>Note: This algorithm also takes the <xref target="off-path"/> scenario into account.</t>
      <t>The receiver that observes the peer's address or port update MUST stop sending
any buffered application data (or limit the data sent to the unvalidated
address to the anti-amplification limit) and initiate the return routability
check that proceeds as follows:</t>
      <ol spacing="normal" type="1"><li>The receiver creates a <tt>return_routability_check</tt> message of
type path_challenge and places the unpredictable cookie into the message.</li>
        <li>The message is sent to the previously valid address, which corresponds to the
old path. Additionally, a timer T, see <xref target="timer-choice"/>, is started.</li>
        <li>
          <t>The peer endpoint verifies the received <tt>return_routability_check</tt> message.
The action to be taken depends on the preference of the path through which
the message was received:
          </t>
          <ul spacing="normal">
            <li>If the path through which the message was received is preferred,
a <tt>return_routability_check</tt> message of type path_response MUST be returned.</li>
            <li>If the path through which the message was received is not preferred,
a <tt>return_routability_check</tt> message of type path_delete MUST be returned.
In either case, the peer endpoint echoes the cookie value in the response.</li>
          </ul>
        </li>
        <li>
          <t>The initiator receives and verifies that the <tt>return_routability_check</tt>
message contains the previously sent cookie. The actions taken by the
initiator differ based on the received message:
          </t>
          <ul spacing="normal">
            <li>When a <tt>return_routability_check</tt> message of type path_response was received,
the initiator MUST continue using the previously valid address, i.e. no switch
to the new path takes place and the peer address binding is not updated.</li>
            <li>When a <tt>return_routability_check</tt> message of type path_delete was received,
the initiator MUST perform a return routability check on the observed new
address, as described in <xref target="regular"/>.</li>
          </ul>
        </li>
        <li>If T expires, or the address confirmation fails, the peer address binding is
not updated. In this case, the initiator MUST perform a return routability
check on the observed new address, as described in <xref target="regular"/>.</li>
      </ol>
      <t>After the path validation procedure is completed, any pending send operation is
resumed to the bound peer address.</t>
      <t><xref target="path-challenge-reqs"/> and <xref target="path-response-reqs"/> contain the requirements for
the initiator and responder roles, broken down per protocol phase.</t>
      <section anchor="path-challenge-reqs">
        <name> Path Challenge Requirements</name>
        <ul spacing="normal">
          <li>
            <t>The initiator MAY send multiple <tt>return_routability_check</tt> messages of type
path_challenge to cater for packet loss on the probed path.
            </t>
            <ul spacing="normal">
              <li>Each path_challenge SHOULD go into different transport packets.  (Note that
the DTLS implementation may not have control over the packetization done by
the transport layer.)</li>
              <li>The transmission of subsequent path_challenge messages SHOULD be paced to
decrease the chance of loss.</li>
              <li>Each path_challenge message MUST contain random data.</li>
            </ul>
          </li>
          <li>The initiator MAY use padding using the record padding mechanism available in
DTLS 1.3 (and in DTLS 1.2, when CID is enabled on the sending direction) up
to the anti-amplification limit to probe if the path MTU (PMTU) for the new
path is still acceptable.</li>
        </ul>
      </section>
      <section anchor="path-response-reqs">
        <name>Path Response/Delete Requirements</name>
        <ul spacing="normal">
          <li>The responder MUST NOT delay sending an elicited path_response or
path_delete messages.</li>
          <li>The responder MUST send exactly one path_response or path_delete message
for each received path_challenge.</li>
          <li>The responder MUST send the path_response or the  path_delete on the path
where the corresponding path_challenge has been received, so that validation
succeeds only if the path is functional in both directions. The initiator
MUST NOT enforce this behaviour.</li>
          <li>The initiator MUST silently discard any invalid path_response it receives.</li>
        </ul>
        <t>Note that RRC does not cater for PMTU discovery on the reverse path.  If the
responder wants to do PMTU discovery using RRC, it should initiate a new path
validation procedure.</t>
      </section>
      <section anchor="timer-choice">
        <name>Timer Choice</name>
        <t>When setting T, implementations are cautioned that the new path could have a
longer round-trip time (RTT) than the original.</t>
        <t>In settings where there is external information about the RTT of the active
path, implementations SHOULD use T = 3xRTT.</t>
        <t>If an implementation has no way to obtain information regarding the RTT of the
active path, a value of 1s SHOULD be used.</t>
        <t>Profiles for specific deployment environments -- for example, constrained
networks <xref target="I-D.ietf-uta-tls13-iot-profile"/> -- MAY specify a different, more
suitable value.</t>
      </section>
    </section>
    <section anchor="example">
      <name>Example</name>
      <t>The example TLS 1.3 handshake shown in <xref target="fig-handshake"/> shows a client
and a server negotiating the support for CID and for the RRC extension.</t>
      <figure anchor="fig-handshake">
        <name>Message Flow for Full TLS Handshake</name>
        <artwork><![CDATA[
       Client                                           Server

Key  ^ ClientHello
Exch | + key_share
     | + signature_algorithms
     | + rrc
     v + connection_id=empty
                               -------->
                                                  ServerHello  ^ Key
                                                 +  key_share  | Exch
                                          + connection_id=100  |
                                                        + rrc  v
                                        {EncryptedExtensions}  ^  Server
                                         {CertificateRequest}  v  Params
                                                {Certificate}  ^
                                          {CertificateVerify}  | Auth
                               <--------           {Finished}  v

     ^ {Certificate}
Auth | {CertificateVerify}
     v {Finished}              -------->
       [Application Data]      <------->  [Application Data]

              +  Indicates noteworthy extensions sent in the
                 previously noted message.

              *  Indicates optional or situation-dependent
                 messages/extensions that are not always sent.

              {} Indicates messages protected using keys
                 derived from a [sender]_handshake_traffic_secret.

              [] Indicates messages protected using keys
                 derived from [sender]_application_traffic_secret_N.
]]></artwork>
      </figure>
      <t>Once a connection has been established the client and the server
exchange application payloads protected by DTLS with an unilaterally used
CIDs. In our case, the client is requested to use CID 100 for records
sent to the server.</t>
      <t>At some point in the communication interaction the IP address used by
the client changes and, thanks to the CID usage, the security context to
interpret the record is successfully located by the server.  However, the
server wants to test the reachability of the client at his new IP address.</t>
      <figure anchor="fig-rrc-example">
        <name>Return Routability Example</name>
        <artwork><![CDATA[
      Client                                             Server
      ------                                             ------

      Application Data            ========>
      <CID=100>
      Src-IP=A
      Dst-IP=Z
                                  <========        Application Data
                                                       Src-IP=Z
                                                       Dst-IP=A


                              <<------------->>
                              <<   Some      >>
                              <<   Time      >>
                              <<   Later     >>
                              <<------------->>


      Application Data            ========>
      <CID=100>
      Src-IP=B
      Dst-IP=Z

                                             <<< Unverified IP
                                                 Address B >>

                                  <--------  Return Routability Check
                                             path_challenge(cookie)
                                                    Src-IP=Z
                                                    Dst-IP=B

      Return Routability Check    -------->
      path_response(cookie)
      Src-IP=B
      Dst-IP=Z

                                             <<< IP Address B
                                                 Verified >>


                                  <========        Application Data
                                                       Src-IP=Z
                                                       Dst-IP=B
]]></artwork>
      </figure>
    </section>
    <section anchor="security-and-privacy-considerations">
      <name>Security and Privacy Considerations</name>
      <t>Note that the return routability checks do not protect against flooding of
third-parties if the attacker is on-path, as the attacker can redirect the
return routability checks to the real peer (even if those datagrams are
cryptographically authenticated).  On-path adversaries can, in general, pose a
harm to connectivity.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>IANA is requested to allocate an entry to the TLS <tt>ContentType</tt>
registry, for the <tt>return_routability_check(TBD2)</tt> message defined in
this document. The <tt>return_routability_check</tt> content type is only
applicable to DTLS 1.2 and 1.3.</t>
      <t>IANA is requested to allocate the extension code point (TBD1) for the <tt>rrc</tt>
extension to the <tt>TLS ExtensionType Values</tt> registry as described in
<xref target="tbl-ext"/>.</t>
      <table anchor="tbl-ext">
        <name>rrc entry in the TLS ExtensionType Values registry</name>
        <thead>
          <tr>
            <th align="left">Value</th>
            <th align="left">Extension Name</th>
            <th align="left">TLS 1.3</th>
            <th align="left">DTLS-Only</th>
            <th align="left">Recommended</th>
            <th align="left">Reference</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">TBD1</td>
            <td align="left">rrc</td>
            <td align="left">CH, SH</td>
            <td align="left">Y</td>
            <td align="left">N</td>
            <td align="left">RFC-THIS</td>
          </tr>
        </tbody>
      </table>
    </section>
    <section anchor="open-issues">
      <name>Open Issues</name>
      <t>Issues against this document are tracked at https://github.com/tlswg/dtls-rrc/issues</t>
    </section>
    <section anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>We would like to thank
Achim Kraus,
Hanno Becker,
Hanno Boeck,
Manuel Pegourie-Gonnard,
Mohit Sahni and
Rich Salz
for their input to this document.</t>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="I-D.ietf-tls-dtls-connection-id">
          <front>
            <title>Connection Identifiers for DTLS 1.2</title>
            <author fullname="Eric Rescorla">
              <organization>RTFM, Inc.</organization>
            </author>
            <author fullname="Hannes Tschofenig">
              <organization>Arm Limited</organization>
            </author>
            <author fullname="Thomas Fossati">
              <organization>Arm Limited</organization>
            </author>
            <author fullname="Achim Kraus">
              <organization>Bosch.IO GmbH</organization>
            </author>
            <date day="22" month="June" year="2021"/>
            <abstract>
              <t>   This document specifies the Connection ID (CID) construct for the
   Datagram Transport Layer Security (DTLS) protocol version 1.2.

   A CID is an identifier carried in the record layer header that gives
   the recipient additional information for selecting the appropriate
   security association.  In "classical" DTLS, selecting a security
   association of an incoming DTLS record is accomplished with the help
   of the 5-tuple.  If the source IP address and/or source port changes
   during the lifetime of an ongoing DTLS session then the receiver will
   be unable to locate the correct security context.

   The new ciphertext record format with CID also provides content type
   encryption and record-layer padding.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tls-dtls-connection-id-13"/>
        </reference>
        <reference anchor="I-D.ietf-tls-dtls13">
          <front>
            <title>The Datagram Transport Layer Security (DTLS) Protocol Version 1.3</title>
            <author fullname="Eric Rescorla">
              <organization>RTFM, Inc.</organization>
            </author>
            <author fullname="Hannes Tschofenig">
              <organization>Arm Limited</organization>
            </author>
            <author fullname="Nagendra Modadugu">
              <organization>Google, Inc.</organization>
            </author>
            <date day="30" month="April" year="2021"/>
            <abstract>
              <t>   This document specifies Version 1.3 of the Datagram Transport Layer
   Security (DTLS) protocol.  DTLS 1.3 allows client/server applications
   to communicate over the Internet in a way that is designed to prevent
   eavesdropping, tampering, and message forgery.

   The DTLS 1.3 protocol is intentionally based on the Transport Layer
   Security (TLS) 1.3 protocol and provides equivalent security
   guarantees with the exception of order protection/non-replayability.
   Datagram semantics of the underlying transport are preserved by the
   DTLS protocol.

   This document obsoletes RFC 6347.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tls-dtls13-43"/>
        </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">
              <organization/>
            </author>
            <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">
              <organization/>
            </author>
            <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>
        <reference anchor="RFC8446">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla">
              <organization/>
            </author>
            <date month="August" year="2018"/>
            <abstract>
              <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol.  TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
              <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961.  This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8446"/>
          <seriesInfo name="DOI" value="10.17487/RFC8446"/>
        </reference>
      </references>
      <references>
        <name>Informative References</name>
        <reference anchor="RFC9000">
          <front>
            <title>QUIC: A UDP-Based Multiplexed and Secure Transport</title>
            <author fullname="J. Iyengar" initials="J." role="editor" surname="Iyengar">
              <organization/>
            </author>
            <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson">
              <organization/>
            </author>
            <date month="May" year="2021"/>
            <abstract>
              <t>This document defines the core of the QUIC transport protocol.  QUIC provides applications with flow-controlled streams for structured communication, low-latency connection establishment, and network path migration. QUIC includes security measures that ensure confidentiality, integrity, and availability in a range of deployment circumstances.  Accompanying documents describe the integration of TLS for key negotiation, loss detection, and an exemplary congestion control algorithm.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9000"/>
          <seriesInfo name="DOI" value="10.17487/RFC9000"/>
        </reference>
        <reference anchor="I-D.ietf-uta-tls13-iot-profile">
          <front>
            <title>TLS/DTLS 1.3 Profiles for the Internet of Things</title>
            <author fullname="Hannes Tschofenig">
              <organization>Arm Limited</organization>
            </author>
            <author fullname="Thomas Fossati">
              <organization>Arm Limited</organization>
            </author>
            <date day="7" month="March" year="2022"/>
            <abstract>
              <t>   This document is a companion to RFC 7925 and defines TLS/DTLS 1.3
   profiles for Internet of Things devices.  It also updates RFC 7925
   with regards to the X.509 certificate profile.

Discussion Venues

   This note is to be removed before publishing as an RFC.

   Source for this draft and an issue tracker can be found at
   https://github.com/thomas-fossati/draft-tls13-iot.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-uta-tls13-iot-profile-04"/>
        </reference>
      </references>
    </references>
    <section anchor="history">
      <name>History</name>
      <t><cref>RFC EDITOR: PLEASE REMOVE THIS SECTION</cref></t>
      <t>draft-ietf-tls-dtls-rrc-05</t>
      <ul spacing="normal">
        <li>Added text about off-path packet forwarding</li>
      </ul>
      <t>draft-ietf-tls-dtls-rrc-04</t>
      <ul spacing="normal">
        <li>Re-submitted draft to fix references</li>
      </ul>
      <t>draft-ietf-tls-dtls-rrc-03</t>
      <ul spacing="normal">
        <li>Added details for challenge-response exchange</li>
      </ul>
      <t>draft-ietf-tls-dtls-rrc-02</t>
      <ul spacing="normal">
        <li>Undo the TLS flags extension for negotiating RRC, use a new extension type</li>
      </ul>
      <t>draft-ietf-tls-dtls-rrc-01</t>
      <ul spacing="normal">
        <li>Use the TLS flags extension for negotiating RRC</li>
        <li>Enhanced IANA consideration section</li>
        <li>Expanded example section</li>
        <li>
          <t>Revamp message layout:
          </t>
          <ul spacing="normal">
            <li>Use 8-byte fixed size cookies</li>
            <li>Explicitly separate path challenge from response</li>
          </ul>
        </li>
      </ul>
      <t>draft-ietf-tls-dtls-rrc-00</t>
      <ul spacing="normal">
        <li>Draft name changed after WG adoption</li>
      </ul>
      <t>draft-tschofenig-tls-dtls-rrc-01</t>
      <ul spacing="normal">
        <li>Removed text that overlapped with draft-ietf-tls-dtls-connection-id</li>
      </ul>
      <t>draft-tschofenig-tls-dtls-rrc-00</t>
      <ul spacing="normal">
        <li>Initial version</li>
      </ul>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAPxHJmIAA+1c73IbuZH/jqfAyR9Osknaku1NovVuTpa0sSq25ZPo3cql
cjI4A5IoD2eYwYxkrqR7ljzFPUDuxa7/ABjMkJQoZ5NKXR0/2CIHAzQa3b/+
gwb6/b6oTJXpfXmmq7rM5VlRV2pkMlMt5OFUJ5/luCjl0fDtudwd7EmVp/7L
c6FGo1Jf7vMP694XaZHkagYjpKUaV32jq3G/ymw/xX/KMuk/eykSVelJUS72
pa1SUc9T+G735TfPX/xKCDMv9+W81C+f/+rXw7K21d6zZ795tidUqdW+PNdJ
XcJo4qooP0/Kop7vS6BHfNYL+CXdlyd5pctcV/0jHF8IW8EkLlRW5EDTQlsx
N/tCynKc6NRWi8z9KmVVJNGfJk91XvkfbFFWpR7b8H0xa32tSpOExkkxm8G7
4anJM5M3w+gvVT8ztupDJ6Mig2b94vETeAKcm6n53OQTbqvqalqUQGwfHtLH
5ND6zUAObTItxjo3E/+EWf5G5bm2Kx4X5UTl5mdVmSLflwflTL41M1Pp1Dco
C2SETk1VlP43PVMm25dT6nRQhU7/TZWzAUyyS9hwIH8orIVB2lQNp8VM2e6z
e0lyw1f09mDMb4exRb/fl2oEnFcJrPJwaiwysEbOSzvXiRkbYIWSJQtqGQlq
EgS9thpohxXLcVlkMYbhtDgsYMYJEiZPjuT24cnRDjaBseqkoveglTxSlZqU
aiaHpcrtHCREvlULXQYRlduoKTtiXhYgUEUmL3VpoVMbVAu0asAzmZk0zbQQ
j1B+yyKtaXghTnK5lWTKWpOobItUryetzpC8fALTs36waA4qh0kBk7AFKWup
E9ANaUCmEvh9DuI31am8MtWUpjLV2dxNXr7sV/U80z1pBnoAgl+XiZYnH6RK
01Jb2/M/4YR7ogpz97PsyVRbIE4x/6IXccbxM3xtIAE2VD6BpaoKUeEqvpRE
gExgGlPQB50Ty5W8VCWgyQJmoyxysQB+EsmZGevKzLSfAs5ZWBgTRoEBgIf4
60kx9EzqyfcHQ+hnBFqOTIJRUWmBJmKJzbSeL4DWS5OA5ItTeL2U+osCzgGh
wNusTrXUMJ9pYSs5K5xg4QxndVaZ/pS4D4P/BB2C6EkQImApy9cSU/HFpzDH
iLUgpMyWFJYXSOzOE5hT5JMCHglaYjddbMfThTXXBjl0ZbJMjrSsczUCtlaF
zAoEYGoFcgENqyBGwnEIKD9g7bEwn15gK6JBaqfqMwiNwjXDnkvdL2vk9OkY
OqxLi9JTobjlRSVBlYA2VS6wNTel7sY10NV0B7zxc8BBZ3OSEVgZW8+RIQAM
yN4cDEdlgPwUNOcA2YptUOIRr1HpS5CcEiQlRc12nEDpz0g5p1ql8B9ykCeU
OjUG4VOVnADLbJt/sEYGaVEZdAiSOGPpRZlsFBHfAFkti3mJxImuWgJzhtAE
yZ1pXFpjZ8TBkYb18niFJIvr63856R8N2oYzCZDUN+nt7bKVXvPi7vN2Y8Sb
c4dt3yAXNhoNtDYpzQg4My2uaK4InPA2zEeAOqBGOrapqlIArrYuxwpEebRA
YLg0pGajApQL+pwr+B+JLsZj94XeAngUKNe03nWO7EPSt492jopzVOSKxXtS
wGAwAUeW57+t9Ny6ZQXQBbrMHBZtBi6ErFDErvBl5eWBVF15CXLLnUoSA1wZ
5dRReCXddlqK1O3I1IzHukRrMy6LGREALoaEZccfMwADa8GNQEltgJZIa7gL
c3pTXGmQMtYwMGU1UhwkBKevc+shQBEDQAeu5FzrMlAG9KOWU6PCT4U4DMxH
7YvNADXP9BhMBWArCSZoamM70V9SZWp+vtt8bp+dHe7AJOVclVULeYO9MxUo
yHiA1lmv7wiomesSFQs4BfLSKB/OB+cJSgKPNdvmk6N+VfQb7HxKaBkhObuT
TvuBY9jDv9oALjA/0E/U+hEIrZu+JO8hJ2cAWIR2pXCCqwHeSwTKfIwQkxCC
tmgURGNYHauZFPqVJEvBciL0ugZIakIkRvDP1lCI9wUg85SFgvoEKAWJQoSo
cFFZ6ciUwAJEEFInuNAIqosIJIVjKBIDJpiU7VJlJmUQQxs7Im1OkTqVQ2s0
MPCWNmz18nQOVqZC364EXUfxSDQa8/AInJfJtCJIQJKAPbywxBEV+ACGP0MI
hZlatxgCZgNC0vBhXCHgojyYAuFB/rkGLy5Btg/QOQLP7BJhHs0/Mm2oS7Cz
RVZMFixlEAbIKxLyrXcfz4dbPf5fvj+lv8+O//3jydnxEf59/ubg7dvwh3At
zt+cfnx71PzVvHl4+u7d8fsjfhl+la2fxNa7gz9ssZOzdfpheHL6/uDtFgth
7JqqUjuraTBQgTiHBAEU0GEsCe7rww9//cvuC0Tnsx8O93Z3fwMozF9+vfur
F/AFsYxHK3JYcf4KK7YQ6DKpEntRwO9EzU2lMnS/YAlAsMCpAtgCbnZ8ZoAr
+MPKsZqBdioyXgG3ECTZ9HlUYQ1P9RhCmxSfiWCONjIp2E1sl9ZaL2c5gVGg
WBWLbQauUa0mTnCXeGw63PQG74UzeMjFFy++gb67TCh17Q0ZTY0MP761pUDq
+ugAgp1OHBUYr2wR/AP1v4Vef/Ps2TOYG6zvTCukqtSaFMrZxllR54SVCD+N
ySEDonJR5041G2gI+MQ+p6U1bYF5UZoJedQAOc4Sqcq7mMH31l/wfWyTGgv+
UapRcNC5Ba1CrT3+UoGhoZhj2Nh3fAKjN3giL42iuXyCUP4TUdInAdT+fXQD
KaLK2TWCGAH9zMzQyvhpNF2EF3GlEAwOqekbnWUFohw4klcYrpCzCWQJoAl9
gbED2/KS4QUEnUAWqJ5p7Zwygl/AkFLj8pJXilhagNPp7L9YQ8U5dUxUOAn8
FNpcVIu5/oQ4WmsXDoLIRV1ACP76aJdkvGq/iQv/SYKrl6VsM6Ft60UNju9i
QGvgeIa9uGl6KAtYW+cZ4iY5VtYgY6cKjERsDIAuDiXSLsOtNzfBdGGXDTUA
JJlhvtMAK7NCJEBI7dqE0jv0/icQ2/607H6tdb5obVsy7F0MsAVZYdHsfjz6
ELz3de4YwMalKWq70h9TLixDvyK4+w2PyY8gYbg04HG58Z070Q7eOGTL69mI
Aq5qKqIJxN49ddEi3Pk2SbmYVwX8Mp9iqA/0ejMNM23mDZ0w/7btjhzVqFHg
9qrUu1B3eGywUv8FH6GBTHktOG1Dg2w/2+nRdxaUC/CbwUZcIN3be/6ZynRZ
be/tuq8hcNve2/MtUF4YG0nOt/ee+8ZgkKqRVvD+i52elE8fS0BL+c3LvWfy
8VNqwlRfRFRfENXboEkwAL7y/vgn33p77+XLHXGL/gBIazUEffxWiBpM6jcv
4Mfis8Hv0UzR8YEOgbEaZhgmTD8zIli9vRv/mkJsV8Hs3G9ofkAH0+29wcAN
Dtp0MbMTQoNvMdFI6SEeL34mm0b4iINGub1uxgPffMf1RSsDvmpnEvthosuN
/JT25R2NeIadJrff4szWkPYtSxCjE71Ewbf8dX+0AFVhWMOIV4HpxPRUOTJV
iaE/yoMLBD6t6/0TADdBBesguEiYAUV3z3nLoGegBago8K22XjOikIt95KXg
GzHqFGLND+j+fsBIs0J39grDHCDz+pEPRG+FOMiXw1LGCnSWixGJATAQO7HO
9R1zXzDeHAGzGIsJyJ7Jm3aAod5dBpvujBc1T10biUkLTD4wINDM2r302FxQ
Psc5eRSmtnJZA3kATrx7UbiufQqosf30YlqzwupAUZgwLitniygjZHK2dJ5j
blpkUJkFuFouvZQoNE/wc8l+EvykBEceznnwwwzYuZlnKmmlDzBBw2mCHmZk
KLCriCMe0aBPvxRgf9OymJNnZGv48c81mgFHonfxKNVPaR9OUJSabBtnzJph
SaowAlHeQoA1EpTZ+WLA/dUZx1NWQZQEqojZZwhWILZJrHR2KzWUUqMuRrq6
gvBMRIs/bLIkQBcFl0gMcQ/8HfhboRTDQGOM850AQdwg0AHG6UIrt7BgETB1
iakONP7BX4f+0ZGgqA5HolwZOZ3uxWBxHQOcF5lFE2/ldcRMwfwBTsOLrqNg
8yjWwIVnY+VCQ3SFC1ikEbQWFDgr5sxAHoPsmSqSJqYF5QFpaA+fmc/Ao2lR
pI230jCxzhuPB6Z6fT02k37QacxfzSh9j9tMrHkIglcYCEnVZPrcH5bE1SkO
5Ygw4bI2aUvZmMb80wI37kSudUrqnwLWYrBK41Jo3cyV7S57sRjSYNQOYBOk
EpGPOIy5BaAH/TSPleiWoJFpGwdKz/R3d4Rf3yxltjsnwFsDJF7KJ333eSKx
ZXhKxMkb//WGf/GP+a3vb87cXG9ecR+iaR7913zvPI8HX/W8+/kneB5IDkS3
n9/IA7d0v13uZIP3/970t57fx/+16+devIFYKceU2U2/vf5dMm46D5qBWSav
9+WjWHElbVV/t3WH5T5PdK5KU2zdIsxjtJ0QZKDWuTQLbtwBOJY63RfiEPV+
d58w2KsE5f7Ahe6BYppkKjP4mzRWUeiOmzccCfd3EUZ9FgV8eYczWUrk9rGT
29veav0Uq/Rzb6fBhxFlDisPyIQqhJMnjIrCmqp2BhUNEEATEOtykb4172T5
CcNUJoCwaLY4orS8UAQlpZ5nLsODpDxv+W1tLxJoEi2aGhAZLH++j9YVW0Qr
/th9GpHwvyy1XAcuyy1vGMQiMcWVha6blsRrbEk8igSevt885tWNeia2PF6n
QI85xAvNafXvak4NuH0jAXe0D41WTHbNO1/V8m4cils2iLYCVr6yz7vpvNy4
pdPSjdtTQ5b5VsOVQDggUWg3XImIA5YCbngXNA6CWgWF+L6NkSuUarAWLGP0
CYjZgTaER4K+vWXoUxmGTJhKwM3aeanHGsKp1PvN5CmZ9aAHL/XDS5yXhlhk
wfvcPHlEGuO9U+WUMYpAG6js+ipEQQWu6USXnV1ZAD5yhngdXddEUaM8WPQz
6aDpPTD4IoJB0YXBFf0FJLwbCF+tWlKxKTjG0rv01lqgvPOttaC5+i3m8n0A
ujTWJjC6NNZmaBq/9TBMXcmNdW+t5MZXvnUPMq556x7k/UXH+rp5/WPeYu1s
vbUE2P4tghh6axP0DmNhY3prEyj3b1FbeutOXH/V0mUGvsFq3IiwftXTwRoD
0ELiVZaghe/BJDxfZxJ4o69jDihjYStJ8bjfq8cSIVeTFGd2AtA6AyACyu7d
5Ww2KBsMAYXUtF+qklAWtMYgRcbIpZeYQCtc9r3ZiQSfGwngTBUWH2A6wXnU
6wJm2RW9ddDeludGsNdgetztBmDuu90Qxf3jDeG7Q3RnLku4fV/zDmDf17yD
1Pc1jz5f0fyBQPlANH5g7w+k/R/Y/H6obTW/H2Nb3d4Prm1awx8xqnoAWWr+
dXB6J5S2YDTeQyWHe6xzdprNDLflAGx65GBXDkERiKMoHYt4S9ykxMqpUaZn
IR2/ImnO26WULl7IsbIV704QtIkA4inwwqBnjcWo8ywkhP0mOpPrm2MaX3gD
UVhrXCI/xbx2PqmNDYnsBuPJPmDd5QzrpGh/HREWd3VwG4I2UkIaOClqGEtl
lkef6trnzGEY1wNlSBNfcMEpj3bSnmqQZFODtFTESz2NXCZd+LTylS45cKA9
oqXMt2PCt9KamclUmS16Ta/IlhJrdqiW+fIbamoH8tjn82lXiCaWFQUXlYdt
ldSTMODCpdJq7FyFfG8eGyPeCqf9AG9dC+Frxbimu+LaJywRDLsr8N/Uy0BY
nIFEoez5QrKe8NXE3SFpY4FLiEKdLTby2/shMDR5KPCh7TRKyP3YVJJ9wELD
tIbOrh+VelIDI51q7LMVVtmkKEH5ZzLF8k3sk4oycQ2ur6NkvXU5PZxvIbFg
vc6rUETowz+SX94BsvG+fKgW4DpNv4tPO4q2Kua+PE9grduopqKBNN665m2S
bXif6nt4Rwd/ouyc8w6iSp1QhOkerSsU2nFluoYKaZzn1N2pF1HlHJVuYnJQ
WRCrLCuu7L4Qu+xZBUbgJklFlZob7KsWY8TGVdsF5Ow123B1DggHkleRLvmt
3txN0XU38MT47tEri5jkliclJyUuluDEaimHcttqynFdX9MvELsXJtG3tztc
MKhKqvN2w1AhoYeUnisWbNU9AkPMeOHrgb2m4wAbMCcUBmHxIxLiunGz52of
rKrbsL/WxkxjnGAyP/kafScNRbz1BPyhaZhQJbVuJKTDD+b8aesrUCtHNu3Q
ugNWQU3CYvg9YyQKTM5Q6i9zA0960p1x8Q2p+jVUviuD9YTresPyO6AMFdyV
4qIxGFdhx8stH+jf3JXKUianAFupvHdPRwA4h4/jjAAD0lbNM23ztfM9/VL/
2brSQvfMs90/cmxy4hEKwywVMLZXBHtxIoEhTJEhW0Zl8RnWLsXQA8htCiHn
UywmRmA8zqdondI7EVK7RusgkgwKwqP9f3z8P4uPUW0acaup1uSNKDqb4zCJ
X0HqmqD4IBxMYa/CgSqeD9NLiNq7F1HbsBPcpPvZRg73kI8vuHqPkSbpxSMa
qOOhzoL9ZqqiLyIXt5pC75Mpz5uWIOLalWoKBPHkpuy33OPWu2tfbDntVNG1
oUCswPBQnsTvIz//BqpaWZmvpMzl0VfSdZL7Un5M5UewHdYdjZ2vi+jYOpff
aUzXcCOr5Qo0vsJ0RToRWbFBJF7WSZbbY5AyooeLQCUe7Aj+feC1G8+JkCtG
/WoZiJex50W2oYSWIlROcVXR3TpPxy3zwm3sUo+dvV22B4RCobR4jQFuW9+/
ZcJOtDaZ7v0lqCHmijxDkvhwRNTKVuX+9bWPJW7/7k6K32iP9OQBE8Te1s5x
wwkGL8lH/o3zMA/OA59VneOqpPd4UWKtFyX/yb2oR3/9C7lPh8EAn8XjXD9a
RbMQjzv49O7gD8yVkAe5X/xtqNjoVg1zbSOuEEb5cQVesG7FSPu0sZSP5bEC
8O904o4VTZz/1tStR0epfdZAbofcEiW1cBCKwg0KwCych5mpBYkyFf/j6gCj
m+PR3J07as/H3EaL0F8zLB2QHewQ5UP/ZGb42BwwpVVc2ZpTYJ2b3IgGJcGj
cVLNtXxsY8j1xQ6Rd+sZ1SoG9iIHJKXFzJUTr1rumqqbU1KIBnbdmQP/oDlg
qS4BJzhhlAMlIe2xzc5oOPPQ48Oj7ryCpqPUwcT4E39c+Anc2gFQEfI+j9ed
MRxpdy6clf7d8KPc/gD/7oSbBhglfe6Rz9GB36/n5H6SvnC0ceYU9ekRo/Yq
pWkrs9eZRkfD+QdAfrUIc8PzflSw6QQ8Kg4qRatkPkjDYHXfpJD6C1hzMIJ0
RqPT3arOYAg6C4tyEpWgxgJz13Ceu61h8MfWWF6NucaRy0PZK/KOOFertsQ0
nMAM5lFaV+fa4Dd0R4kKTa4wzDtecVjTcZ0n4Yw5n7YJwmQ7Xhf0FdZI44F0
PJKKdmukQf/BuShXaAZxwmScAnVl4GQ83BGQDndMqBBuHxLCwraQvmuwEMWV
ekXMWTSeF6U8XbTi3GPRLM+VyjkhnRbdHlhzYTTKX9gppY9DbKiCTyRWmUhW
iCFFQ4cU/oDst6IhdxbJ6orqjyFkagMqZ0UTVeMXHZUcB1+ME9qEt0rghiVZ
NzCv/ao0cz5Eu302HO6E5HwosR7QrR5ubNuIGdt2PH5Vdu8aUKOidie0hkMf
OfFhB+ES+B36HRAjGg7ld/L5F3gRBx67lH1sPVCCwfG8Uq6snoA2Hh5cFFdv
2SZBuPMWTIJyYQM8240tARY0w9AfymJs8PoMujiBj0QlGB9mxYLOXur80pRF
zmDV77O+850bPXf9isLDpiLXFV7+A4h2/dtwZBTMeZ9OjPYN7YPTYOCrQEfk
BdCACzz04A1uj3LtwtaGo3iinlM4PCqnVBwJ0luG5saKzg50eIA5GniEOQc+
wic46ekO8fnDlOHaAs6703zRvviTscTr+EAeb0X73S0+Jik3//CJRiF+rxdS
/md8zFIcfwFYvZFP8Pj0Bcyh1MJttD0B1JjkCnwmfRHSU7Z5WpYJf7mEL83O
woVJv6OTjN29uO7Hb819f1/DtRPig6IwIZjXwzt5Ips544yQEw/opTvn3WfP
luucH9Id8BN4uXEH18f+PFQ4v2tvkRl+tTce+vpQlxU7KBrdBm2rW1xVcCxK
5Vf8AZ+4P6ToAR3Er/5IGf1b2nivq3uX5pWXp7i7H8Bw4H1HOB/BPfxnmz6B
fcMQK0b20h33En+WBPiPB1GuFO+I+lObtO9XNRGdiT3BvA3v/JGt1QB41TQ6
Ze0yiRyELXMlSjPg22mTquu0fRwPVMydD4II7avN+5zCQxhbGsZ7ek8juvjW
B9AmdBFUBlaFaV0a+vo2GjpEEBgLgj75A36onSuED9yH6OS8/CMXGv3pImDw
BRiLMSzkhcXQY3nwP/7pFxo8DB2ffm0PfvGeagxCiUFjQVxlgTshLX/IiiuC
/h/waiQ0OG98U6wzOMWwScX7t8H3BG0FG8a3epHH2hwd5wCFwMCfBG+l8+dq
kRV44qGZ/GjBcQ9X1eayziFGwuIr3GOj80lgpywlTMDbjPIl/pQ/n7oHojj3
gF4IWjZExzGnDfHqAhEnw5lEzIGAv1fMNG8TyVCzNZsBFY7kuBIMn0ZnsuhC
CIhuI2r81jcwo0fe2OewF4FE1cj6nqOhc5cabcC7WzriOJJupYr2HflCrXB7
jZtL+3If4cx/8HpB8nyndEEM58mcc+cXEGJ6un/hKppkyw94sBvQMQ1LcHn/
h1/xGtXFsrjld+7jwfEVMBxtpP9+Xib9kw/fHbivR7bCr/+xga145bv2P3TJ
+Fob7EjahIaVHzeHA9FFnO7nVbBVbBbu84BevULqUDPos1l7DIIe0v4thXQb
tu/S/wtKxOuuRDxsOV7BZD7mbkMiBdV5+GoeOEB5jZzYRCAbz2Pt1agPIqBz
YwFvhOx8lVj+TTLtluC1Z8Laez7ksjPUvl6hPYVfbqUBGcNqPXyKP3opiST4
zhH/yZHndcvXwAt3fQTrvI0VC+gCXnQyHjXXl6L38AFcHZUssH6NyhU5vdC9
N2bdfg/erOQ2OMm3kGqCO30Q62ZFQQmFYoyXfpZYcwmeNxaoLV9EEK4CUJ07
ArD0Drfh6bg955bW0RHubMMj7rgBsg2GOefRCqvDdSx80H75MpbWTRQ7dMeR
uyIixSQX3kxKpYA99FgmOkdnqYfFlJgfguByRpsHznO7NHjFD971evD+YIm1
9GPXhQIiCl8HCHTwZZo4I/TTPkXXoHwCJkyMhRa9kEVYu+nBl6s0O3/+Oi+T
i9aNWpyBvGPvJGECeN/QcI5TOC/TFZO2bg/ii4PunmlFyRd/GVFSpN4nRKp3
d6LZlcmn6PYlx5hPOF6IipE1WIwD43ySnkPd3ThxfV2NMtCXinbjbvgFygr4
zt/jvQ83IRl0wzdgnWJK9wagka9+xgs28JsvdbgRN/1f7AOd8e1SMARlC5rP
jTx805Pnb/CvP8Q/v2+3OvvhsD98c3KOqQoECjdpDxDYK8uY877XcTIwcksS
cpziXb0n1sIjWFz6P2j8ilvwStRiundwWlVzu//06QQCjnqE9zs/rTJ7NXnq
Lw1/alyvj+RB8jkvrjKdTihTKMRPWl5RNharZnn1wccXB8nUzOTvS1XbnsCL
sQv5WiNshG//89/J5554p/JaZ/KDnkAsY3T/d6CkqkzhQTE1lTxX09ygzIoz
rOQ4V9nPwkmewVrkee1CmFhd+E5nuvMCKH4DPCrKhRCvIBocf483Hx0fnQxP
z/blh7fHB+fH8uz43emPx5LW5Pz4EC8PfPWUGgtxxzXqvLEPtg81BxeQ88Th
/LzbomzubbmjtxeuNxDbvq1HM1OhPlJznN/YfJGhdsfe0c9z3w+TleoKN+JJ
WePtWrfP4CPSOzrccx1+zNMG8caZmsQXp42Ldl6Vdg4w7OStgggccGN3/WC7
fjC3V7nhWPxSqPwjXEtiWMfQ0u0DYcMvc0Ug4S1z6+mZvoRfAyZnagGLus9e
AVMWrlv6An1Y87Ov27G+EQxAe3VURQOWFeHUXzTitq0oeeHX4Q6OPHMcodv0
6UJ36a+T4wLcn34HNpAzR76b5qr4New903gpjBNaLlUEK5rhpUbucrZV9LSu
kLx3LE/4Ce0ahcvXxf8CQ5WRAQRhAAA=

-->

</rfc>
