Re: [Cfrg] On why point and APIs formats matter (Re: Submission of curve25519 to NIST from CFRG -> was RE: On "non-NIST")

Nico Williams <nico@cryptonector.com> Thu, 12 March 2015 16:26 UTC

Return-Path: <nico@cryptonector.com>
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 7D2D11A0070 for <cfrg@ietfa.amsl.com>; Thu, 12 Mar 2015 09:26:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.666
X-Spam-Level:
X-Spam-Status: No, score=-1.666 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, IP_NOT_FRIENDLY=0.334, RCVD_IN_DNSWL_NONE=-0.0001] 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 ZuoMwNo3tLJW for <cfrg@ietfa.amsl.com>; Thu, 12 Mar 2015 09:26:26 -0700 (PDT)
Received: from homiemail-a106.g.dreamhost.com (sub4.mail.dreamhost.com [69.163.253.135]) by ietfa.amsl.com (Postfix) with ESMTP id 55D051A0055 for <cfrg@irtf.org>; Thu, 12 Mar 2015 09:26:26 -0700 (PDT)
Received: from homiemail-a106.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a106.g.dreamhost.com (Postfix) with ESMTP id 03B352005D002; Thu, 12 Mar 2015 09:26:26 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=cryptonector.com; h=date :from:to:cc:subject:message-id:references:mime-version :content-type:in-reply-to; s=cryptonector.com; bh=ByJK6VyIlaHDoc hwUlCfQX/j1Ys=; b=dNJX/KTIe0pSGJR+ROx1W3BSpfns8f1XihUGgSnCaDbnny MD3HLFDd/X/Q7IPl27HTRwdsP/MyDlOH8FkEZynn1NvZlJ6dwwJYVZCliSmeyJpv LVevlu0fKcmzyONejNbCXFYbnBxNyAHSXa65+bpUdL+NtttbrmzoH5fzfGSNo=
Received: from localhost (108-207-244-174.lightspeed.austtx.sbcglobal.net [108.207.244.174]) (Authenticated sender: nico@cryptonector.com) by homiemail-a106.g.dreamhost.com (Postfix) with ESMTPA id 115A72005CF2C; Thu, 12 Mar 2015 09:26:24 -0700 (PDT)
Date: Thu, 12 Mar 2015 11:26:23 -0500
From: Nico Williams <nico@cryptonector.com>
To: James Cloos <cloos@jhcloos.com>
Message-ID: <20150312162623.GU7286@localhost>
References: <CACsn0cnGci_fHMkJiHzXmdvnSbvm08AbV+VLdObw-+n7x7sdHw@mail.gmail.com> <20150312053729.GM7286@localhost> <m3zj7iuzmw.fsf@carbon.jhcloos.org>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <m3zj7iuzmw.fsf@carbon.jhcloos.org>
User-Agent: Mutt/1.5.21 (2010-09-15)
Archived-At: <http://mailarchive.ietf.org/arch/msg/cfrg/9gTWiX4xsnXx2BmPGxkFqB5leyk>
Cc: cfrg@irtf.org
Subject: Re: [Cfrg] On why point and APIs formats matter (Re: Submission of curve25519 to NIST from CFRG -> was RE: On "non-NIST")
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: Thu, 12 Mar 2015 16:26:27 -0000

On Thu, Mar 12, 2015 at 09:13:59AM -0400, James Cloos wrote:
> >>>>> "NW" == Nico Williams <nico@cryptonector.com> writes:
> 
> NW> In addition to API simplicity, for which Curve25519 sets a high bar!,
> NW> there are other reasons to stick with its use of little-endian encoding:
> 
> Those reasons are valid for keeping 25519 as it is, but do not imply
> that new curves also need to be little-endian.

Indeed it doesn't.

> Each curve should define all of its particulars, with points et alia
> always -- of course -- stored and transmitted as fixed lenght octet
> strings.  But that allows any curve to choose big-endian.

+1.

Though Montgomery x-only point representations naturally lend themselves
to fixed-length x representations with whatever endianness is most
convenient in the most common case (x85_64), which happens to be
little-endian.  I'd expect little-endian to be the common choice, but
I'd certainly not require it!

Nico
--