Re: [TLS] Curve25519 in TLS

Simon Josefsson <> Wed, 11 September 2013 17:13 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 4855521F9950 for <>; Wed, 11 Sep 2013 10:13:31 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -102.599
X-Spam-Status: No, score=-102.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id uPrPIc9MOzrP for <>; Wed, 11 Sep 2013 10:13:30 -0700 (PDT)
Received: from ( [IPv6:2001:9b0:1:1702::100]) by (Postfix) with ESMTP id 3834C21F8616 for <>; Wed, 11 Sep 2013 10:13:14 -0700 (PDT)
Received: from ([]) (authenticated bits=0) by (8.14.4/8.14.4/Debian-4) with ESMTP id r8BHCcjO000701 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT); Wed, 11 Sep 2013 19:12:42 +0200
From: Simon Josefsson <>
To: Rob Stradling <>
References: <> <> <> <> <>
OpenPGP: id=B565716F; url=
Date: Wed, 11 Sep 2013 10:12:31 -0700
In-Reply-To: <> (Rob Stradling's message of "Tue, 10 Sep 2013 09:34:47 +0100")
Message-ID: <>
User-Agent: Gnus/5.130008 (Ma Gnus v0.8) Emacs/24.3 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Virus-Scanned: clamav-milter 0.97.8 at
X-Virus-Status: Clean
Cc: Patrick Pelletier <>, "" <>
Subject: Re: [TLS] Curve25519 in TLS
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: "This is the mailing list for the Transport Layer Security working group of the IETF." <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Wed, 11 Sep 2013 17:13:31 -0000

Rob Stradling <> writes:

> Simon, thanks for creating this draft.
> draft-merkle-tls-brainpool-04 (on which you've based this new draft) says:
>    "While the ASN.1 object identifiers
>    defined in [RFC5639] already allow usage of the ECC Brainpool curves
>    for TLS (client or server) authentication through reference in X.509
>    certificates according to [RFC3279] and [RFC5480] , their negotiation
>    for key exchange according to [RFC4492] requires the definition and
>    assignment of additional NamedCurve IDs."
> Your draft defines a NamedCurve ID for Curve25519, thereby enabling it
> to be used for key exchange.  But what about "(client or server)
> authentication through reference in X.509 certificates..."?
> I'm not aware of an equivalent of RFC5639 for Curve25519.  Should we
> create one?  Or could we simply define some new ASN.1 Object
> Identifiers in your draft?

Yes perhaps.  What would the purpose of using Curve25519 in X.509
certificates be?  Performance is less critical there than for ECDH, but
if you or someone else has numbers indicating X.509 signature
verification being a performance bottle neck I would be convinced
otherwise.  There could be other reasons than performance though, but
they should be articulated and examined.

RFC 5639 contains a lot of things, is there anything other than the OID
and PKIX usage you think is relevant for Curve25519?