Re: [TLS] backwards compatiblity philosophy and MCSV

Nelson B Bolyard <nelson@bolyard.me> Sat, 05 December 2009 01:50 UTC

Return-Path: <nelson@bolyard.me>
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 941E23A67FD for <tls@core3.amsl.com>; Fri, 4 Dec 2009 17:50:25 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.833
X-Spam-Level:
X-Spam-Status: No, score=-1.833 tagged_above=-999 required=5 tests=[AWL=-0.526, BAYES_00=-2.599, MISSING_HEADERS=1.292]
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 NTi-Igl08kzV for <tls@core3.amsl.com>; Fri, 4 Dec 2009 17:50:24 -0800 (PST)
Received: from p3plsmtpa01-01.prod.phx3.secureserver.net (p3plsmtpa01-01.prod.phx3.secureserver.net [72.167.82.81]) by core3.amsl.com (Postfix) with SMTP id 28FA13A63C9 for <tls@ietf.org>; Fri, 4 Dec 2009 17:50:24 -0800 (PST)
Received: (qmail 10157 invoked from network); 5 Dec 2009 01:50:14 -0000
Received: from unknown (24.5.142.42) by p3plsmtpa01-01.prod.phx3.secureserver.net (72.167.82.81) with ESMTP; 05 Dec 2009 01:50:14 -0000
Message-ID: <4B19BC56.8070001@bolyard.me>
Date: Fri, 04 Dec 2009 17:50:14 -0800
From: Nelson B Bolyard <nelson@bolyard.me>
Organization: Network Security Services
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; rv:1.9.1b1pre) Gecko/20081004 NOT Firefox/2.0 SeaMonkey/2.0a2pre
MIME-Version: 1.0
CC: IETF TLS Working Group <tls@ietf.org>
References: <5B460507C5B45BE8C29D4E33@446E7922C82D299DB29D899F> <4B19B53F.8050501@extendedsubset.com>
In-Reply-To: <4B19B53F.8050501@extendedsubset.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Subject: Re: [TLS] backwards compatiblity philosophy and MCSV
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: Sat, 05 Dec 2009 01:50:25 -0000

Chris Newman wrote:
>> 1. Backwards compatibility with IETF standards track RFCs is important.
>> 2. Backwards compatibility with widely deployed critical software is
>> important, although there are caveats if that software/maker
>> demonstrated bad faith or if the accommodation mechanism is too
>> expensive or heuristic.
>> 3. Other forms of backwards compatibility are usually a bad thing.  They
>> create code bloat and specification complexity that increases
>> maintenance cost, necessary domain expertise training costs, and allows
>> the standard to drift away from a clean architecture into a jumble of
>> special cases.
> 
> Agree.

+1

[snip]

>> I'm now convinced there's enough SSLv3 out there that it falls into
>> category 2, so the old section 4.3 was not acceptable -- we at least
>> need to allow the RI extension to be added to SSLv3 implementations. 
>> But extensions-intolerant servers fall into category 3 in my estimation
>> unless I see compelling evidence they fall in category 2.

I agree with Chris.

On 2009-12-04 17:19 PST, Marsh Ray wrote:
> I would put an SSLv3 extension-intolerant server in category 2 along
> with SSLv3 itself.

I wouldn't.

[big snip]

> Anyone that got this perfect back in 1996, I say "well done".
> 
> For those that didn't I have some sympathy.
> 
> But for those servers that have waited 6 or 13 years to fix it, jeez!

Exactly!  I had some sympathy for the ones that didn't get it perfect back
in 1998, which is why some products that use NSS have fallback.  But that
was 11 years ago!  My sympathy has long since run out.

> Well it's time to dust off that old compiler because we've got something
> here that really needs patch patching (and you'll probably need to add
> extension support).

At the very least, add  the one line code change needed to ignore "extra
data after the compression methods" in client hellos.