Re: [TLS] Renegotiation: trying to summarize

Geoffrey Keating <geoffk@geoffk.org> Thu, 19 June 2014 23:43 UTC

Return-Path: <geoffk@geoffk.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 665B81A02E0 for <tls@ietfa.amsl.com>; Thu, 19 Jun 2014 16:43:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.902
X-Spam-Level:
X-Spam-Status: No, score=-1.902 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] 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 BfxWLPIjJ9yX for <tls@ietfa.amsl.com>; Thu, 19 Jun 2014 16:43:25 -0700 (PDT)
Received: from dragaera.releasedominatrix.com (dragaera.releasedominatrix.com [216.129.105.14]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 90BBB1A00F2 for <tls@ietf.org>; Thu, 19 Jun 2014 16:43:25 -0700 (PDT)
Received: by dragaera.releasedominatrix.com (Postfix, from userid 501) id 0698133D1BD; Thu, 19 Jun 2014 23:43:24 +0000 (UTC)
Sender: geoffk@localhost.localdomain
To: Andrei Popov <Andrei.Popov@microsoft.com>
References: <CABkgnnU+9mBdqffcbrmcghH9b3cb_Qh2R-XGWSu6MwB-0y99Lg@mail.gmail.com> <ca350126866c4b319c30ecbbc015ce69@BY2PR03MB427.namprd03.prod.outlook.com>
From: Geoffrey Keating <geoffk@geoffk.org>
Date: Thu, 19 Jun 2014 16:43:24 -0700
In-Reply-To: <ca350126866c4b319c30ecbbc015ce69@BY2PR03MB427.namprd03.prod.outlook.com>
Message-ID: <m2mwd8v52b.fsf@localhost.localdomain>
Lines: 23
User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.4
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Archived-At: http://mailarchive.ietf.org/arch/msg/tls/NETuf93ye8QlSJkQTIkVeiWDukA
Cc: "tls@ietf.org" <tls@ietf.org>
Subject: Re: [TLS] Renegotiation: trying to summarize
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.15
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: <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: Thu, 19 Jun 2014 23:43:27 -0000

Andrei Popov <Andrei.Popov@microsoft.com> writes:

> This is a good summary, thanks Martin. It also seems that #1 and #2
> break (or significantly complicate) existing TLS client auth
> scenarios, while #3 and #4 allow these client auth scenarios.

I believe there was also a proposal to allow client auth at any point
during the session, but not renegotiate: no new ciphers, no new keys,
just send CertificateRequest and get back Client Certificate and
CertificateVerify.  This does prevent use of client certificates with
encryption-only algorithms, but it seems such a thing should be used
from the start of the connection anyway.

Compared to renegotiation this allows many simplifications:
- It can't affect the confidentiality of the session
- The server's identity cannot change
- The authentication is of the whole handshake from the start, so
  there's no possibility of some earlier unauthenticated state
  affecting the rest of the session
- You can request multiple authentications and all of them apply to
  the entire session so far including previous authentications
  (a property that current TLS is vague about)
- No random numbers are needed (at least for RSA certificates)