Re: [TLS] RFC7301 ALPN conflicting objectives about app-specific server certificates

Viktor Dukhovni <ietf-dane@dukhovni.org> Sat, 04 July 2015 06:07 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 73E681A3B9F for <tls@ietfa.amsl.com>; Fri, 3 Jul 2015 23:07:36 -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, RCVD_IN_DNSWL_NONE=-0.0001] 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 zn54ydOS8fvK for <tls@ietfa.amsl.com>; Fri, 3 Jul 2015 23:07:34 -0700 (PDT)
Received: from mournblade.imrryr.org (mournblade.imrryr.org [38.117.134.19]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id A2EF91A3B9D for <tls@ietf.org>; Fri, 3 Jul 2015 23:07:34 -0700 (PDT)
Received: by mournblade.imrryr.org (Postfix, from userid 1034) id 04C19284D2B; Sat, 4 Jul 2015 06:07:34 +0000 (UTC)
Date: Sat, 04 Jul 2015 06:07:33 +0000
From: Viktor Dukhovni <ietf-dane@dukhovni.org>
To: tls@ietf.org
Message-ID: <20150704060733.GY21534@mournblade.imrryr.org>
References: <BLUPR03MB1396CB5B90F8F921981A7CF78CA80@BLUPR03MB1396.namprd03.prod.outlook.com> <20150703204842.6ED111A1B3@ld9781.wdf.sap.corp>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <20150703204842.6ED111A1B3@ld9781.wdf.sap.corp>
User-Agent: Mutt/1.5.23 (2014-03-12)
Archived-At: <http://mailarchive.ietf.org/arch/msg/tls/rgm8B9Qm4F3gBkcYGd0IHKzENpg>
Subject: Re: [TLS] RFC7301 ALPN conflicting objectives about app-specific server certificates
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: <https://mailarchive.ietf.org/arch/browse/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: Sat, 04 Jul 2015 06:07:36 -0000

On Fri, Jul 03, 2015 at 10:48:42PM +0200, Martin Rex wrote:

> So rfc7301 + rfc5077 + application-specific certificates is a pig
> that can not fly.

Well, firstly there is no requirement to structure session tickets
exactly as indicated.  They are encrypted, and the server can put
anything it wants in them.

Secondly, just like clients can implement "split" caches (use more
cache lookup attributes than just the transport endpoint), so can
servers.  The server can add a context id into the session ticket,
and only resume sessions that match that context id.

> Btw. there is also a problem for use of TLS extension SNI
> in combination with rfc5077 -- a server using rfc5077 as suggested will
> be unable to prevent "virtual host confusion"
> 
>    https://bh.ht.vc/vhost_confusion.pdf
> 
> and will also be unable to properly implement the checks that rfc6066
> specifies for ression resumption when TLS extension SNI is used.

Since session ticket content is a private matter for the server,
the standard does not preclude implementations that apply all the
relevant checks.  When I write code in this space, I tend to put
more of the responsibility for avoiding virtual host confusion on
the client.

> Nope, these are design characteristics (or failures) of the spec.
> SSL session cache management and session resumption is an area that
> has been underspecified in SSL&TLS from the beginning, and the contents
> of rfc5077 suggests to me, that the amount of folks (and implementors)
> who understand the consequences for caching, when a server has more than
> one server certificate on his hands, might be rather small.

Documenting the care due in more detail sounds like a reasonable idea.

-- 
	Viktor.