Re: [TLS] Unifying tickets and sessions

Viktor Dukhovni <ietf-dane@dukhovni.org> Thu, 23 October 2014 20:01 UTC

Return-Path: <ietf-dane@dukhovni.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 3F7FD1AD04C for <tls@ietfa.amsl.com>; Thu, 23 Oct 2014 13:01:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Level:
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9] 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 S2KWxYWvcREA for <tls@ietfa.amsl.com>; Thu, 23 Oct 2014 13:01:35 -0700 (PDT)
Received: from mournblade.imrryr.org (mournblade.imrryr.org [38.117.134.19]) (using TLSv1.1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 66CC31AD046 for <tls@ietf.org>; Thu, 23 Oct 2014 13:01:35 -0700 (PDT)
Received: by mournblade.imrryr.org (Postfix, from userid 1034) id 5B10D2AB2B5; Thu, 23 Oct 2014 20:01:34 +0000 (UTC)
Date: Thu, 23 Oct 2014 20:01:34 +0000
From: Viktor Dukhovni <ietf-dane@dukhovni.org>
To: tls@ietf.org
Message-ID: <20141023200134.GY19158@mournblade.imrryr.org>
References: <2A0EFB9C05D0164E98F19BB0AF3708C71D3A8C48AF@USMBX1.msg.corp.akamai.com> <CAK3OfOj9bZcSDdWhHGeGT0STg6XBkYaExW+rQFN-FFE4oaPLrw@mail.gmail.com> <54483C33.4000702@polarssl.org> <11886639.VyNDkQ3oKj@pintsize.usersys.redhat.com> <54493904.7010807@fussenegger.info> <20141023174537.GW19158@mournblade.imrryr.org> <5449463D.7080904@fussenegger.info> <20141023183637.GX19158@mournblade.imrryr.org> <03546F3D-816C-481A-A577-9797855A9DED@pahtak.org>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <03546F3D-816C-481A-A577-9797855A9DED@pahtak.org>
User-Agent: Mutt/1.5.23 (2014-03-12)
Archived-At: http://mailarchive.ietf.org/arch/msg/tls/8eEITLrQiEzHpeGb0Cm5I_KvTe4
Subject: Re: [TLS] Unifying tickets and sessions
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
Reply-To: tls@ietf.org
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, 23 Oct 2014 20:01:37 -0000

On Thu, Oct 23, 2014 at 03:35:59PM -0400, Stephen Checkoway wrote:

> On Oct 23, 2014, at 2:36 PM, Viktor Dukhovni <ietf-dane@dukhovni.org> wrote:
> 
> > The number of key sets is irrelevant, all that matters is how long
> > each one is retained.  Postfix defaults to 2 hours (1 hour encrypt
> > and 1 hour decrypt).  With N keysets, you'd have (T encrypt, (N-1)*T
> > decrypt).
> 
> This seems perfectly reasonable (both for general N and for
> specific N = 2 or N = 3). But does it make any difference from a
> protocol perspective? The only way a client could tell if a server
> is doing something wrong is if the client knows the upper limit on
> the ticket's validity  NT and sends a ticket after that time which
> the server accepts.

OpenSSL at least enforces the N*T time-limit on sessions, and in
case would not be able to decrypt a session ticket whose key has
been discarded.  So Postfix sets 2*T as the session lifetime, and
as a result if a session ticket is decrypted the session will not
be accepted.


> I'm probably missing something but it seems like there's no real way to
> detect if the server has followed any particular policy for a ticket so
> the details (such as key rotation and symmetric algorithm strength) should
> be left entirely up to the server. (Or resumption should be dropped from
> 1.3.)

Indeed the client has no way to know whether the server has erased
previous session ticket keys.

> Giving guidance seems reasonable. Setting unenforceable limits does not.

I have no opinion on whether any limit needs to be "enforceable".
Key rotation needs to happen, but the client has no way to verify,
that's just life.

-- 
	Viktor.