Re: [TLS] TLS Protocol Version

Martin Rex <mrex@sap.com> Fri, 20 November 2009 17:58 UTC

Return-Path: <mrex@sap.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 6D65B3A68CF for <tls@core3.amsl.com>; Fri, 20 Nov 2009 09:58:24 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.781
X-Spam-Level:
X-Spam-Status: No, score=-5.781 tagged_above=-999 required=5 tests=[AWL=-0.132, BAYES_00=-2.599, HELO_EQ_DE=0.35, J_CHICKENPOX_33=0.6, 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 v8EkIxezH4GE for <tls@core3.amsl.com>; Fri, 20 Nov 2009 09:58:23 -0800 (PST)
Received: from smtpde01.sap-ag.de (smtpde01.sap-ag.de [155.56.68.171]) by core3.amsl.com (Postfix) with ESMTP id 65F623A67A7 for <tls@ietf.org>; Fri, 20 Nov 2009 09:58:23 -0800 (PST)
Received: from mail.sap.corp by smtpde01.sap-ag.de (26) with ESMTP id nAKHwJf1001737 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Fri, 20 Nov 2009 18:58:19 +0100 (MET)
From: Martin Rex <mrex@sap.com>
Message-Id: <200911201758.nAKHwIWY014894@fs4113.wdf.sap.corp>
To: Pasi.Eronen@nokia.com
Date: Fri, 20 Nov 2009 18:58:18 +0100
In-Reply-To: <808FD6E27AD4884E94820BC333B2DB774F30FE12B7@NOK-EUMSG-01.mgdnok.nokia.com> from "Pasi.Eronen@nokia.com" at Nov 18, 9 08:02:47 pm
MIME-Version: 1.0
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 8bit
X-Scanner: Virus Scanner virwal05
X-SAP: out
Cc: tls@ietf.org
Subject: Re: [TLS] TLS Protocol Version
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
Reply-To: mrex@sap.com
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: Fri, 20 Nov 2009 17:58:24 -0000

Pasi.Eronen@nokia.com wrote:
> 
> BTW, there's another common renegotiation case where a "low-hanging
> fruit" (trivial-to-implement solution known not to cause interop
> problems with broken servers) exists: changing from server-only
> authentication to mutual authentication (with certificate-based 
> cipher suites).
> 
> In this case, the client could include a magic "This is a
> renegotiation, but with same server certificate" cipher suite in the
> renegotiation client hello, and verify that the server certs in the old
> and new sessions are identical (bitwise). This would be just a magic
> cipher suite number: no other on-the-wire changes, and no changes to
> Finished message calculations. But the server would know this
> renegotiation is secure, and could proceed even if it prohibited
> "old-style" insecure renegotiation.


When there really is a desire to add a few simple signals in
a (probably) fully backwards compatible fashion into all existing
TLS&SSL protocols through magic ciphersuite,

Then I would like to suggest the following approach:

 - have an entire range (set of 256 ciphersuites) assigned for
   this purpose (e.g. first byte 190/0xBE or 191/0xBF )

 - use the low byte of this range as a bitfield of 8-bits
   for signaling that can be independently assigned by TLS WG / IANA

 - require this magic ciphersuite to be first in the cipher_suites
   list of the ClientHello if this signaling facility is to be used

 - require the Server to NOT ever negotiate a ciphersuite from this range
   i.e. remove it from the list when it appears first in
   ClientHello.cipher_suites and do not pass it on to functions
   that determine a common cipher suite with the client.

 - strongly recommend clients and servers to filter this magic
   ciphersuite range from normal cipher suite configuration APIs


-Martin