Re: [TLS] Strawman on EdDSA/Ed25519 in TLS

Simon Josefsson <simon@josefsson.org> Fri, 29 May 2015 21:14 UTC

Return-Path: <simon@josefsson.org>
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 9BAB81A877D for <tls@ietfa.amsl.com>; Fri, 29 May 2015 14:14:57 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.551
X-Spam-Level:
X-Spam-Status: No, score=-1.551 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HELO_EQ_SE=0.35, 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 S8ZS_YcgXp0G for <tls@ietfa.amsl.com>; Fri, 29 May 2015 14:14:56 -0700 (PDT)
Received: from duva.sjd.se (duva.sjd.se [IPv6:2001:9b0:1:1702::100]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id BF1561AD09F for <tls@ietf.org>; Fri, 29 May 2015 14:14:55 -0700 (PDT)
Received: from latte.josefsson.org ([155.4.17.3]) (authenticated bits=0) by duva.sjd.se (8.14.4/8.14.4/Debian-4) with ESMTP id t4TLEf8l014001 (version=TLSv1/SSLv3 cipher=AES128-GCM-SHA256 bits=128 verify=NOT); Fri, 29 May 2015 23:14:42 +0200
From: Simon Josefsson <simon@josefsson.org>
To: Ilari Liusvaara <ilari.liusvaara@elisanet.fi>
References: <1432142087.2946.11.camel@josefsson.org> <20150520203011.GA25549@LK-Perkele-VII>
OpenPGP: id=54265E8C; url=http://josefsson.org/54265e8c.txt
X-Hashcash: 1:22:150529:tls@ietf.org::WGNpdDaoKh+LYm+P:29+p
X-Hashcash: 1:22:150529:ilari.liusvaara@elisanet.fi::UWT9R7NsSUHjiJIt:6CIg
Date: Fri, 29 May 2015 23:14:39 +0200
In-Reply-To: <20150520203011.GA25549@LK-Perkele-VII> (Ilari Liusvaara's message of "Wed, 20 May 2015 23:30:11 +0300")
Message-ID: <87pp5jw0g0.fsf@latte.josefsson.org>
User-Agent: Gnus/5.130014 (Ma Gnus v0.14) Emacs/24.4 (gnu/linux)
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature"
X-Virus-Scanned: clamav-milter 0.98.7 at duva.sjd.se
X-Virus-Status: Clean
Archived-At: <http://mailarchive.ietf.org/arch/msg/tls/OIleIwt0CvYuZjROPO5s5kCUWqQ>
Cc: tls@ietf.org
Subject: Re: [TLS] Strawman on EdDSA/Ed25519 in TLS
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: Fri, 29 May 2015 21:14:57 -0000

Ilari Liusvaara <ilari.liusvaara@elisanet.fi> writes:

> On Wed, May 20, 2015 at 07:14:47PM +0200, Simon Josefsson wrote:
>>
>> Support for EdDSA/Ed25519 in TLS has been suggested a couple of times.
>> I have started to work on an I-D to describe more precisely what that
>> would actually mean, and here is an initial strawman document:
>> 
>> https://tools.ietf.org/html/draft-josefsson-tls-eddsa-00
>> 
>> I'm confident I missed some major pieces of the puzzle, but feedback and
>> review is welcome so the document can be improved into something that
>> can be implemented and interoperate.
>
> More ciphersuites? The signature algorithm negotiation (extension 13)
> doesn't work in practice?

Yoav suggested reusing the ECDSA ciphersuites with (I assume) a new
extension 13 value for eddsa.

>> One aspect I'm aware of is that there is no OID allocated nor
>> specification of PKIX certificates with EdDSA/Ed25519 public keys.  I'm
>> not sure the above document is the right place for doing that though,
>> and more thinking around this topic is especially appreciated.
>
> AFAIK, a way to put the key into PKIX SPKI is required for the
> new signature algorithm to be useful.
>
> And that means OIDs. The curve itself is 1.3.6.1.4.1.11591.15.1,
> but AFAIK, there is no OID for the signature primitive.
>
> I think one can find more expertise about how to put various
> keys into SPKI in the PKIX mailinglist.

I'll try to prepare an email asking for help.

> Reading the PKIX specs, it seems like there are two ways:
>
> 1) Use algorithm "Unresricted" and use a new point format to
> denote LE edwards points.
>
> 2) Define new algorithm (OID) for EdDSA, put the curve OID
> as parameter and the LE edwards point as the key.

I prefer 2).  Given that EdDSA is not applicable to arbitrary curves,
you might want to allocate a new algorithm OID for Ed25519 directly with
no parameters.  This will reduce complexity a bit.

Thank you Ilari!

/Simon