Re: [TLS] Additional Elliptic Curves (Curve25519 etc) for TLS ECDH key agreement

Watson Ladd <watsonbladd@gmail.com> Mon, 13 January 2014 15:21 UTC

Return-Path: <watsonbladd@gmail.com>
X-Original-To: tls@ietfa.amsl.com
Delivered-To: tls@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 638C51AE1B7 for <tls@ietfa.amsl.com>; Mon, 13 Jan 2014 07:21:54 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, SPF_PASS=-0.001] autolearn=ham
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 sebtr8L-PEbA for <tls@ietfa.amsl.com>; Mon, 13 Jan 2014 07:21:52 -0800 (PST)
Received: from mail-wg0-x22a.google.com (mail-wg0-x22a.google.com [IPv6:2a00:1450:400c:c00::22a]) by ietfa.amsl.com (Postfix) with ESMTP id 0680A1AE1F9 for <tls@ietf.org>; Mon, 13 Jan 2014 07:21:46 -0800 (PST)
Received: by mail-wg0-f42.google.com with SMTP id l18so2882481wgh.3 for <tls@ietf.org>; Mon, 13 Jan 2014 07:21:35 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=2LH5OVHwQgd/wwpLpCE82h6UNUPWjSZpP+Bm2b3P9S4=; b=FrE9siPN0THBOCiiBNEKU3w9DR3yGfCZJp+Ch+1omsj3NQDnYeD8W5O8thyK9mY9LW 7S1ZOBDLyh3bidTBjf5KMKWJ/JnMapF8XjbAazo97LFTQw0K7jBPWu2gXL3tMtVbDui1 tG2sv4dMINVBgUSryyeBT6dDvF8W9fiSnXrcz/5Yw2hfstZDCoZPh17Pk//H4N3Erd2T eczFKF2oTr+4IG6m+6+MVjXC3oSFlvVWHgS6QkmvbrrQbMf+KhNgsqeSJFUYrtAA/W8t U7eTVlBH1JwDdJG8iJQlEs1lYnUxMTI5aN7HEmCXT3zoq5UkeCXb00AaLjNwlrV72UPJ oivg==
MIME-Version: 1.0
X-Received: by 10.194.133.34 with SMTP id oz2mr22508981wjb.14.1389626495584; Mon, 13 Jan 2014 07:21:35 -0800 (PST)
Received: by 10.194.242.131 with HTTP; Mon, 13 Jan 2014 07:21:35 -0800 (PST)
In-Reply-To: <448F91C2-1658-4BB1-8E69-76B1D1ACF002@checkpoint.com>
References: <87eh4e7a2y.fsf@latte.josefsson.org> <CACsn0ckHSx=aVETzgJu9kMNjT6vCMis_-dDBVWVmwv+Rw-V8-w@mail.gmail.com> <448F91C2-1658-4BB1-8E69-76B1D1ACF002@checkpoint.com>
Date: Mon, 13 Jan 2014 07:21:35 -0800
Message-ID: <CACsn0c=aJNu5SZ36aPNceF4v+tCVNoOZd4U6UUtY6feTx6NFZQ@mail.gmail.com>
From: Watson Ladd <watsonbladd@gmail.com>
To: Yoav Nir <ynir@checkpoint.com>
Content-Type: text/plain; charset="UTF-8"
Cc: Simon Josefsson <simon@josefsson.org>, "tls@ietf.org" <tls@ietf.org>
Subject: Re: [TLS] Additional Elliptic Curves (Curve25519 etc) for TLS ECDH key agreement
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.15
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: <http://www.ietf.org/mail-archive/web/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: Mon, 13 Jan 2014 15:21:54 -0000

On Sun, Jan 12, 2014 at 11:27 PM, Yoav Nir <ynir@checkpoint.com> wrote:
>
> On Jan 13, 2014, at 5:22 AM, Watson Ladd <watsonbladd@gmail.com> wrote:
>
>> On Sat, Jan 11, 2014 at 8:32 AM, Simon Josefsson <simon@josefsson.org> wrote:
>>> Dear WG,
>>>
>>> I may have missed to announce this document before, since some people
>>> appear to have missed it.  This email is an attempt to introduce the
>>> draft to the TLS WG properly.
>>>
>>> This draft started out as specifying Curve25519 ECDHE key agreement for
>>> TLS, back on September.  Manuel Pegourie-Gonnard jumped in as co-author
>>> and has added details on public/private key representation, shared
>>> secret computation, and test vectors, for the -02 draft.
>>>
>>> In the latest -03 version of the draft, I have changed the document to
>>> specify EC Named Curve code points for all "additional elliptic curves"
>>> (i.e., Curve25519, E382, M383, Curve3617, M511, E521).  Some of the
>>> Curve25519-related text may no longer be applicable to all curves, but
>>> hopefully that can be fixed later on.
>>>
>>> The latest draft is here:
>>> http://tools.ietf.org/html/draft-josefsson-tls-curve25519-03
>>>
>>> The additional curves come from the following CFRG draft, and my current
>>> thinking is that our draft (for TLS) would stay in sync with the list of
>>> curves in the CFRG document.
>>>
>>> http://tools.ietf.org/html/draft-ladd-safecurves-02
>>>
>>> We'd appreciate general feedback on the draft, especially if there is
>>> any interest in adopting this document, and particular feedback on the
>>> following points:
>>>
>>> 1) Do we need all these curves defined for TLS?  What is the selection
>>>   critera for including/exluding some of the curves?  Is that a TLS
>>>   process, or an CFRG process?
>>
>> It's unclear. Eric Resola (in a cousin n-removed from this email)
>> seems to think that
>> CFRG should do it, but unless he asks the CFRG chairs there doesn't seem to be
>> a process for this conversation to happen. Part of the reason is that
>> Curve25519 is
>> secure, so in some sense there is nothing to discuss on the CFRG end.
>> It comes down to
>> "what should be supported" and efficiency argues Curve25519 should be
>> in the mix.
>
> Or you can do the equivalent of the signature authentication in IKEv2 draft:
> http://tools.ietf.org/html/draft-kivinen-ipsecme-signature-auth-04
>
> Just create a draft for a TLS extension that allows you to specify a curve and point format as OIDs. Not sure whether that's a good idea, though.
>
>> The easiest solution is someone to ask if anyone disagrees, and if no
>> one does, consider
>> the security conversation over.
>
> That didn't work so well for Dragonfly, did it?

The huge difference between these curves and Dragonfly is that these
curves satisfy every known property required to make ECDH secure, and
also some designed to make implementation easier. Dragonfly had
obvious security flaws.

If you want more of a process, go ahead and start it. But I think what
you will get is a bunch of "Yes, these numbers are prime"
and "I clicked all the links on safecurves.cr.yp.to and used PARI to
verify everything". If they are missing attacks, that's one thing,
but they aren't.

Security conversations are never over: it's entirely possible that
tomorrow a paper hits IACR which identifies a new set of
weaknesses in elliptic curves, and then we have to go through and see
which ones fall.

Sincerely,
Watson Ladd
>
> Yoav
>



-- 
"Those who would give up Essential Liberty to purchase a little
Temporary Safety deserve neither  Liberty nor Safety."
-- Benjamin Franklin