Using Early Data in DOTS
draft-boucadair-dots-earlydata-00

Document Type Active Internet-Draft (individual)
Last updated 2019-01-29
Stream (None)
Intended RFC status (None)
Formats plain text xml pdf html bibtex
Stream Stream state (No stream defined)
Consensus Boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date
Responsible AD (None)
Send notices to (None)
Network Working Group                                       M. Boucadair
Internet-Draft                                                    Orange
Intended status: Informational                                  T. Reddy
Expires: August 2, 2019                                           McAfee
                                                        January 29, 2019

                        Using Early Data in DOTS
                   draft-boucadair-dots-earlydata-00

Abstract

   This document discusses to what extent it is safe to send DOTS signal
   channel messages as Early Data in TLS 1.3.

   This document is not intended to be published as an RFC.  It is
   edited to help understanding the conclusion about the safeness of
   using DOTS signal channel messages as early data.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at https://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on August 2, 2019.

Copyright Notice

   Copyright (c) 2019 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (https://trustee.ietf.org/license-info) 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

Boucadair & Reddy        Expires August 2, 2019                 [Page 1]
Internet-Draft               DOTS Early Data                January 2019

   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Context . . . . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Reminder  . . . . . . . . . . . . . . . . . . . . . . . . . .   3
   3.  Replay the Same Request to the Same DOTS Server . . . . . . .   3
   4.  Fork a Request to Multiple Servers  . . . . . . . . . . . . .   4
   5.  Fork a Request to Multiple Server-Domain Gateways . . . . . .   4
   6.  Fork a Request to Multiple Client-Domain Gateways . . . . . .   5
   7.  Block a Response from a DOTS Server or DOTS Gateway . . . . .   5
   8.  Security Considerations . . . . . . . . . . . . . . . . . . .   5
   9.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   5
   10. Normative References  . . . . . . . . . . . . . . . . . . . .   6
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   6

1.  Context

   Section E.5 of [RFC8446] states the following:

      Replayable 0-RTT data presents a number of security threats to
      TLS- using applications, unless those applications are
      specifically engineered to be safe under replay (minimally, this
      means idempotent, but in many cases may also require other
      stronger conditions, such as constant-time response).

      ...

      Application protocols MUST NOT use 0-RTT data without a profile
      that defines its use.  That profile needs to identify which
      messages or interactions are safe to use with 0-RTT and how to
      handle the situation when the server rejects 0-RTT and falls back
      to 1-RTT.

   To that aim, [I-D.ietf-dots-signal-channel] includes the following:

      Section 8 of [RFC8446] discusses some mechanisms to implement to
      limit the impact of replay attacks on 0-RTT data.  If the DOTS
      server accepts 0-RTT, it MUST implement one of these mechanisms.
      A DOTS server can reject 0-RTT by sending a TLS HelloRetryRequest.
      The DOTS signal channel messages sent as early data by the DOTS
      client are idempotent requests.  As a reminder, Message ID
      (Section 3 of [RFC7252]) is changed each time a new CoAP request
      is sent, and the Token (Section 5.3.1 of [RFC7252]) is randomized
      in each CoAP request.  The DOTS server(s) can use Message ID and
      Token in the DOTS signal channel message to detect replay of early
      data, and accept 0-RTT data at most once.  Furthermore, 'mid'

Boucadair & Reddy        Expires August 2, 2019                 [Page 2]
Internet-Draft               DOTS Early Data                January 2019

      value is monotonically increased by the DOTS client for each
      mitigation request, attackers replaying mitigation requests with
Show full document text