Re: [Cfrg] Formal request from TLS WG to CFRG for new elliptic curves

Watson Ladd <> Tue, 15 July 2014 01:11 UTC

Return-Path: <>
Received: from localhost ( []) by (Postfix) with ESMTP id DA83F1B27F2 for <>; Mon, 14 Jul 2014 18:11:54 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.4
X-Spam-Status: No, score=-1.4 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, J_CHICKENPOX_55=0.6, SPF_PASS=-0.001] autolearn=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id G1vrhupnxNS4 for <>; Mon, 14 Jul 2014 18:11:53 -0700 (PDT)
Received: from ( [IPv6:2607:f8b0:4002:c07::22a]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 29D811B27F4 for <>; Mon, 14 Jul 2014 18:11:53 -0700 (PDT)
Received: by with SMTP id 20so1343216yks.1 for <>; Mon, 14 Jul 2014 18:11:52 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=SWqncdDLxL0mwBH2CFGgKpx3D9Mmk9Tt5RjEkQ7uURs=; b=NjyxmqORygTLm6MRsoM3D3WLiKbZ29edmR1Kr3E8gbjH28Ov7+GaodTejRlnIGl6N/ QMEvHyvAN/YqcjAqN8km8bY/pTRDwvx39JlqywNCFkLOFClaGPp5yFBFVfzYikJB70EH W5c7B2SC8h+B/0RRFZoYWNoKReABj/d4B/uIsW/Z1PjXXVuE743yg7hcm8CgCVp5C3VY f/6MflvaIz8xfElM/Gxroz6s2ai/l5sTLWpVwGYxvwG67HYFktXvlWRJTy4gQ5IdTJvQ F3iSbxD9Zh3PPATBohNJl7kwOnPtRt0aL8TN5mBqr6PHR10AoaiZ8VKM3oWzgSiPt3T+ 5rLg==
MIME-Version: 1.0
X-Received: by with SMTP id z70mr34555668yhz.107.1405386712156; Mon, 14 Jul 2014 18:11:52 -0700 (PDT)
Received: by with HTTP; Mon, 14 Jul 2014 18:11:52 -0700 (PDT)
In-Reply-To: <>
References: <>
Date: Mon, 14 Jul 2014 18:11:52 -0700
Message-ID: <>
From: Watson Ladd <>
To: "Paterson, Kenny" <>
Content-Type: text/plain; charset=UTF-8
Cc: "" <>
Subject: Re: [Cfrg] Formal request from TLS WG to CFRG for new elliptic curves
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Crypto Forum Research Group <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Tue, 15 Jul 2014 01:11:55 -0000

On Jul 14, 2014 12:49 PM, "Paterson, Kenny" <> wrote:
> Dear CFRG,
> CFRG has received a formal request from the TLS Working Group for
> recommendations for new elliptic curves. Specifically, the TLS WG would
> like CFRG to recommend:
> - Curves suitable for both key establishment and digital signature
>   (though the same curves need not be used for both purposes).
> - One proposed curve or set of curves at the following security
>   levels: 128-bit (~256-bit curve) and 256-bit (~512 bit curve).
>   192-bit security is optional.

I would like these to be taken as minimums. There is no reason
Curve4417 should not be used for 192 bit security
or Goldilocks448 if performance is acceptable.

I am not sure that 512 bits is needed: the NSA only uses P-384 for Top
Secret data. Perhaps this is an area where the
TLS WG can do some more thinking about what they want to see.

> Note that these curves are not intended to supplant current curves in
> widespread use, but rather to supplement them. Full details of the request
> can be found in the e-mail from the TLS WG chairs below.
> The CFRG chairs will coordinate a response to this request from the CFRG
> readership. Ideally we will reach a rough consensus through discussion on
> the
> list and at the upcoming IETF 90 meeting in Toronto. While no deadline is
> set for our response to the TLS WG, we should aim to have one ready within
> 2 months.
> We regard this as a major work item for CFRG and one where CFRG can
> provide real value to the TLS WG and the IETF more widely. So we encourage
> (and indeed request) active participation from the widest set of
> participants on this project.
> As a first step, we propose to discuss the requirements for new curves for
> a period of 2 weeks. Using an agreed set of requirements, in a second
> step, we will then evaluate different curve proposals (including extant
> proposals and any emerging ones) for a period of 4 weeks. In a final
> period of 2 weeks, we will produce a proposal for the TLS WG and seek
> consensus on it.

What should a proposal look like? A family of similar curves, one for
each length?
How much implementation should be done? Making very fast
implementations can require a lot of coding,
but I think we know about how fast prime shapes will be, and curve
shape+prime shape gives you
everything but the TLC factor.

> The first step, running for 2 weeks, begins here.
> A starting point for requirements can be found in David McGrew's recent
> CFRG post
> ( and
> reproduced here:
> ----
> Simplicity
>    R1.  Desired: easy to understand and implement [1]
> Efficiency
>    R2.  Required: amenable to compact implementations and fast
>    implementations, across both small and large processors [1]
>    R3.  Desired: re-use components between signatures and key exchange
>    algorithms [3]

How about code size for R3 to make it more amenable to argument?

> Intellectual Property
>    R4.  Required: available worldwide under reasonable and well
>    understood licensing terms [1]
>    R5.  Desired: available worldwide under royalty-free licensing
>    terms [1]

I would make R5 a requirement. Royalties are a nonstarter for many users.

> Interoperability
>    R6.  Desired: can be used with current software implementations
>    (using different curve parameters) of TLS, PKIX, SSH, and IKE [4]
>    R7.  Desired: can be used within current ECC standards of TLS,
>    PKIX, SSH, and IKE [4]

These desiderata are worthwhile, but implementors have signalled they
are willing to make
large changes for performance.

> Security
>    R8.  Required: amenable to constant-time implementations, to avoid
>    side channel attacks [2]
>    R9.  Required: resist twist attacks [2]

I don't like R9: twist attacks are only an issue with algorithms that
work on the compressed form. It just feels different.
Perhaps the requirement should be that implementations that miss
checks avoid being completely insecure.
>    R10.  Required: curve parameters should have good provenance;
>    random curves should be provably pseudorandom [5]
>    R11.  Desired for key exchange: resist invalid curve attacks [2];
>    note that complete addition laws help and are thus desirable [2].
>    (Note that the use of ephemeral keys also resist such attacks.)

I feel this should be folded into an edited R9.
>    R12.  Required for PAKE: indistinguishability of curve points from
>    random strings [2]

Mike Hamburg will know better than I, but my vague recollection is
that Elligator 2 worked for everything.
> Footnotes:
>    [1] Original criteria set out for the Advanced Encryption Standard,
>        which is equally applicable to ECC.  National Institute of
>        Standards and Technology (NIST) of the United States, 1998.
>    [2] Daniel J. Bernstein and Tanja Lange. SafeCurves: choosing safe
>        curves for elliptic-curve cryptography.
> <>
> <>, accessed
> April 2014.
>    [3] Criteria identified by David McGrew, 2014.
>    [4] Criteria identified by Russ Housley, TLS WG meeting at IETF89.
>    [5] Criteria widely acknowledged on CFRG email list during 2014.
> ----
> Our first request, then, is that you consider these requirements, and
> provide your views on their appropriateness, completeness, and individual
> classifications (required/desired). We will continue that discussion for 2
> weeks, until the end of the IETF meeting in Toronto. The chairs will then
> compile a consensus-based list of requirements of the above form, after
> which we will move to the second step.
> We thank you in advance for your participation in this important task.
> Regards
> Alexei, Kenny and Kevin (CFRG co-chairs)
> On 11/07/2014 05:44, "Joseph Salowey (jsalowey)" <>
> wrote:
> >CFRG Chairs and Security ADs,
> >
> >TLS WG would like to formally request that the
> >CFRG make a recommendation for new ECC group support for TLS
> >and other similar applications. Specifically, we request that CFRG
> >recommend the following:
> >
> >- Curves suitable for both key establishment and digital signature
> >  (though the same curves need not be used for both purposes).
> >
> >- One proposed curve or set of curves at the following security
> >  levels: 128-bit (~256-bit curvee) and 256-bit (~512 bit curve).
> >  192-bit security is optional.
> >
> >If the same curves are used for key establishment and signature, this
> >would be a recommendation for two curves.  If different curves are
> >used, this would be a recommendation for four curves.
> >
> >In addition to a recommendation, we also request that the CFRG provide
> >a technical rationale for their selection.
> >
> >If the CFRG does not feel comfortable making a single set of
> >selections, we propose that they select a small number of potential
> >choices with a detailed technical analysis of the advantages and
> >disadvantages of each selection and that the Security ADs sponsor a
> >process (perhaps via SAAG) to narrow it down to the specification
> >above.
> >
> >For clarity, we are not currently requesting that CFRG replace or
> >profile the existing curves in RFC4492 and RFC 7027, although we are
> >also not ruling out such an effort in the future. The current request
> >is for a new set of curves to complement the existing ones.
> >
> >Please reach out to us if this is unclear or further information is
> >required.
> >
> >Thanks,
> >
> >TLS Chairs
> >
> >
> _______________________________________________
> Cfrg mailing list