Re: [TLS] Last Call: draft-ietf-tls-renegotiation (Transport Layer

Chris Newman <Chris.Newman@Sun.COM> Wed, 02 December 2009 17:09 UTC

Return-Path: <Chris.Newman@Sun.COM>
X-Original-To: tls@core3.amsl.com
Delivered-To: tls@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id B08463A6AD8; Wed, 2 Dec 2009 09:09:36 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.971
X-Spam-Level:
X-Spam-Status: No, score=-5.971 tagged_above=-999 required=5 tests=[AWL=0.075, BAYES_00=-2.599, HELO_MISMATCH_COM=0.553, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id u5w9mfC8v8dU; Wed, 2 Dec 2009 09:09:35 -0800 (PST)
Received: from sca-es-mail-2.sun.com (sca-es-mail-2.Sun.COM [192.18.43.133]) by core3.amsl.com (Postfix) with ESMTP id C24B03A6ABC; Wed, 2 Dec 2009 09:09:35 -0800 (PST)
Received: from fe-sfbay-09.sun.com ([192.18.43.129]) by sca-es-mail-2.sun.com (8.13.7+Sun/8.12.9) with ESMTP id nB2H9RDh025919; Wed, 2 Dec 2009 09:09:27 -0800 (PST)
MIME-version: 1.0
Content-transfer-encoding: 7bit
Content-disposition: inline
Content-type: text/plain; CHARSET="US-ASCII"; format="flowed"
Received: from conversion-daemon.fe-sfbay-09.sun.com by fe-sfbay-09.sun.com (Sun Java(tm) System Messaging Server 7u2-7.04 64bit (built Jul 2 2009)) id <0KU100C00ANHI200@fe-sfbay-09.sun.com>; Wed, 02 Dec 2009 09:09:27 -0800 (PST)
Received: from [192.168.15.4] ([unknown] [71.92.75.71]) by fe-sfbay-09.sun.com (Sun Java(tm) System Messaging Server 7u2-7.04 64bit (built Jul 2 2009)) with ESMTPSA id <0KU10084HBNKTC20@fe-sfbay-09.sun.com>; Wed, 02 Dec 2009 09:09:23 -0800 (PST)
Date: Wed, 02 Dec 2009 09:08:45 -0800
From: Chris Newman <Chris.Newman@Sun.COM>
In-reply-to: <200912021419.nB2EJr13019589@fs4113.wdf.sap.corp>
Sender: Chris.Newman@Sun.COM
To: mrex@sap.com
Message-id: <357DD72C025D423B8C814E16@446E7922C82D299DB29D899F>
X-Mailer: Mulberry/4.0.8 (Mac OS X)
References: <200912021419.nB2EJr13019589@fs4113.wdf.sap.corp>
Cc: ietf@ietf.org, tls@ietf.org
Subject: Re: [TLS] Last Call: draft-ietf-tls-renegotiation (Transport Layer
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.9
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/listinfo/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: Wed, 02 Dec 2009 17:09:36 -0000

--On December 2, 2009 15:19:53 +0100 Martin Rex <mrex@sap.com> wrote:
>> 1. Running code: multiple implementations and interop testing was
>>    performed on an earlier version of draft-ietf-tls-renegotiation.
>
> Even EKR admitted that implementing the update is an insignificant
> amount of work.
>
> Pushing this point, that there were interoperable implementations
> when this proposal was made in the IETF smells very much like
> a request for rubber stamping.

The IETF's motto is "rough consensus and running code".  So "running code" 
matters.
"rubber stamping" is only a problem if incompatible changes are refused, 
but the fact such changes were made makes that straw man moot.

>> 4. The mrex proposal requires use of TLS_RENEGO_PROTECTION_REQUEST in
>> some  circumstances.  That approach is untested in the field and I have
>>    concerns it will negatively impact middleboxes.
>
> Huh?  That sounds extremely unbelievable.

First, I'll reiterate that I found both proposals acceptable, so the four 
points I made were all matters of design preference for this situation and 
not issues I find strongly compelling.

The issue with middleboxes was raised by others and is a straw man.  There 
are government standards that have a fixed list of cipher suites and most 
clients can be configured to comply with those standards today.  Given the 
TLS standards available at the time, a middlebox which enforced the 
presence of just those cipher suites and no others in the TLS handshake 
would reasonably be expected to be forwards compatible.  Use of a 
mandatory-to-implement cipher suite value will require such middleboxes to 
be upgraded, thus slowing deploying.  I'm not a fan of middleboxes, but we 
shouldn't break them gratuitously.

>>    As draft-ietf-tls-renegotiation allows use of either the cipher suite
>>    value or the extension for C->S signaling, that mitigates the concern
>>    --  the field can choose the mechanism that works best.
>
> I consider this a defect in draft-ietf-tls-renegotiation-01.
> There should be exactly **ONE** signaling mechanism for the initial
> ClientHello on a connection so that extensions-tolerant but
> extensions-free Servers will not be force to wade through lists
> of extensions sent by clients.

I'd be fine with one signaling mechanism as long as it's the mechanism 
that's been standardized since 2006 and backwards-compatible with correct 
implementations since 1999 (TLS 1.0).  If we're misusing a cipher suite 
value as a protocol extensibility flag, an issue I'm willing to compromise 
on despite the lack of strong evidence it's necessary, we unfortunately 
need two signaling mechanisms: one that's standard that we know will work 
with modern correct implementations, and one a kludge that works with very 
old software, but might break good-faith modern implementations (like the 
middlebox straw man above).

> The existing fallbacks or conservative approaches give you a hint
> where you may expect interop problems.  TLS extensions are a known
> interop problem.

While I've seen evidence of bugs in TLS extension handling, and backwards 
compatibility fallback code that's been present in browsers since 1999, 
I've seen no evidence that extensions are an interoperability problem for 
correct standards-compliant TLS implementations or that such fallback code 
is necessary in operation today.

		- Chris