Re: [Cfrg] New names for draft-ladd-safecurves

Mike Hamburg <mike@shiftleft.org> Tue, 21 January 2014 04:12 UTC

Return-Path: <mike@shiftleft.org>
X-Original-To: cfrg@ietfa.amsl.com
Delivered-To: cfrg@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1B11F1A0299 for <cfrg@ietfa.amsl.com>; Mon, 20 Jan 2014 20:12:42 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.444
X-Spam-Level:
X-Spam-Status: No, score=-0.444 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FH_HOST_EQ_D_D_D_D=0.765, FH_HOST_EQ_D_D_D_DB=0.888, GB_I_LETTER=-2, HELO_MISMATCH_ORG=0.611, HOST_MISMATCH_NET=0.311, RDNS_DYNAMIC=0.982, SPF_PASS=-0.001] autolearn=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 Ozia3A1V_m0m for <cfrg@ietfa.amsl.com>; Mon, 20 Jan 2014 20:12:40 -0800 (PST)
Received: from aspartame.shiftleft.org (199-116-74-157-v301.PUBLIC.monkeybrains.net [199.116.74.157]) by ietfa.amsl.com (Postfix) with ESMTP id C10111A0030 for <cfrg@irtf.org>; Mon, 20 Jan 2014 20:12:40 -0800 (PST)
Received: from [192.168.1.129] (unknown [192.168.1.1]) by aspartame.shiftleft.org (Postfix) with ESMTPSA id 2F82A3AA04; Mon, 20 Jan 2014 20:10:35 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=shiftleft.org; s=sldo; t=1390277435; bh=SPjKNzwhhYVqytH12fFHsYwNwx8r0cRFHDkCENjqmE4=; h=Subject:From:In-Reply-To:Date:Cc:References:To:From; b=SumYe6fB8f321bVVtsH4TkSdQQNPVBXBsBLai3NHmqJEZ+XfXqgv+UY+w9lSflxNO NEiRWs9O+6ybfcZfp52pshS8PZplyRXx0dSqoAmZl5pXr2yYkcNmawgPJPLnVsfMhW BfG32Ca+mpoF8++hnK+dd0h7ENhALSXc6ACPOfKA=
Content-Type: text/plain; charset=us-ascii
Mime-Version: 1.0 (Mac OS X Mail 7.1 \(1827\))
From: Mike Hamburg <mike@shiftleft.org>
In-Reply-To: <CACsn0cn0938BHMs7uFJYeB_q2VcGQULcF8fzc7KR67A_+mqzLw@mail.gmail.com>
Date: Mon, 20 Jan 2014 20:12:39 -0800
Content-Transfer-Encoding: quoted-printable
Message-Id: <264676DC-14DA-432E-81AB-CD0D852307A4@shiftleft.org>
References: <CACsn0ck02mnETBUfuyJjLV9K8Yuiki8_-RG0tVszL8BDhkK27w@mail.gmail.com> <6489F7D3-BF54-416F-94BE-64FD1CFCCB1E@callas.org> <CACsn0cn0938BHMs7uFJYeB_q2VcGQULcF8fzc7KR67A_+mqzLw@mail.gmail.com>
To: Watson Ladd <watsonbladd@gmail.com>
X-Mailer: Apple Mail (2.1827)
Cc: "cfrg@irtf.org" <cfrg@irtf.org>, Jon Callas <jon@callas.org>
Subject: Re: [Cfrg] New names for draft-ladd-safecurves
X-BeenThere: cfrg@irtf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Crypto Forum Research Group <cfrg.irtf.org>
List-Unsubscribe: <http://www.irtf.org/mailman/options/cfrg>, <mailto:cfrg-request@irtf.org?subject=unsubscribe>
List-Archive: <http://www.irtf.org/mail-archive/web/cfrg/>
List-Post: <mailto:cfrg@irtf.org>
List-Help: <mailto:cfrg-request@irtf.org?subject=help>
List-Subscribe: <http://www.irtf.org/mailman/listinfo/cfrg>, <mailto:cfrg-request@irtf.org?subject=subscribe>
X-List-Received-Date: Tue, 21 Jan 2014 04:12:42 -0000

On Jan 20, 2014, at 7:54 PM, Watson Ladd <watsonbladd@gmail.com> wrote:

> On Mon, Jan 20, 2014 at 7:50 PM, Jon Callas <jon@callas.org> wrote:
>> 
>> On Jan 20, 2014, at 7:17 PM, Watson Ladd <watsonbladd@gmail.com> wrote:
>> 
>>> I am proposing that we name the curves with the following scheme: E,
>>> M, TE, indicating
>>> the curve type, followed by a prime designator. The prime designator
>>> will be the concatination
>>> of the numbers a and b such that 2^a-b=p if such a and b exist and are
>>> small. Otherwise I'll think of something (Ed448 Goldilocks I'm looking
>>> at you).
>>> 
>>> Any objections? Or do we have consensus on this change, and I was just
>>> to dense to notice?
>>> 
>>> A new version with significant alterations will be hitting the draft
>>> server in a few days.
>> 
>> I think it's overkill, myself.
>> 
>> Really, there's no reason to designate in the name an Edwards curve from a Montgomery, especially because in the implementation someone's probably going to flip between representations. Only us math weenies really care about the representation, and you're going to confuse the coders.
> 
> If I hand you a string of bytes, what point does that represent and on
> what curve does it fall? Seems to me like that's a representation
> issue we should all care about.

It may depend on whether we expect a curve to be used for both signatures and ECDH, or just one purpose.  If they're only for one thing, then the letters make a difference.

I think Jon wants to use each curve for both purposes, at least potentially, which makes sense to me.  This is why I suggested always using the Montgomery point representation (or even its inverse square root! but maybe that's crazy) even for the Edwards curves.

I suppose in that case we should be using curves with a small A or (A-2)/4 in Montgomery form instead of small d in Edwards form, because you need to multiply by A more often: Edwards representations are probably fastest with Niels+Extended coordinates at that size so they almost never multiply by d.

>> I spent time talking to Dan and Tanja this weekend at ShmooCon about this sort of thing and I think that our agreement was that names like "Curve 255-19" (which covers both Curve25519 and Ed25519) or "Curve 414-17" (for the curve formerly known as Curve3617) made sense.

This is also nice because you could call Ed448-Goldilocks as "Curve 448-224-1".

> This would be great except that we want both Edwards and Montgomery
> wire formats. If there is consensus on only Edwards wire formats, that
> naming will work fine.

If you're going to pick one, it should be Montgomery.  This is because the Montgomery ladder suffers almost a 10% hit from conversion, but Edwards suffers like an 0.2% hit.

-- Mike