Re: [TLS] Single round trip abbreviated handshake

"Brian Smith" <> Tue, 09 February 2010 19:46 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id CC68928C1CA for <>; Tue, 9 Feb 2010 11:46:50 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -2.449
X-Spam-Status: No, score=-2.449 tagged_above=-999 required=5 tests=[AWL=-0.150, BAYES_00=-2.599, MIME_8BIT_HEADER=0.3]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id cu12CFTXZRg1 for <>; Tue, 9 Feb 2010 11:46:50 -0800 (PST)
Received: from ( []) by (Postfix) with ESMTP id 308B73A67F6 for <>; Tue, 9 Feb 2010 11:46:40 -0800 (PST)
Received: from T60 (unknown []) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPSA id B75F1509DA; Tue, 9 Feb 2010 14:47:40 -0500 (EST)
From: "Brian Smith" <>
To: "'Ravi Ganesan'" <>, =?UTF-8?Q?'Michael_T=C3=BCxen'?= <>
References: <> <000601caa694$cf3e2ed0$6dba8c70$@org> <> <0d6201caa9af$d2217760$76646620$> <> <> <>
In-Reply-To: <>
Date: Tue, 9 Feb 2010 13:47:41 -0800
Message-ID: <002e01caa9d1$84a5d540$8df17fc0$>
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQK3EY0bo4Ss8IReb7cv2eP2noLxrAJdZBT7Ac9wtWMCYeTZcAFcZf6sAopFUPIBwQbU1QHSkoHs
Content-Language: en-us
Subject: Re: [TLS] Single round trip abbreviated 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: Tue, 09 Feb 2010 19:46:50 -0000

Michael Tüxen wrote:
> ... not if you run DTLS over a connection oriented transport
> protocol like DCCP or SCTP. For the new transport connection
> you need to establish a new DTLS connection.

That's true. But, MashSSL is TLS tunneled through HTTP over TCP, so it has a lot of flexibility in how it defines a "HTTP over TCP transport connection." MashSSL already lets that transport connection span multiple TCP connections (AFAICT).

> Michael Tüxen wrote:
> > I assume that he just "continues to use an existing DTLS connect", or
> > am I wrong?

You both understand the idea.

Ravi Ganesan wrote:
> I do not know about DTLS, but in regular TLS one cannot say open a fresh socket,
> send a client_hello with an existing session ID, do a change cipher_spec and
> start sending data using keys from old session.
> You really need to go through the abbreviated handshake dance for a number of
> reasons, including fresh keys to keep cut and paste attacks at bay, etc. It would
> be very ironic if we ended up with holes that were fixed in the SSL 2.0 to 3.0
> transition. (See section 3.0 and 4.0 of this paper

DTLS and even regular TLS wouldn’t work if that was true. I think it will be help to look at how DTLS works--in particular, how it distinguishes the start of a new DTLS handshake from a continuation of an existing DTLS connection.

Unfortunately, I can't really devote enough time to this topic to explain everything clearly. Maybe in a few weeks I will have time to work on it some more.