Internet DRAFT - draft-bartle-tls-deprecate-ffdh

draft-bartle-tls-deprecate-ffdh







Network Working Group                                          C. Bartle
Internet-Draft                                               Apple, Inc.
Intended status: Standards Track                               N. Aviram
Expires: 31 January 2022                                                
                                                             F. Valsorda
                                                            30 July 2021


                  Deprecating FFDH Ciphersuites in TLS
                   draft-bartle-tls-deprecate-ffdh-00

Abstract

   This document deprecates the use of finite field Diffie Hellman
   cipher suites and discourages the use of elliptic curve Diffie
   Hellman cipher suites, both of which have known vulnerabilities or
   improper security properties when implemented incorrectly.

Discussion Venues

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

   Discussion of this document takes place on the Transport Layer
   Security Working Group mailing list (tls@ietf.org), which is archived
   at https://mailarchive.ietf.org/arch/browse/tls/.

   Source for this draft and an issue tracker can be found at
   https://github.com/cbartle891/draft-deprecate-ffdhe.

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 31 January 2022.

Copyright Notice

   Copyright (c) 2021 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 the Trust Legal Provisions and are
   provided without warranty as described in the Simplified BSD License.

Table of Contents

   1.  Introduction
     1.1.  Requirements
   2.  Non-Ephemeral Diffie Hellman
   3.  Ephemeral Diffie Hellman
   4.  IANA Considerations
   5.  Security Considerations
   6.  Acknowledgments
   7.  References
     7.1.  Normative References
     7.2.  Informative References
   Authors' Addresses

1.  Introduction

   TLS supports a variety of key exchange algorithms, including those
   based on finite field and elliptic curve Diffie Hellman (DH) groups.
   Each of these also come in ephemeral and non-ephemeral varieties.
   Non-ephemeral DH algorithms use static DH public keys included in the
   authenticating peer's certificate; see [RFC4492] for discussion.  In
   contrast, ephemeral DH algorithms use ephemeral DH public keys sent
   in the handshake and authenticated by the peer's certificate.
   Ephemeral and non-ephemeral finite field DH algorithms are called DHE
   and DH, respectively, and ephemeral and non-ephemeral elliptic curve
   DH algorithms are called ECDHE and ECDH, respectively [RFC4492].

   In general, non-ephemeral cipher suites are not recommended due to
   their lack of forward secrecy.  However, as demonstrated by the
   [Raccoon] attack on finite-field DH, public key reuse, either via
   non-ephemeral cipher suites or reused keys with ephemeral cipher
   suites, can lead to timing side channels that may leak connection
   secrets.  For elliptic curve DH, invalid curve attacks broadly follow
   the same pattern, where a long-lived secret is extracted using side
   channels [ICA], further demonstrating the security risk of reusing
   public keys.  While both side channels can be avoided in
   implementations, experience shows that in practice, implementations
   may fail to thwart such attacks due to the complexity of the required
   mitigations.

   Given these problems, this document updates [RFC4346], [RFC5246],
   [RFC4162], [RFC6347], [RFC5932], [RFC5288], [RFC6209], [RFC6367],
   [RFC8422], [RFC5289], and [RFC5469] to deprecate cipher suites with
   key reuse, prohibiting and discouraging their use.

1.1.  Requirements

   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 [RFC2119] [RFC8174] when, and only when, they appear in all
   capitals, as shown here.

2.  Non-Ephemeral Diffie Hellman

   Clients MUST NOT offer non-ephemeral DH cipher suites in TLS 1.2
   connections.  (Note that TLS 1.0 and 1.1 are deprecated by
   [RFC8996].)  This includes all cipher suites listed in the following
   table.

     +==========================================+====================+
     | Ciphersuite                              | Reference          |
     +==========================================+====================+
     | TLS_DH_DSS_EXPORT_WITH_DES40_CBC_SHA     | [RFC4346]          |
     +------------------------------------------+--------------------+
     | TLS_DH_DSS_WITH_DES_CBC_SHA              | [RFC5469]          |
     +------------------------------------------+--------------------+
     | TLS_DH_DSS_WITH_3DES_EDE_CBC_SHA         | [RFC5246]          |
     +------------------------------------------+--------------------+
     | TLS_DH_RSA_EXPORT_WITH_DES40_CBC_SHA     | [RFC4346]          |
     +------------------------------------------+--------------------+
     | TLS_DH_RSA_WITH_DES_CBC_SHA              | [RFC5469]          |
     +------------------------------------------+--------------------+
     | TLS_DH_RSA_WITH_3DES_EDE_CBC_SHA         | [RFC5246]          |
     +------------------------------------------+--------------------+
     | TLS_DH_anon_EXPORT_WITH_RC4_40_MD5       | [RFC4346][RFC6347] |
     +------------------------------------------+--------------------+
     | TLS_DH_anon_WITH_RC4_128_MD5             | [RFC5246][RFC6347] |
     +------------------------------------------+--------------------+
     | TLS_DH_anon_EXPORT_WITH_DES40_CBC_SHA    | [RFC4346]          |
     +------------------------------------------+--------------------+
     | TLS_DH_anon_WITH_DES_CBC_SHA             | [RFC5469]          |
     +------------------------------------------+--------------------+
     | TLS_DH_anon_WITH_3DES_EDE_CBC_SHA        | [RFC5246]          |
     +------------------------------------------+--------------------+
     | TLS_DH_DSS_WITH_AES_128_CBC_SHA          | [RFC5246]          |
     +------------------------------------------+--------------------+
     | TLS_DH_RSA_WITH_AES_128_CBC_SHA          | [RFC5246]          |
     +------------------------------------------+--------------------+
     | TLS_DH_anon_WITH_AES_128_CBC_SHA         | [RFC5246]          |
     +------------------------------------------+--------------------+
     | TLS_DH_DSS_WITH_AES_256_CBC_SHA          | [RFC5246]          |
     +------------------------------------------+--------------------+
     | TLS_DH_RSA_WITH_AES_256_CBC_SHA          | [RFC5246]          |
     +------------------------------------------+--------------------+
     | TLS_DH_anon_WITH_AES_256_CBC_SHA         | [RFC5246]          |
     +------------------------------------------+--------------------+
     | TLS_DH_DSS_WITH_AES_128_CBC_SHA256       | [RFC5246]          |
     +------------------------------------------+--------------------+
     | TLS_DH_RSA_WITH_AES_128_CBC_SHA256       | [RFC5246]          |
     +------------------------------------------+--------------------+
     | TLS_DH_DSS_WITH_CAMELLIA_128_CBC_SHA     | [RFC5932]          |
     +------------------------------------------+--------------------+
     | TLS_DH_RSA_WITH_CAMELLIA_128_CBC_SHA     | [RFC5932]          |
     +------------------------------------------+--------------------+
     | TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA    | [RFC5932]          |
     +------------------------------------------+--------------------+
     | TLS_DH_DSS_WITH_AES_256_CBC_SHA256       | [RFC5246]          |
     +------------------------------------------+--------------------+
     | TLS_DH_RSA_WITH_AES_256_CBC_SHA256       | [RFC5246]          |
     +------------------------------------------+--------------------+
     | TLS_DH_anon_WITH_AES_128_CBC_SHA256      | [RFC5246]          |
     +------------------------------------------+--------------------+
     | TLS_DH_anon_WITH_AES_256_CBC_SHA256      | [RFC5246]          |
     +------------------------------------------+--------------------+
     | TLS_DH_DSS_WITH_CAMELLIA_256_CBC_SHA     | [RFC5932]          |
     +------------------------------------------+--------------------+
     | TLS_DH_RSA_WITH_CAMELLIA_256_CBC_SHA     | [RFC5932]          |
     +------------------------------------------+--------------------+
     | TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA    | [RFC5932]          |
     +------------------------------------------+--------------------+
     | TLS_DH_DSS_WITH_SEED_CBC_SHA             | [RFC4162]          |
     +------------------------------------------+--------------------+
     | TLS_DH_RSA_WITH_SEED_CBC_SHA             | [RFC4162]          |
     +------------------------------------------+--------------------+
     | TLS_DH_anon_WITH_SEED_CBC_SHA            | [RFC4162]          |
     +------------------------------------------+--------------------+
     | TLS_DH_RSA_WITH_AES_128_GCM_SHA256       | [RFC5288]          |
     +------------------------------------------+--------------------+
     | TLS_DH_RSA_WITH_AES_256_GCM_SHA384       | [RFC5288]          |
     +------------------------------------------+--------------------+
     | TLS_DH_DSS_WITH_AES_128_GCM_SHA256       | [RFC5288]          |
     +------------------------------------------+--------------------+
     | TLS_DH_DSS_WITH_AES_256_GCM_SHA384       | [RFC5288]          |
     +------------------------------------------+--------------------+
     | TLS_DH_anon_WITH_AES_128_GCM_SHA256      | [RFC5288]          |
     +------------------------------------------+--------------------+
     | TLS_DH_anon_WITH_AES_256_GCM_SHA384      | [RFC5288]          |
     +------------------------------------------+--------------------+
     | TLS_DH_DSS_WITH_CAMELLIA_128_CBC_SHA256  | [RFC5932]          |
     +------------------------------------------+--------------------+
     | TLS_DH_RSA_WITH_CAMELLIA_128_CBC_SHA256  | [RFC5932]          |
     +------------------------------------------+--------------------+
     | TLS_DH_anon_WITH_CAMELLIA_128_CBC_SHA256 | [RFC5932]          |
     +------------------------------------------+--------------------+
     | TLS_DH_DSS_WITH_CAMELLIA_256_CBC_SHA256  | [RFC5932]          |
     +------------------------------------------+--------------------+
     | TLS_DH_RSA_WITH_CAMELLIA_256_CBC_SHA256  | [RFC5932]          |
     +------------------------------------------+--------------------+
     | TLS_DH_anon_WITH_CAMELLIA_256_CBC_SHA256 | [RFC5932]          |
     +------------------------------------------+--------------------+
     | TLS_DH_DSS_WITH_ARIA_128_CBC_SHA256      | [RFC6209]          |
     +------------------------------------------+--------------------+
     | TLS_DH_DSS_WITH_ARIA_256_CBC_SHA384      | [RFC6209]          |
     +------------------------------------------+--------------------+
     | TLS_DH_RSA_WITH_ARIA_128_CBC_SHA256      | [RFC6209]          |
     +------------------------------------------+--------------------+
     | TLS_DH_RSA_WITH_ARIA_256_CBC_SHA384      | [RFC6209]          |
     +------------------------------------------+--------------------+
     | TLS_DH_anon_WITH_ARIA_128_CBC_SHA256     | [RFC6209]          |
     +------------------------------------------+--------------------+
     | TLS_DH_anon_WITH_ARIA_256_CBC_SHA384     | [RFC6209]          |
     +------------------------------------------+--------------------+
     | TLS_DH_RSA_WITH_ARIA_128_GCM_SHA256      | [RFC6209]          |
     +------------------------------------------+--------------------+
     | TLS_DH_RSA_WITH_ARIA_256_GCM_SHA384      | [RFC6209]          |
     +------------------------------------------+--------------------+
     | TLS_DH_DSS_WITH_ARIA_128_GCM_SHA256      | [RFC6209]          |
     +------------------------------------------+--------------------+
     | TLS_DH_DSS_WITH_ARIA_256_GCM_SHA384      | [RFC6209]          |
     +------------------------------------------+--------------------+
     | TLS_DH_anon_WITH_ARIA_128_GCM_SHA256     | [RFC6209]          |
     +------------------------------------------+--------------------+
     | TLS_DH_anon_WITH_ARIA_256_GCM_SHA384     | [RFC6209]          |
     +------------------------------------------+--------------------+
     | TLS_DH_RSA_WITH_CAMELLIA_128_GCM_SHA256  | [RFC6367]          |
     +------------------------------------------+--------------------+
     | TLS_DH_RSA_WITH_CAMELLIA_256_GCM_SHA384  | [RFC6367]          |
     +------------------------------------------+--------------------+
     | TLS_DH_DSS_WITH_CAMELLIA_128_GCM_SHA256  | [RFC6367]          |
     +------------------------------------------+--------------------+
     | TLS_DH_DSS_WITH_CAMELLIA_256_GCM_SHA384  | [RFC6367]          |
     +------------------------------------------+--------------------+
     | TLS_DH_anon_WITH_CAMELLIA_128_GCM_SHA256 | [RFC6367]          |
     +------------------------------------------+--------------------+
     | TLS_DH_anon_WITH_CAMELLIA_256_GCM_SHA384 | [RFC6367]          |
     +------------------------------------------+--------------------+

                                  Table 1

   Clients SHOULD NOT offer non-ephemeral ECDH cipher suites in TLS 1.2
   connections.  (Note that TLS 1.0 and 1.1 are deprecated by
   [RFC8996].)  This includes all cipher suites listed in the following
   table.

   +=============================================+====================+
   | Ciphersuite                                 | Reference          |
   +=============================================+====================+
   | TLS_ECDH_ECDSA_WITH_NULL_SHA                | [RFC8422]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_ECDSA_WITH_RC4_128_SHA             | [RFC8422][RFC6347] |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA        | [RFC8422]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA         | [RFC8422]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA         | [RFC8422]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_RSA_WITH_NULL_SHA                  | [RFC8422]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_RSA_WITH_RC4_128_SHA               | [RFC8422][RFC6347] |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA          | [RFC8422]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_RSA_WITH_AES_128_CBC_SHA           | [RFC8422]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_RSA_WITH_AES_256_CBC_SHA           | [RFC8422]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_anon_WITH_NULL_SHA                 | [RFC8422]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_anon_WITH_RC4_128_SHA              | [RFC8422][RFC6347] |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA         | [RFC8422]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_anon_WITH_AES_128_CBC_SHA          | [RFC8422]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_anon_WITH_AES_256_CBC_SHA          | [RFC8422]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256      | [RFC5289]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384      | [RFC5289]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256        | [RFC5289]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384        | [RFC5289]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_ECDSA_WITH_AES_128_GCM_SHA256      | [RFC5289]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384      | [RFC5289]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256        | [RFC5289]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384        | [RFC5289]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_ECDSA_WITH_ARIA_128_CBC_SHA256     | [RFC6209]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_ECDSA_WITH_ARIA_256_CBC_SHA384     | [RFC6209]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_RSA_WITH_ARIA_128_CBC_SHA256       | [RFC6209]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_RSA_WITH_ARIA_256_CBC_SHA384       | [RFC6209]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_ECDSA_WITH_ARIA_128_GCM_SHA256     | [RFC6209]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_ECDSA_WITH_ARIA_256_GCM_SHA384     | [RFC6209]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_RSA_WITH_ARIA_128_GCM_SHA256       | [RFC6209]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_RSA_WITH_ARIA_256_GCM_SHA384       | [RFC6209]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_ECDSA_WITH_CAMELLIA_128_CBC_SHA256 | [RFC6367]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_ECDSA_WITH_CAMELLIA_256_CBC_SHA384 | [RFC6367]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_RSA_WITH_CAMELLIA_128_CBC_SHA256   | [RFC6367]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_RSA_WITH_CAMELLIA_256_CBC_SHA384   | [RFC6367]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_ECDSA_WITH_CAMELLIA_128_GCM_SHA256 | [RFC6367]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_ECDSA_WITH_CAMELLIA_256_GCM_SHA384 | [RFC6367]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_RSA_WITH_CAMELLIA_128_GCM_SHA256   | [RFC6367]          |
   +---------------------------------------------+--------------------+
   | TLS_ECDH_RSA_WITH_CAMELLIA_256_GCM_SHA384   | [RFC6367]          |
   +---------------------------------------------+--------------------+

                                 Table 2

3.  Ephemeral Diffie Hellman

   Clients and servers MUST NOT reuse ephemeral DHE or ECDHE public keys
   across TLS connections for all existing (and future) TLS versions.
   Doing so invalidates forward secrecy properties of these connections.
   In the case of DHE (finite field DH) cipher suites, such reuse may
   also lead to vulnerabilities such as those used in the [Raccoon]
   attack.  See Section 5 for related discussion.

4.  IANA Considerations

   This document makes no requests to IANA.  All cipher suites listed in
   Section 2 are already marked as not recommended in the "TLS Cipher
   Suites" registry.

5.  Security Considerations

   Non-ephemeral finite field DH cipher suites (TLS_DH_*), as well as
   ephemeral key reuse for finite field DH cipher suites, are prohibited
   due to the [Raccoon] attack.  Both are already considered bad
   practice since they do not provide forward secrecy.  However, Raccoon
   revealed that timing side channels in processing TLS premaster
   secrets may be exploited to reveal the encrypted premaster secret.

   For non-ephemeral elliptic curve DH cipher suites, invalid curve
   attacks similarly exploit side channels to extract the secret from a
   long-lived public key.  These attacks have been shown to be practical
   against real-world TLS implementations [ICA].  Therefore, this
   document discourages the reuse of elliptic curve DH public keys.

6.  Acknowledgments

   This document was inspired by discussion on the TLS WG mailing list
   and a suggestion by Filippo Valsorda following the release of the
   [Raccoon] attack.  Thanks to Christopher A.  Wood for writing up the
   initial draft of this document.

7.  References

7.1.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.

   [RFC4162]  Lee, H.J., Yoon, J.H., and J.I. Lee, "Addition of SEED
              Cipher Suites to Transport Layer Security (TLS)",
              RFC 4162, DOI 10.17487/RFC4162, August 2005,
              <https://www.rfc-editor.org/info/rfc4162>.

   [RFC4346]  Dierks, T. and E. Rescorla, "The Transport Layer Security
              (TLS) Protocol Version 1.1", RFC 4346,
              DOI 10.17487/RFC4346, April 2006,
              <https://www.rfc-editor.org/info/rfc4346>.

   [RFC5246]  Dierks, T. and E. Rescorla, "The Transport Layer Security
              (TLS) Protocol Version 1.2", RFC 5246,
              DOI 10.17487/RFC5246, August 2008,
              <https://www.rfc-editor.org/info/rfc5246>.

   [RFC5288]  Salowey, J., Choudhury, A., and D. McGrew, "AES Galois
              Counter Mode (GCM) Cipher Suites for TLS", RFC 5288,
              DOI 10.17487/RFC5288, August 2008,
              <https://www.rfc-editor.org/info/rfc5288>.

   [RFC5289]  Rescorla, E., "TLS Elliptic Curve Cipher Suites with SHA-
              256/384 and AES Galois Counter Mode (GCM)", RFC 5289,
              DOI 10.17487/RFC5289, August 2008,
              <https://www.rfc-editor.org/info/rfc5289>.

   [RFC5469]  Eronen, P., Ed., "DES and IDEA Cipher Suites for Transport
              Layer Security (TLS)", RFC 5469, DOI 10.17487/RFC5469,
              February 2009, <https://www.rfc-editor.org/info/rfc5469>.

   [RFC5932]  Kato, A., Kanda, M., and S. Kanno, "Camellia Cipher Suites
              for TLS", RFC 5932, DOI 10.17487/RFC5932, June 2010,
              <https://www.rfc-editor.org/info/rfc5932>.

   [RFC6209]  Kim, W., Lee, J., Park, J., and D. Kwon, "Addition of the
              ARIA Cipher Suites to Transport Layer Security (TLS)",
              RFC 6209, DOI 10.17487/RFC6209, April 2011,
              <https://www.rfc-editor.org/info/rfc6209>.

   [RFC6347]  Rescorla, E. and N. Modadugu, "Datagram Transport Layer
              Security Version 1.2", RFC 6347, DOI 10.17487/RFC6347,
              January 2012, <https://www.rfc-editor.org/info/rfc6347>.

   [RFC6367]  Kanno, S. and M. Kanda, "Addition of the Camellia Cipher
              Suites to Transport Layer Security (TLS)", RFC 6367,
              DOI 10.17487/RFC6367, September 2011,
              <https://www.rfc-editor.org/info/rfc6367>.

   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
              May 2017, <https://www.rfc-editor.org/info/rfc8174>.

   [RFC8422]  Nir, Y., Josefsson, S., and M. Pegourie-Gonnard, "Elliptic
              Curve Cryptography (ECC) Cipher Suites for Transport Layer
              Security (TLS) Versions 1.2 and Earlier", RFC 8422,
              DOI 10.17487/RFC8422, August 2018,
              <https://www.rfc-editor.org/info/rfc8422>.

   [RFC8996]  Moriarty, K. and S. Farrell, "Deprecating TLS 1.0 and TLS
              1.1", BCP 195, RFC 8996, DOI 10.17487/RFC8996, March 2021,
              <https://www.rfc-editor.org/info/rfc8996>.

7.2.  Informative References

   [ICA]      Jager, T., Schwenk, J., and J. Somorovsky, "Practical
              invalid curve attacks on TLS-ECDH", 21 September 2015,
              <https://citeseerx.ist.psu.edu/viewdoc/
              download?doi=10.1.1.704.7932&rep=rep1&type=pdf>.

   [Raccoon]  Merget, R., Brinkmann, M., Aviram, N., Somorovsky, J.,
              Mittmann, J., and J. Schwenk, "Raccoon Attack: Finding and
              Exploiting Most-Significant-Bit-Oracles in TLS-DH(E)", 9
              September 2020,
              <https://raccoon-attack.com/RacoonAttack.pdf>.

   [RFC4492]  Blake-Wilson, S., Bolyard, N., Gupta, V., Hawk, C., and B.
              Moeller, "Elliptic Curve Cryptography (ECC) Cipher Suites
              for Transport Layer Security (TLS)", RFC 4492,
              DOI 10.17487/RFC4492, May 2006,
              <https://www.rfc-editor.org/info/rfc4492>.

Authors' Addresses

   Carrick Bartle
   Apple, Inc.

   Email: cbartle@apple.com


   Nimrod Aviram

   Email: nimrod.aviram@gmail.com


   Filippo Valsorda

   Email: ietf@filippo.io