Re: [Curdle] Second AD Review: draft-ietf-curdle-ssh-curves.

Benjamin Kaduk <kaduk@mit.edu> Tue, 30 July 2019 23:13 UTC

Return-Path: <kaduk@mit.edu>
X-Original-To: curdle@ietfa.amsl.com
Delivered-To: curdle@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id BEB8C120273; Tue, 30 Jul 2019 16:13:29 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.2
X-Spam-Level:
X-Spam-Status: No, score=-4.2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
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 16GECDX1x4pw; Tue, 30 Jul 2019 16:13:27 -0700 (PDT)
Received: from outgoing.mit.edu (outgoing-auth-1.mit.edu [18.9.28.11]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 70E9912007C; Tue, 30 Jul 2019 16:13:27 -0700 (PDT)
Received: from kduck.mit.edu ([24.16.140.251]) (authenticated bits=56) (User authenticated as kaduk@ATHENA.MIT.EDU) by outgoing.mit.edu (8.14.7/8.12.4) with ESMTP id x6UNDMZh013608 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 30 Jul 2019 19:13:25 -0400
Date: Tue, 30 Jul 2019 18:13:22 -0500
From: Benjamin Kaduk <kaduk@mit.edu>
To: "Mark D. Baushke" <mdb@juniper.net>
Cc: draft-ietf-curdle-ssh-curves.all@ietf.org, curdle <curdle@ietf.org>
Message-ID: <20190730231321.GU47715@kduck.mit.edu>
References: <CABcZeBM1xaLR2RqYo8_VmO1ue2qr3rn_52MhSDHagKhNF-AYQA@mail.gmail.com> <20190730214702.GS47715@kduck.mit.edu> <31257.1564525402@contrail-ubm16-mdb.svec1.juniper.net>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <31257.1564525402@contrail-ubm16-mdb.svec1.juniper.net>
User-Agent: Mutt/1.10.1 (2018-07-13)
Archived-At: <https://mailarchive.ietf.org/arch/msg/curdle/0qbMPxEVTv11dVgMesJzQOIMcWQ>
Subject: Re: [Curdle] Second AD Review: draft-ietf-curdle-ssh-curves.
X-BeenThere: curdle@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "List for discussion of potential new security area wg." <curdle.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/curdle>, <mailto:curdle-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/curdle/>
List-Post: <mailto:curdle@ietf.org>
List-Help: <mailto:curdle-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/curdle>, <mailto:curdle-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 30 Jul 2019 23:13:36 -0000

On Tue, Jul 30, 2019 at 03:23:22PM -0700, Mark D. Baushke wrote:
> Benjamin Kaduk <kaduk@mit.edu> writes:
> 
> > I took over as responsible AD for this draft from Eric, but I don't
> > see any response to this second round of review comments.  Luckily there's
> > mot much left, so hopefully we can get a new rev out quickly and move the
> > document forward.
> 
> I do owe the AD a response to the comments and a new draft.
> I regret that other commitments have prevented me from this.

I completely understand; my main goal is to ensure that *I* was not the one
holding things up, as there are quite a few things for which that is the
case at the moment.

(BTW, if anyone feels there is some urgency to getting these documents
published, the chairs can appoint a new document editor to handle the
mechanical text juggling and document submission.  That might be less
feasible for the other document, though, given the volume of comments Eric
made.)

-Ben

> 
> > Thanks,
> > 
> > Ben
> > 
> > On Mon, Dec 24, 2018 at 02:16:24PM -0800, Eric Rescorla wrote:
> > > Thanks for addressing my comments.
> > > 
> > > IMPORTANT
> > > S 3.
> > >    
> > > >      received public keys are not the expected lengths, or if the
> > > >      derived shared secret only consists of zero bits. No further
> > > >      validation is required beyond what is discussed in [RFC7748].
> > > >      The derived shared secret is 32 bytes when Curve25519 is used
> > > >      and 56 bytes when Curve448 is used. The encodings of all
> > > >      values are defined in [RFC7748]. The hash used is SHA-256 for
> > > >      Curve25519 and SHA-512 for Curve448.
> > > 
> > > This is true if you use the 7748 algorithm, but not necessarily
> > > otherwise.
> > > 
> > > Here is some OK language (from tcpcrypt)
> > > 
> > >    Key-agreement schemes ECDHE-Curve25519 and ECDHE-Curve448 perform
> > >    the Diffie-Helman protocol using the functions X25519 and X448,
> > >    respectively. Implementations SHOULD compute these functions
> > >    using the algorithms described in [RFC7748]. When they do so,
> > >    implementations MUST check whether the computed Diffie-Hellman
> > >    shared secret is the all-zero value and abort if so, as described
> > >    in Section 6 of [RFC7748]. Alternative implementations of these
> > >    functions SHOULD abort when either input forces the shared secret
> > >    to one of a small set of values, as discussed in Section 7 of
> > >    [RFC7748].
> > >
> > > COMMENTS
> > > S 1.
> > > >      key exchange protocol described in [RFC4253] supports an extensible
> > > >      set of methods.  [RFC5656] describes how elliptic curves are
> > > >      integrated in SSH, and this document reuses those protocol messages.
> > > >
> > > >      This document describes how to implement key exchange based on
> > > >      Curve25519 and Ed448-Goldilocks [RFC7748] in SSH.  For Curve25519
> > > 
> > > 7748 calls this Curve448 and you do so later, so please be consistent.
> 
> 	-- Mark