Re: [TLS] Eric Rescorla's Discuss on draft-ietf-tls-ecdhe-psk-aead-04: (with DISCUSS and COMMENT)

Daniel Migault <daniel.migault@ericsson.com> Wed, 24 May 2017 15:59 UTC

Return-Path: <mglt.ietf@gmail.com>
X-Original-To: tls@ietfa.amsl.com
Delivered-To: tls@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3B03812946F; Wed, 24 May 2017 08:59:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.398
X-Spam-Level:
X-Spam-Status: No, score=-2.398 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.199, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id hee5lj4vdXFc; Wed, 24 May 2017 08:59:30 -0700 (PDT)
Received: from mail-lf0-x234.google.com (mail-lf0-x234.google.com [IPv6:2a00:1450:4010:c07::234]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D5506127011; Wed, 24 May 2017 08:59:29 -0700 (PDT)
Received: by mail-lf0-x234.google.com with SMTP id a5so56604373lfh.2; Wed, 24 May 2017 08:59:29 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=AKkUKPlHlY+7TkGn1QAcx87IKnM88ueIDY2AsVtXLYA=; b=CAESolledilAfjh7iUxgpXcOGg0utlfGsfeI/FrAcUgcUL8y+OEgcLt7toJ/9oZg+r qhactRLqSMwNU23u92s0eGzh0GogmBlpx0G17gnwObT5BBoEGuCteJQ3Jqrrin07wFyp uFenrwirv2liDsQh54oorDkpFy/dvVuEWAtfQywaV2HXO+4KQndCUTj1/PQXTD4a7Hnq 9rhRWYn6QCS9JhsEYC3S7KjerJ8e7Z/hep0UQD1hjt71UGB38mPnBGheiLi2WSBhWzJ2 OObYVLj9oxy8b13ej4OSAtBHmCByoqcDYsIKMlyYYv3jIowo7oh9FOSCN39M3OkDG5mH Wycg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=AKkUKPlHlY+7TkGn1QAcx87IKnM88ueIDY2AsVtXLYA=; b=t8X8iTD9p5s//omzsC/qL7f2kIMPvRLvbRejPeFrqigp/le+XtlSflxQSbKu+DSNHL aqjXP+YGlZ8c9y3g1GwdL8/v0Z+b74NP2yzXf/xVcUzTfG3lrY9OiqEcnVbnr2f6jCDr 0EIjjoSodqlzAVUA06gcRA4SGBoWmk6KWnRMTkv5nofBwxgPXZ85ewtFAeYWTdPL6roi AVc/D5qNlVI8QNK1v6fm2N4NM3kGdAL6tXtJYSycO0u3dX4QSkz+xOaCk00bebuHEbZw GQh6QGIj2uYWEiu09a9nZP1td5fI6oWIGndlpWpbuhZNQ6EJgcufgXMOSmyZ4dPlUqyv UFYQ==
X-Gm-Message-State: AODbwcDBugyEiAB9eEOPSDEr+M6usOaqg1C3TQyZsmfM8a01ljADh8xr yGv0BXPNtve7dz9D301efzegVC+Py4Og
X-Received: by 10.25.104.5 with SMTP id d5mr10652566lfc.147.1495641567966; Wed, 24 May 2017 08:59:27 -0700 (PDT)
MIME-Version: 1.0
Sender: mglt.ietf@gmail.com
Received: by 10.46.0.14 with HTTP; Wed, 24 May 2017 08:59:27 -0700 (PDT)
In-Reply-To: <CAOgPGoBzZ9e4amR0q2tHMqjErqWZFd17noqtUkmYHQg3a1Cm7g@mail.gmail.com>
References: <149550551972.4974.3201248950751611020.idtracker@ietfa.amsl.com> <CADZyTknOk=skkKXFtrvVWuKVU_PLV3tecaeo9kdLe77a9YxkNQ@mail.gmail.com> <CABcZeBM-4_xqBOum3vCd2Sb5327CYpU08kxadqYwW+qh0W3eJw@mail.gmail.com> <CADZyTknmXE6UW5e9SbSwwSUZWU-wHw_+9sTB_xnYUmo8KBOJxg@mail.gmail.com> <CADZyTk=K8dzYaEL3TBjHMzsHnF+X52RvZiUsSBJQmNi0CkH=CA@mail.gmail.com> <CABkgnnVq8N+vEXZ-=yU+EWR9GYTh9K64D8MP0Yu7Pn0enE=iRQ@mail.gmail.com> <CADZyTknBzV6Z_wwBtPw-=9VOw1Z0X8UQPRorwvg_cRQuRNFQLw@mail.gmail.com> <CAOgPGoBzZ9e4amR0q2tHMqjErqWZFd17noqtUkmYHQg3a1Cm7g@mail.gmail.com>
From: Daniel Migault <daniel.migault@ericsson.com>
Date: Wed, 24 May 2017 11:59:27 -0400
X-Google-Sender-Auth: w-cxFBOs2QAfmhlSBIvkDTqoNgI
Message-ID: <CADZyTkkpBRSKQLP7GK9k9Zz5sd3Fp3B039WXnfQQRPu9dcvaDQ@mail.gmail.com>
To: Joseph Salowey <joe@salowey.net>
Cc: Martin Thomson <martin.thomson@gmail.com>, Eric Rescorla <ekr@rtfm.com>, tls-chairs <tls-chairs@ietf.org>, The IESG <iesg@ietf.org>, tls <tls@ietf.org>, draft-ietf-tls-ecdhe-psk-aead@ietf.org
Content-Type: multipart/alternative; boundary="f403045e589c5ec17b0550473008"
Archived-At: <https://mailarchive.ietf.org/arch/msg/tls/YGTw6qw4y6NUT1zfYGbOX01zhLI>
Subject: Re: [TLS] Eric Rescorla's Discuss on draft-ietf-tls-ecdhe-psk-aead-04: (with DISCUSS and COMMENT)
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: "This is the mailing list for the Transport Layer Security working group of the IETF." <tls.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tls>, <mailto:tls-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tls/>
List-Post: <mailto:tls@ietf.org>
List-Help: <mailto:tls-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tls>, <mailto:tls-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 24 May 2017 15:59:35 -0000

Hi,

Thank Joe for the clarification. I removed section 4 and instead have the
following section 3. This is the version 06.

I will post it as soon as the datatracker allows me to submit a new
version, so please let me know if that address all concerns.

Yours,
Daniel

3.  ECDHE_PSK with AES-GCM and AES-CCM Cipher Suites

   The cipher suites defined in this document are based on the AES-GCM
   and AES-CCM Authenticated Encryption with Associated Data (AEAD)
   algorithms AEAD_AES_128_GCM, AEAD_AES_256_GCM and AEAD_AES_128_CCM
   defined in [RFC5116], and AEAD_AES_128_CCM_8 defined in [RFC6655].

   Messages and premaster secret construction in this document are
   defined in [RFC5489].  The ServerKeyExchange and ClientKeyExchange
   messages are used and the premaster secret is computed as for the
   ECDHE_PSK key exchange.  The elliptic curve parameters used in in the
   Diffie-Hellman parameters are negotiated using extensions defined in
   [I-D.ietf-tls-rfc4492bis].

   For TLS 1.2, the following cipher suites are defined:

   TLS_ECDHE_PSK_WITH_AES_128_GCM_SHA256   = {0xTBD,0xTBD};
   TLS_ECDHE_PSK_WITH_AES_256_GCM_SHA384   = {0xTBD,0xTBD};
   TLS_ECDHE_PSK_WITH_AES_128_CCM_8_SHA256 = {0xTBD,0xTBD};
   TLS_ECDHE_PSK_WITH_AES_128_CCM_SHA256   = {0xTBD,0xTBD};

   The assigned code points can only be used for TLS 1.2.

   The cipher suites defined in this document MUST NOT be negotiated for
   any version of (D)TLS other than TLS 1.2.  Servers MUST NOT select
   one of these cipher suites when selecting TLS version other than TLS
   1.2.  A client MUST treat the selection of these cipher suites in
   combination with a different version of TLS as an error and generate
   a fatal 'illegal_parameter' TLS alert.

   Cipher suites TLS_AES_128_GCM_SHA256, TLS_AES_256_GCM_SHA384,
   TLS_AES_128_CCM_8_SHA256 and TLS_AES_128_CCM_SHA256 are used to
   support equivalent functionality in TLS 1.3 [I-D.ietf-tls-tls13].



On Wed, May 24, 2017 at 11:03 AM, Joseph Salowey <joe@salowey.net>; wrote:

> Hi Daniel,
>
> Thanks for putting this revision together.  The original text in draft 4
> went beyond the scope of what should be in the document (I was too hasty in
> my review of the document and discussion on the list).   Your current
> proposal is an improvement, but it still discusses behavior that could
> either conflict with other documents or discusses behavior that is not in
> scope.
>
> My suggestion is to replace section 4 with the following paragraph (I
> think this is similar to what Martin suggests):
>
> "The cipher suites defined in this document MUST NOT be negotiated for any
> version of (D)TLS other than TLS 1.2.  Servers MUST NOT select one of these
> cipher suites when selecting TLS version other than TLS 1.2.  A client MUST
> treat the selection of these cipher suites in combination with a different
> version of TLS as an error and generate a fatal 'illegal_parameter' TLS
> alert."
>
> I think it would also be OK to add the following to point readers to
> equivalent ciphers in 1.3.  Here is some suggested text that could go in
> the revised section 4:
>
> "Cipher suites TLS_AES_128_GCM_SHA256, TLS_AES_256_GCM_SHA384,
> TLS_AES_128_CCM_8_SHA256 and TLS_AES_128_CCM_SHA256 are used to support
> equivalent functionality in TLS 1.3 [TLS 1.3]."
>
> Thanks,
>
> Joe
>
>
> On Wed, May 24, 2017 at 7:04 AM, Daniel Migault <
> daniel.migault@ericsson.com>; wrote:
>
>> Hi Martin,
>>
>> Thank you for your review. Some comment were about text in the
>> applicability section. I think I agree with you that this section details
>> and clarifies  the following sentence of the previous section:  """ The
>> assigned code points can only be used for TLS 1.2.""". Most of the text of
>> this section has been added in order to address comments, thus in order to
>> make this section helpful for many readers, I prefer to keep most of the
>> text you mentioned as not useful.
>>
>> Please see inline for more detail responses and let me know if that
>> address your comments.
>>
>> Yours,
>> Daniel
>>
>> On Wed, May 24, 2017 at 12:09 AM, Martin Thomson <
>> martin.thomson@gmail.com>; wrote:
>>
>>> Hi Daniel,
>>>
>>> This removes the offending text.
>>>
>>> This is incorrect:
>>>
>>> > Clients MUST NOT offer one of these cipher suites with a (D)TLS
>>> version that differs from TLS 1.2.
>>>
>>> It should be possible to offer these when attempting to negotiate TLS
>>> 1.3.  The server simply cannot negotiate these cipher suites if it
>>> chooses to use 1.3.  I'd remove that sentence (and the one following
>>> it, since it's redundant with the first sentence of the paragraph).
>>>
>>> My understanding is that you suggest to remove "Clients MUST NOT offer
>> one ..." for the following reasons:
>>
>> A) it is redundant with the first sentence of the paragraph: "The cipher
>> suites defined in this document MUST NOT be negotiated ...".  This sentence
>> clarifies on the client side what "MUST NOT be negotiated" means, and the
>> same is done for the server side. If we provide clarification for the
>> server side, I would prefer to keep a clarification for the client side as
>> well.
>>
>> B) It is not true as TLS1.3 enables these cipher suites to be negotiated
>> with TLS1.3. In the text cipher suites stands for the cipher suites code
>> points of the IANA registry.  Maybe we can have a better wording. However I
>> believe the next paragraph clarifies that TLS1.3 negotiates these ciphers
>> suites in a different way. Would the following wording address your
>> comment. If so I will update the section to remove the confusion.
>>
>> "Clients MUST NOT offer one of the cipher suites code points defined in
>> the document with a (D)TLS version that differs from TLS 1.2."
>>
>> The text in question is:
>> """
>>    The cipher suites defined in this document MUST NOT be negotiated for
>>    any version of (D)TLS other than TLS 1.2.  Clients MUST NOT offer one
>>    of these cipher suites with a (D)TLS version that differs from TLS
>>    1.2.  Servers MUST NOT select one of these cipher suites with a TLS
>>    version that differs from TLS 1.2.  A client MUST treat the selection
>>    of these cipher suites in combination with a version of TLS as an
>>    error and generate a fatal 'illegal_parameter' TLS alert.
>>
>> """
>>
>>
>>> As others have noted, the paragraph about TLS 1.3 isn't helpful and
>>> should be removed.
>>>
>>>
>> Suggestion to remove TLS1.3 related text was to clarify that the cipher
>> suites were only defined for TLS1.2. Unless I missed something we have
>> removed most of the text that could cause confusion. On the other hand,
>> TLS1.3 has been designed, and we also have received comments to position
>> the defined cipher suites toward TLS1.3 as we do fro TLS1.0 and TLS1.1.
>> This is the intent of the remaining text mentioning TLS1.3.
>>
>> In the applicable version section, the text for TLS1.3 is intended to
>> clarify why the cipher suites are restricted to TLS1.2. I believe this is
>> useful for readers not so familiar with TLS1.3 that may not be aware of how
>> TLS1.3 negotiate ciphers. My personal opinion is that it might be better to
>> have it explicit rather than implicit, and I would prefer to keep the text
>> below:
>>
>> """
>>    TLS version 1.3 and later negotiate these features in a different
>>    manner.  Unlike TLS 1.2, TLS 1.3 separates authentication and cipher
>>    suite negotiation [I-D.ietf-tls-tls13] Section 1.2.  TLS 1.3 supports
>>    PSK with ECDHE key exchange and the cipher suites
>>    TLS_AES_128_GCM_SHA256, TLS_AES_256_GCM_SHA384,
>>    TLS_AES_128_CCM_8_SHA256 and TLS_AES_128_CCM_SHA256 are part of the
>>    specification.  As a result, TLS 1.3 and higher versions, negotiate
>>    and support these cipher suites in a different way.
>>
>> """
>>
>>
>>
>>
>>> This:
>>>
>>> > In addition, it is worth noting that TLS 1.0 [RFC2246] and TLS 1.2
>>> [RFC4346] split the pre-master into two  parts.  The PRF results from
>>> mixing the two pseudorandom streams with distinct hash functions (MD5 and
>>> SHA-1) by exclusive-ORing them together.
>>>
>>> You mean TLS 1.1 rather than 1.2.  But as with the former paragraph,
>>> talking about the limitations of TLS versions that you explicitly
>>> don't support isn't useful.  Remove this paragraph also.
>>>
>>>
>> Yes that is TLS1.1. I updated it. I believe the text is useful as it
>> provides a clear justification on why it should not be used on TLS version
>> lower than 1.2. More specifically, previous version do not support AEAD,
>> but this may not prevent someone using AEAD with these versions. The reason
>> provided is not AEAD related but PSK related. I believe it is useful to
>> explicitly justify why the cipher suites defined in the document should not
>> be used with previous TLS versions. The text has bee suggested by the
>> secdir and I would prefer to keep it, unless there is a strong willingness
>> to remove it.
>>
>>
>>> Nits:
>>> s/pre-master(| secret)/premaster secret/g
>>>
>>
>> Corrected: The text only have premaster secret.
>>
>>
>>> You don't anywhere state that TLS_ECDHE_PSK_WITH_AES_128_GCM_SHA256
>>> means to use AEAD_AES_128_GCM (and the same for the other
>>> ciphersuites).  I mention this because the order in which the AEAD
>>> algorithms are mentioned is different to the order of the ciphersuites
>>> in the list.
>>>
>>>
>> Unless I miss your comment, I believe the section 3 already addresses it.
>> If not please let me knoe what text you would like to see.
>>
>> """
>> 3.  ECDHE_PSK with AES-GCM and AES-CCM Cipher Suites
>>
>>    The cipher suites defined in this document are based on the AES-GCM
>>    and AES-CCM Authenticated Encryption with Associated Data (AEAD)
>>    algorithms AEAD_AES_128_GCM, AEAD_AES_256_GCM and AEAD_AES_128_CCM
>>    defined in [RFC5116], and AEAD_AES_128_CCM_8 defined in [RFC6655].
>>
>> """
>>
>>>
>>> On 24 May 2017 at 12:37, Daniel Migault <daniel.migault@ericsson.com>;
>>> wrote:
>>> > re-sending with the version 05 but removing the diff to be under the
>>> 100 KB
>>> > limit.
>>> > Yours,
>>> > Daniel
>>> >
>>> > On Tue, May 23, 2017 at 9:28 PM, Daniel Migault
>>> > <daniel.migault@ericsson.com>; wrote:
>>> >>
>>> >> Hi Eric,
>>> >>
>>> >> Thank you for the feed backs. The version 05 contains all text
>>> changes you
>>> >> agreed. In addition, the text explaining dictionary/brute force has
>>> been
>>> >> removed and replace by a reference to 4279. The recommendation
>>> regarding to
>>> >> all PSK ciphers has been limited to the one of the document.  Please
>>> see
>>> >> inline for more details.
>>> >>
>>> >> For some reasons I am not able to validate the submission of version
>>> 05. I
>>> >> have attached the diff with version 04 as well as the locally
>>> generated
>>> >> version 05.
>>> >>
>>> >> Yours,
>>> >> Daniel
>>> >>
>>> >> On Tue, May 23, 2017 at 7:40 PM, Eric Rescorla <ekr@rtfm.com>; wrote:
>>> >>>
>>> >>>
>>> >>>
>>> >>> On Wed, May 24, 2017 at 6:00 AM, Daniel Migault
>>> >>> <daniel.migault@ericsson.com>; wrote:
>>> >>>>
>>> >>>> Hi Eric,
>>> >>>>
>>> >>>> Thank you for your reviews. Please see my responses inline. If you
>>> agree
>>> >>>> with the text I will update the draft.
>>> >>>>
>>> >>>> Yours,
>>> >>>> Daniel
>>> >>>>
>>> >>>> On Mon, May 22, 2017 at 10:11 PM, Eric Rescorla <ekr@rtfm.com>;
>>> wrote:
>>> >>>>>
>>> >>>>> Eric Rescorla has entered the following ballot position for
>>> >>>>> draft-ietf-tls-ecdhe-psk-aead-04: Discuss
>>> >>>>>
>>> >>>>> When responding, please keep the subject line intact and reply to
>>> all
>>> >>>>> email addresses included in the To and CC lines. (Feel free to cut
>>> this
>>> >>>>> introductory paragraph, however.)
>>> >>>>>
>>> >>>>>
>>> >>>>> Please refer to
>>> >>>>> https://www.ietf.org/iesg/statement/discuss-criteria.html
>>> >>>>> for more information about IESG DISCUSS and COMMENT positions.
>>> >>>>>
>>> >>>>>
>>> >>>>> The document, along with other ballot positions, can be found here:
>>> >>>>> https://datatracker.ietf.org/doc/draft-ietf-tls-ecdhe-psk-aead/
>>> >>>>>
>>> >>>>>
>>> >>>>>
>>> >>>>> ------------------------------------------------------------
>>> ----------
>>> >>>>> DISCUSS:
>>> >>>>> ------------------------------------------------------------
>>> ----------
>>> >>>>>
>>> >>>>> The following text appears to have been added in -04
>>> >>>>>
>>> >>>>>    A server receiving a ClientHello and a client_version indicating
>>> >>>>>    (3,1) "TLS 1.0" or (3,2) "TLS 1.1" and any of the cipher suites
>>> from
>>> >>>>>    this document in ClientHello.cipher_suites can safely assume
>>> that
>>> >>>>> the
>>> >>>>>    client supports TLS 1.2 and is willing to use it.  The server
>>> MUST
>>> >>>>>    NOT negotiate these cipher suites with TLS protocol versions
>>> earlier
>>> >>>>>    than TLS 1.2.  Not requiring clients to indicate their support
>>> for
>>> >>>>>    TLS 1.2 cipher suites exclusively through
>>> ClientHello.client_hello
>>> >>>>>    improves the interoperability in the installed base and use of
>>> TLS
>>> >>>>>    1.2 AEAD cipher suites without upsetting the installed base of
>>> >>>>>    version-intolerant TLS servers, results in more TLS handshakes
>>> >>>>>    succeeding and obviates fallback mechanisms.
>>> >>>>>
>>> >>>>> This is a major technical change from -03, which, AFAIK, prohibited
>>> >>>>> the server from negotiating these algorithms with TLS 1.1 and below
>>> >>>>> and maintained the usual TLS version 1.2 negotiation rules.
>>> >>>>>
>>> >>>>> This is a very material technical change. I don't consider it wise,
>>> >>>>> but in any case it would absolutely need WG consensus, which I
>>> >>>>> don't believe that it has given the recent introduction.
>>> >>>>
>>> >>>>
>>> >>>> I agree that the text is a technical change, and that it may not be
>>> >>>> appropriated to do so now. The reason I included it was that it was
>>> conform
>>> >>>> to the previous text, but I agree that implicit assumption of
>>> version 1.2
>>> >>>> may need some additional discussion especially regarding RFC5246
>>> Appendix E.
>>> >>>> Unless you prefer further discussion I assume the text below
>>> address your
>>> >>>> concern.
>>> >>>>
>>> >>>> <t>The cipher suites defined in this document MUST NOT be
>>> negotiated for
>>> >>>> any version of (D)TLS other than TLS 1.2. Clients MUST NOT offer
>>> one of
>>> >>>> these cipher suites with a (D)TLS version that differs from TLS
>>> 1.2. Servers
>>> >>>> MUST NOT select one of these cipher suites with a TLS version that
>>> differs
>>> >>>> from TLS 1.2. A client MUST treat the selection of these cipher
>>> suites in
>>> >>>> combination with a version of TLS as an error and generate a fatal
>>> >>>> 'illegal_parameter' TLS alert. </t>
>>> >>>
>>> >>>
>>> >>> Yes, this seems fine
>>> >>>
>>> >>>
>>> >>>>> The discussion of dictionary attacks here seems inferior to that
>>> >>>>> in 4279. In particular, you only need to actively attack one
>>> >>>>> connection to capture the data you need for a brute force attack
>>> >>>>> despite the text there referring to trying "different keys".
>>> >>>>> Please correct that.
>>> >>>>>
>>> >>>> I believe the text below address your concern:
>>> >>>>
>>> >>>> OLD:
>>> >>>> <t>Use of Pre-Shared Keys of limited entropy may allow an active
>>> >>>> attacker attempts to connect to the server and try different keys.
>>> >>>> For example, limited entropy may be provided by using a short PSK in
>>> >>>> which
>>> >>>> case an attacker may perform a brute-force attack. Another example
>>> >>>> includes the use of a PSK  chosen by a human which thus may be
>>> exposed
>>> >>>> to
>>> >>>> dictionary attacks.</t>
>>> >>>>
>>> >>>> NEW:
>>> >>>> <t>Pre-Shared Keys security relies on its associated entropy, and
>>> it is
>>> >>>> RECOMMENDED to follow <xref target="4086"/> to ensure the PSK has
>>> enough
>>> >>>> entropy. Possible reasons for low entropy includes PSK chosen by
>>> humans or
>>> >>>> PSK of small length as well as using random generators with limited
>>> entropy.
>>> >>>> </t>
>>> >>>>
>>> >>>> <t>PSK of limited entropy may allow an attacker to test different
>>> PSK
>>> >>>> values against a valid output such as master secret or any output
>>> derived
>>> >>>> from it. In this document, the master secret is generated using the
>>> PSK as
>>> >>>> well as the ECDHE shared secret. The use of ECDHE limits the
>>> possibilities
>>> >>>> of passive eavesdropping attackers, as the ECDHE shared secret is
>>> not
>>> >>>> expected to be derived from the observed ECDH parameters. As a
>>> result,
>>> >>>> passive eavesdropping is unlikely to happen, and the collection of
>>> all
>>> >>>> necessary material relies on an active attack.
>>> >>>> An active attacker may collect the necessary material by setting a
>>> TLS
>>> >>>> session as a client with the legitimate server. One PSK is tested
>>> for each
>>> >>>> session, and a match occurs when key exchange succeeds. On the
>>> other hand,
>>> >>>> an active attacker may also consider gathering the necessary
>>> information for
>>> >>>> offline computation. One way consists in getting a legitimate
>>> client to
>>> >>>> establish a connection with the attacker. It is also assumed that
>>> the client
>>> >>>> will accept the ECDH parameters authenticated by the attacker's
>>> private key
>>> >>>> and finally returns the Finished message authenticating the
>>> exchange. The
>>> >>>> attacker will be then in possession of all the necessary
>>> information to
>>> >>>> perform a brute force attack.</t>
>>> >>>
>>> >>>
>>> >>> Is there a reason to not just point directly to the 4279 security
>>> >>> considerations?
>>> >>
>>> >>
>>> >> No, basically I tried to complete the previous text that missed the
>>> >> offline use case. The current version just point to 4279, without
>>> having the
>>> >> above text. If you think the text above is clarifying I can add it as
>>> well.
>>> >>>
>>> >>> -
>>> >>>>
>>> >>>>
>>> >>>>>
>>> >>>>>
>>> >>>>> ------------------------------------------------------------
>>> ----------
>>> >>>>> COMMENT:
>>> >>>>> ------------------------------------------------------------
>>> ----------
>>> >>>>>
>>> >>>>> The citations to TLS 1.3 still seem pretty muddled. I think you
>>> >>>>> should just stop referencing and discussing 1.3.
>>> >>>>
>>> >>>>
>>> >>>> My understanding of your comment is that mentioning TLS 1.3 to
>>> further
>>> >>>> insisting that the code point are not valid for TLS 1.3 is
>>> confusing. I
>>> >>>> propose to:
>>> >>>>
>>> >>>> Explicitly mention the TLS version in the title:
>>> >>>>
>>> >>>> OLD title:
>>> >>>> ECDHE_PSK with AES-GCM and AES-CCM Cipher Suites for Transport Layer
>>> >>>> Security (TLS)
>>> >>>>
>>> >>>> NEW title:
>>> >>>> ECDHE_PSK with AES-GCM and AES-CCM Cipher Suites for Transport Layer
>>> >>>> Security (TLS)
>>> >>>>
>>> >>>> OLD Introduction:
>>> >>>>
>>> >>>>     The cipher
>>> >>>>    suites are defined for version 1.2 of the Transport Layer
>>> Security
>>> >>>>    (TLS) [RFC5246] protocol, version 1.2 of the Datagram Transport
>>> Layer
>>> >>>>    Security (DTLS) protocol [RFC6347], as well as version 1.3 of TLS
>>> >>>>    [I-D.ietf-tls-tls13].
>>> >>>>
>>> >>>> NEW introduction
>>> >>>>
>>> >>>> The cipher
>>> >>>>    suites are defined for version 1.2 of the Transport Layer
>>> Security
>>> >>>>    (TLS) [RFC5246] protocol, version 1.2 of the Datagram Transport
>>> Layer
>>> >>>>    Security (DTLS) protocol [RFC6347].
>>> >>>>
>>> >>>>
>>> >>>> I suggest to keep the following text of the introduction:
>>> >>>>
>>> >>>>
>>> >>>> AEAD algorithms that combine encryption and integrity protection are
>>> >>>>    strongly recommended for (D)TLS [RFC7525] and non-AEAD
>>> algorithms are
>>> >>>>    forbidden to use in TLS 1.3 [I-D.ietf-tls-tls13].  The AEAD
>>> >>>>    algorithms considered in this document are AES-GCM and AES-CCM.
>>> The
>>> >>>>    use of AES-GCM in TLS is defined in [RFC5288] and the use of
>>> AES-CCM
>>> >>>>    is defined in [RFC6655].
>>> >>>
>>> >>>
>>> >>> Yes, this seems fine.
>>> >>>
>>> >>>
>>> >>>>
>>> >>>> I suggest to keep the following text of the Applicable versions
>>> >>>> sections, as I believe the section discusses the cipher suites
>>> against all
>>> >>>> existing TLS versions. In addition, it also justifies somewhat that
>>> we only
>>> >>>> defined cipher suites that are compatible with TLS1.3.
>>> >>>>
>>> >>>>    TLS version 1.3 and later negotiate these features in a different
>>> >>>>    manner.  Unlike TLS 1.2, TLS 1.3 separates authentication and
>>> cipher
>>> >>>>    suite negotiation [I-D.ietf-tls-tls13] Section 1.2.  TLS 1.3
>>> supports
>>> >>>>    PSK with ECDHE key exchange and the cipher suites
>>> >>>>    TLS_AES_128_GCM_SHA256, TLS_AES_256_GCM_SHA384,
>>> >>>>    TLS_AES_128_CCM_8_SHA256 and TLS_AES_128_CCM_SHA256 are part of
>>> the
>>> >>>>    specification.  As a result, TLS 1.3 and higher versions,
>>> negotiate
>>> >>>>    and support these cipher suites in a different way.
>>> >>>
>>> >>>
>>> >>> OK.
>>> >>>
>>> >>>>
>>> >>>> I suggest to remove the reference to TLS1.3 in the security
>>> >>>> considerations
>>> >>>>
>>> >>>> OLD
>>> >>>>
>>> >>>>  The security considerations in TLS 1.2 [RFC5246], DTLS 1.2
>>> [RFC6347],
>>> >>>>    TLS 1.3 [I-D.ietf-tls-tls13], ECDHE_PSK [RFC5489], AES-GCM
>>> [RFC5288],
>>> >>>>    and AES-CCM [RFC6655] apply to this document as well.
>>> >>>>
>>> >>>> NEW
>>> >>>>
>>> >>>>  The security considerations in TLS 1.2 [RFC5246], DTLS 1.2
>>> [RFC6347],
>>> >>>>  ECDHE_PSK [RFC5489], AES-GCM [RFC5288],and AES-CCM [RFC6655] apply
>>> >>>>  to this document as well.
>>> >>>>>
>>> >>>>>
>>> >>>>> S 2.
>>> >>>>> I'm not sure that the discussion of the PRF is helpful here in
>>> >>>>> mandating the non-use of these cipher suites with TLS 1.1 and
>>> >>>>> below.
>>> >>>>
>>> >>>>
>>> >>>> I find the text useful as it gives an idea why even introducing
>>> AEAD in
>>> >>>> TLS version lower than 1.2 is a bad idea, so I would prefer to keep
>>> it. The
>>> >>>> text has been changed to
>>> >>>>
>>> >>>> OLD:
>>> >>>> As such TLS 1.0 and TLS 1.1 should not be used with ECDHE_PSK.
>>> >>>>
>>> >>>> NEW:
>>> >>>> As such,  all ECDHE_PSK
>>> >>>> ciphers, including those defined outside this document, SHOULD NOT
>>> be
>>> >>>> negotiated in TLS versions prior to 1.2.
>>> >>>
>>> >>>
>>> >>> I don't think you should be levying a new normative requirement like
>>> this
>>> >>> for other ciphers
>>> >>> i this document
>>> >>
>>> >>
>>> >> Consideration for other ciphers has been removed. The requirement is
>>> >> limited to the ciphers of the document. The new text is:
>>> >>
>>> >> As such, all ECDHE_PSK ciphers, including those defined in this
>>> document,
>>> >> SHOULD NOT be
>>> >> negotiated in TLS versions prior to 1.2.
>>> >>>
>>> >>>
>>> >>> -Ek
>>> >>> r
>>> >>>
>>> >>
>>> >
>>> >
>>> > _______________________________________________
>>> > TLS mailing list
>>> > TLS@ietf.org
>>> > https://www.ietf.org/mailman/listinfo/tls
>>> >
>>>
>>
>>
>