Re: [Cfrg] draft-irtf-cfrg-eddsa -- one final proposal for domain separation (context labels) for ed25519

Simon Josefsson <> Tue, 10 May 2016 09:16 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 43C1112D0C0; Tue, 10 May 2016 02:16:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -4.201
X-Spam-Status: No, score=-4.201 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id ix6L_K6xoJzH; Tue, 10 May 2016 02:16:09 -0700 (PDT)
Received: from ( [IPv6:2001:9b0:1:1702::100]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 1428612D09B; Tue, 10 May 2016 02:16:08 -0700 (PDT)
Received: from ([]) (authenticated bits=0) by (8.14.4/8.14.4/Debian-4+deb7u1) with ESMTP id u4A9G4oC004471 (version=TLSv1/SSLv3 cipher=AES128-GCM-SHA256 bits=128 verify=NOT); Tue, 10 May 2016 11:16:05 +0200
From: Simon Josefsson <>
To: Martin Thomson <>
References: <> <> <> <> <> <>
OpenPGP: id=54265E8C; url=
Date: Tue, 10 May 2016 11:16:03 +0200
In-Reply-To: <> (Martin Thomson's message of "Mon, 9 May 2016 10:23:31 +1000")
Message-ID: <>
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.99 at
X-Virus-Status: Clean
Archived-At: <>
Resent-To: <>
Subject: Re: [Cfrg] draft-irtf-cfrg-eddsa -- one final proposal for domain separation (context labels) for ed25519
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: Crypto Forum Research Group <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Tue, 10 May 2016 09:16:11 -0000

Martin Thomson <> writes:

> On 6 May 2016 at 20:17, Ilari Liusvaara <> wrote:
>> So yeah, just use separate keys. Don't cause problems for everybody
>> by using contexts.
> As an author of a document that defines the use of contexts, how do
> you reconcile this view with what the document says?

Hi Martin.

The difference between personal opinion and group consensus decisions?
I'm just speculating what Ilari's reasons are though.

> But I see those examples as illustrative of an insufficient degree of
> redundancy.  For, if ever there were fans of redundancy, it would be
> the military.  While conceivably you could build a protocol that
> defers all self-identification and context to the crypto that supports
> it, in the cases illustrated, it shows itself as unwise in the extreme
> in light of the propensity of people to do bad things.

I suspect there is fundamental disagreement between fans of redundancy
and fans of lesser complexity.

In my experience, redundancy (=complexity) in security systems have too
many time been used as a way to get through the system.  Redundancy can
act as a slowdown factor and mitigator, but if your primitives are weak
then you are vulnerable no matter what.  The academic optimistic view
appears to be that it should be possible to find strong primitives, and
to trust that they are strong.  History shows that everything is broken
eventually, but history hasn't killed the optimism.

My thoughts are that it is possible to achieve what the proponents of
redundancy (contexts) want and please the people who want the least
complexity, at the same time.  Just define a low-level primitive like
Ed25519 as it is, and deal with higher-level aspects like
cross-protocol/domain mitigators at the protocol level, or at another
crypto primitive (ed25519ctx) which can be opt-in by the people who have
drunk that particular Kool-Aid.