Re: [TLS] Deprecate SHA1 for signatures in TLS 1.3 (was Re: TLS 1.3 draft-07 sneak peek)

Viktor Dukhovni <ietf-dane@dukhovni.org> Sat, 11 July 2015 20:36 UTC

Return-Path: <ietf-dane@dukhovni.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 953C91AC82C for <tls@ietfa.amsl.com>; Sat, 11 Jul 2015 13:36:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.6
X-Spam-Level:
X-Spam-Status: No, score=-2.6 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7] autolearn=ham
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 kfJ22JFaBkAG for <tls@ietfa.amsl.com>; Sat, 11 Jul 2015 13:36:18 -0700 (PDT)
Received: from mournblade.imrryr.org (mournblade.imrryr.org [38.117.134.19]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B13D91AC7E8 for <tls@ietf.org>; Sat, 11 Jul 2015 13:36:18 -0700 (PDT)
Received: by mournblade.imrryr.org (Postfix, from userid 1034) id 8374E284D6A; Sat, 11 Jul 2015 20:36:17 +0000 (UTC)
Date: Sat, 11 Jul 2015 20:36:17 +0000
From: Viktor Dukhovni <ietf-dane@dukhovni.org>
To: tls@ietf.org
Message-ID: <20150711203552.GT28047@mournblade.imrryr.org>
References: <CALuAYvbteowTeyWe9VneRHgyvzTRS3LfKdorWt=jmEy2k+wNqw@mail.gmail.com> <201507111432.29731.davemgarrett@gmail.com> <20150711190040.GS28047@mournblade.imrryr.org> <201507111536.50433.davemgarrett@gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <201507111536.50433.davemgarrett@gmail.com>
User-Agent: Mutt/1.5.23 (2014-03-12)
Archived-At: <http://mailarchive.ietf.org/arch/msg/tls/2FeawAuPW1A73vPfPoYpQr_bSzU>
Subject: Re: [TLS] Deprecate SHA1 for signatures in TLS 1.3 (was Re: TLS 1.3 draft-07 sneak peek)
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
Reply-To: tls@ietf.org
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: <https://mailarchive.ietf.org/arch/browse/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: Sat, 11 Jul 2015 20:36:20 -0000

On Sat, Jul 11, 2015 at 03:36:49PM -0400, Dave Garrett wrote:

> I was going based on Ilari's comments here:
> https://www.ietf.org/mail-archive/web/tls/current/msg17022.html
> 
> The only scenario where having an EE cert that can't sign anything would
> be useful is opportunistic encryption. Using anon ciphers sounds better,
> but I guess attempting auth allows trust on first use so I agree that
> transmitting certs could be useful here.

Not, not "can't signed anything" rather "is signed *by* its issuer
via an unsupported signature".  The server's public key is not
constrained to use the same signature algorithm that signed its
certificate.  Indeed it must, for example, sign EDH/EECDH parameters
with an algorithm that is supported by the client.

> > If at all possible, the server SHOULD choose a chain all of whose
> > signatures (excluding any self-signed root CAs) match the client's
> > signature algorith list.  If that's not possible, it SHOULD send
> > a default chain (often the only chain it has) with a compatible
> > public key.
> 
> We don't really have an official definition of what constitutes a "default" chain here.

Whatever the server cares to use.  Implementation dependent.  Using something
minimally exotic would be wise, but I don't the standar can or should specify
how to choose.

> > As above: s/RECOMMENDED/SHOULD/.  It is NOT up to the server to decide
> > which chains the client can accept.  The server has insufficient
> > information, and therefore SHOULD NOT preempt the client's decision
> > of whether the chain works or not.
> 
> I was also going with RECOMMENDED/MAY language based on ekr's recent comments.

That would be wrong.  It really MUST or at least SHOULD continue
the handshake.

> > On the public Internet, such servers will be few and far between,
> 
> I think the rope, as you put it, needs to be there in some form. On the
> public Internet, yes, I can see your point. In a more tightly controlled
> system with a potentially constrained environment, I don't see the point
> in forcing the server to send down certs that the admin can 100% know will
> just waste bandwidth and processing. So, SHOULD/RECOMMENDED is the level
> that I think this'll need to be at.
> 
> I think I understand all of your argued reasons better now. I'll come up
> with some replacement language that takes them into account.

I'll settle for SHOULD.

-- 
	Viktor.