Re: [TLS] AD Review of draft-ietf-tls-tls13

Nico Williams <nico@cryptonector.com> Fri, 19 May 2017 21:35 UTC

Return-Path: <nico@cryptonector.com>
X-Original-To: tls@ietfa.amsl.com
Delivered-To: tls@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 9436F12717E for <tls@ietfa.amsl.com>; Fri, 19 May 2017 14:35:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cryptonector.com
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 DW_KTzyOTby9 for <tls@ietfa.amsl.com>; Fri, 19 May 2017 14:35:31 -0700 (PDT)
Received: from homiemail-a107.g.dreamhost.com (sub4.mail.dreamhost.com [69.163.253.135]) (using TLSv1.1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 25FDC1200F1 for <tls@ietf.org>; Fri, 19 May 2017 14:35:31 -0700 (PDT)
Received: from homiemail-a107.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a107.g.dreamhost.com (Postfix) with ESMTP id 86B5A20051C27; Fri, 19 May 2017 14:35:30 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=cryptonector.com; h=date :from:to:subject:message-id:references:mime-version:content-type :in-reply-to; s=cryptonector.com; bh=pbwhRz3gsB/pxUJphPCGSLBU4zA =; b=HWNeL/ZNTyF+rvYNL2S+x1f4GtEsNvC2BXNfsbqq38RSUppFJOqLbtmZBOM 62CqnZdbNrhIoKyaH/kZmoRcapq7pMnWCNmIJvJ9wm9ozUEvdejhSaf/o40N0ME1 DAHS/i6QSmiC+bBCb7Ytbu1LCE2C7imr4yGVkXSegm4TNxRA=
Received: from localhost (cpe-70-123-158-140.austin.res.rr.com [70.123.158.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: nico@cryptonector.com) by homiemail-a107.g.dreamhost.com (Postfix) with ESMTPSA id 5221C20051C24; Fri, 19 May 2017 14:35:30 -0700 (PDT)
Date: Fri, 19 May 2017 16:35:27 -0500
From: Nico Williams <nico@cryptonector.com>
To: TLS WG <tls@ietf.org>
Message-ID: <20170519213526.GL10188@localhost>
References: <CAPZZOTgizE2n06V9wEtARFCXB7FP_eikW-K1k67bZG11kNhSAw@mail.gmail.com> <44AED5C2-B21C-442A-8412-9134D1C10BCD@dukhovni.org>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <44AED5C2-B21C-442A-8412-9134D1C10BCD@dukhovni.org>
User-Agent: Mutt/1.5.24 (2015-08-30)
Archived-At: <https://mailarchive.ietf.org/arch/msg/tls/GuwJKg_JPwjtaVGdLrhBR-2Mm0I>
Subject: Re: [TLS] AD Review of draft-ietf-tls-tls13
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.22
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: <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: Fri, 19 May 2017 21:35:32 -0000

On Fri, May 19, 2017 at 04:51:21PM -0400, Viktor Dukhovni wrote:
> Which brings us to some more undesirable layer violation in the current
> draft.  The language in question is appropriate for updates to RFC5280,
> but does not belong in TLS.  The problems in question are largely
> already addressed elsewhere (as CAs no longer issue MD5, SHA1, ...
> certificates, browsers no longer support them, ...) and continue to
> be further remediated in the appropriate standards and products.
> 
> Therefore delete:

+1

Grounds:

 - layering violation (though arguably this TLS 1.3 could be made to
   update RFC5280, we shouldn't want to do that)

 - banning some, but not all weak algorithms is a knee-jerk reaction --
   it's reactionary

 - this hurts applications that don't care for TLS server
   authentication -- applications which either don't care for server
   authentication at all, or which will use channel binding

 - it's much better to have a security level knob that disables weak
   algorithms

   (apps which don't care for TLS server authentication... need two such
   knobs: one for server authentication (on/off) and one for security
   level for key agreement, PRF, and ciphersuite negotiation)

> I note that TLS 1.3 does not have any language prohibiting MD2, MDC2DES,
> MD4, RIPEMD160, private signature oids, ... that may be weaker than SHA-1
> or even MD5.

That could be fixed, of course.  But let's not.

> The reason I am pointing this out is that I just had to waste a bunch of
> time convincing the rest of the OpenSSL team to ignore the draft language
> in question, and just stick with whatever "security level" (floor on
> algorithm strength) the application or default settings requested.  This

I much prefer the idea that there MUST be a security level knob for the
user/application.

> already excludes MD5 by default, and we'll likely adjust the collision
> resistance rating of SHA-1 from 2^80 to its reported ~2^64 strength (from
> the recent Google collision announcement), after which SHA-1 will also
> be excluded at security level 1.  This will be done in the X.509 ala PKIX
> code and not the TLS code, and applications that ignore the chain or do
> DANE-EE(3), ... will not be affected.

That's right: for PKIX server authentication, the security level
enforcement should be done in PKIX code, not in TLS code.  This is an
excellent example of how layering in Internet protocols should translate
into layering into implementations.  Conversely, this is also an example
of how layering violations in Internet protocols lead to layering
violations in implementations.

> I propose that the current draft language is just a landmine for TLS
> implementations, that addresses a non-problem (or more precisely a
> problem that is more properly and well addressed elsewhere).

+1.

Nico
--