Re: [TLS] Doing without renegotiation

Nico Williams <nico@cryptonector.com> Thu, 17 April 2014 16:03 UTC

Return-Path: <nico@cryptonector.com>
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 658271A01BB for <tls@ietfa.amsl.com>; Thu, 17 Apr 2014 09:03:33 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.356
X-Spam-Level:
X-Spam-Status: No, score=0.356 tagged_above=-999 required=5 tests=[BAYES_05=-0.5, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FM_FORGED_GMAIL=0.622, IP_NOT_FRIENDLY=0.334] autolearn=no
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 6_TraUAJdxBe for <tls@ietfa.amsl.com>; Thu, 17 Apr 2014 09:03:29 -0700 (PDT)
Received: from homiemail-a28.g.dreamhost.com (sub4.mail.dreamhost.com [69.163.253.135]) by ietfa.amsl.com (Postfix) with ESMTP id A07921A00A3 for <tls@ietf.org>; Thu, 17 Apr 2014 09:03:29 -0700 (PDT)
Received: from homiemail-a28.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a28.g.dreamhost.com (Postfix) with ESMTP id 436321B4059 for <tls@ietf.org>; Thu, 17 Apr 2014 09:03:26 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=cryptonector.com; h= mime-version:in-reply-to:references:date:message-id:subject:from :to:cc:content-type:content-transfer-encoding; s= cryptonector.com; bh=5NtTDQizbj1dXa4rQXacM1HOdcw=; b=HCG94B6TGLv FFVuoSH+8Z5BKKED4csoxJlLEs2C6C6/9nJik3K1xdx1NGir5fmJJdIdqcx535qp F1OM+BWKSZd4GoxyuMx1Q3O4orggAdABDM0zB6snI1Xn6khUlkXsWusJwEiey4l4 aGW3TB5mihtUme8l+STcU8A7Cp5211wI=
Received: from mail-wi0-f178.google.com (mail-wi0-f178.google.com [209.85.212.178]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: nico@cryptonector.com) by homiemail-a28.g.dreamhost.com (Postfix) with ESMTPSA id E724B1B4058 for <tls@ietf.org>; Thu, 17 Apr 2014 09:03:25 -0700 (PDT)
Received: by mail-wi0-f178.google.com with SMTP id bs8so1047517wib.5 for <tls@ietf.org>; Thu, 17 Apr 2014 09:03:24 -0700 (PDT)
MIME-Version: 1.0
X-Received: by 10.180.105.132 with SMTP id gm4mr24798150wib.39.1397750604729; Thu, 17 Apr 2014 09:03:24 -0700 (PDT)
Received: by 10.216.29.200 with HTTP; Thu, 17 Apr 2014 09:03:24 -0700 (PDT)
In-Reply-To: <534F6A06.6090508@streamsec.se>
References: <20140417035011.GA25499@localhost> <534F6A06.6090508@streamsec.se>
Date: Thu, 17 Apr 2014 11:03:24 -0500
Message-ID: <CAK3OfOhMsuEQcWRrqOGBumQHev3obo8SDXB=-jA2E8pEC=zfcQ@mail.gmail.com>
From: Nico Williams <nico@cryptonector.com>
To: henrick@streamsec.se
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: http://mailarchive.ietf.org/arch/msg/tls/yFFsjgabYS3oY4UpJijrdhBM5B8
Cc: "tls@ietf.org" <tls@ietf.org>
Subject: Re: [TLS] Doing without renegotiation
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, 17 Apr 2014 16:03:33 -0000

On Thu, Apr 17, 2014 at 12:43 AM, Henrick Hellström
<henrick@streamsec.se> wrote:
> On 2014-04-17 05:50, Nico Williams wrote:
>>   - For rekeying just introduce a CCS-like record whose purpose is to
>>     indicate that the sender is changing to new keys on the send side.
>>     The new keys are derived from the same master secret as the preceding
>>     keys, in the same way, but with a counter appended to the "key
>>     expansion" salt.
>>
>>     There's no need to synchronize, but DTLS requires retransmission of
>>     such messages else when dropped the recipient will not be able to
>>     decrypt any subsequent messages.
>
>
> This might be an option if the purpose of the renegotiation is just to
> reduce the risk of state collisions in the bulk encryption cipher, but it is

Yes, much like SSHv2 recommends rekeying after 2^L/4 packets, where L
is the cipher's block length (sadly no reference is given for this).

> no replacement for renegotiation of DHE/ECDHE sessions in order to refresh
> the perfect forward secrecy.

This could be done with a single round trip, no need for a full
handshake.  The payloads containing the ephemeral keys for rekeying
could be sent opportunistically when the application writes.

Nico
--