Re: [TLS] Abbreviated Handshake != Renegotiated Handshake

Ravi Ganesan <> Sun, 20 December 2009 00:57 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id B73C73A690E for <>; Sat, 19 Dec 2009 16:57:08 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -2.165
X-Spam-Status: No, score=-2.165 tagged_above=-999 required=5 tests=[AWL=-0.189, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id 8+6g1lQpJ91E for <>; Sat, 19 Dec 2009 16:57:08 -0800 (PST)
Received: from ( []) by (Postfix) with ESMTP id 08E2E3A690A for <>; Sat, 19 Dec 2009 16:57:07 -0800 (PST)
Received: by pzk6 with SMTP id 6so3064547pzk.29 for <>; Sat, 19 Dec 2009 16:56:50 -0800 (PST)
MIME-Version: 1.0
Received: by with SMTP id k37mr3752431wah.31.1261270610269; Sat, 19 Dec 2009 16:56:50 -0800 (PST)
In-Reply-To: <>
References: <> <>
Date: Sat, 19 Dec 2009 16:56:50 -0800
Message-ID: <>
From: Ravi Ganesan <>
Content-Type: multipart/alternative; boundary="0016e64b95b6b0d926047b1e7240"
Subject: Re: [TLS] Abbreviated Handshake != Renegotiated Handshake
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." <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Sun, 20 Dec 2009 00:57:08 -0000

> The HelloRequest handshake message does not carry an indicators
> why a server requests renegotiation, so a client can only guess.
> The most commonly known usage in popular applications on
> the internet seems the request for a client certificate after
> having seen the clients request.

Sure, and in this case if the Client responds with a Client Hello with the
initial session ID then the server has to anyway respond with a full
handshake server-hello (else it cannot get client-auth).

My only point is that we are relying on app that requests a "renegotiate" of
its underlying SSL stack to differentiate between two cases: (i) where the
renegotiate with full handshake really happens and (ii) when a previous
session is resumed. If there is no need for case (ii) it seemed to me to be
better to not let this happen, and hope the app can tell the difference.

Sounds like everyone else thinks this is fine -- so be it.