Re: [TLS] Encrypting ALPN and other unused extensions

"Gero, Charlie" <cgero@akamai.com> Fri, 25 April 2014 18:21 UTC

Return-Path: <cgero@akamai.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 3918E1A06A5 for <tls@ietfa.amsl.com>; Fri, 25 Apr 2014 11:21:05 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.172
X-Spam-Level:
X-Spam-Status: No, score=-2.172 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, RP_MATCHES_RCVD=-0.272] 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 fhyx-ENwVm0w for <tls@ietfa.amsl.com>; Fri, 25 Apr 2014 11:21:01 -0700 (PDT)
Received: from prod-mail-xrelay08.akamai.com (prod-mail-xrelay08.akamai.com [96.6.114.112]) by ietfa.amsl.com (Postfix) with ESMTP id 1E2A91A0665 for <tls@ietf.org>; Fri, 25 Apr 2014 11:21:01 -0700 (PDT)
Received: from prod-mail-xrelay08.akamai.com (localhost.localdomain [127.0.0.1]) by postfix.imss70 (Postfix) with ESMTP id AAE834821E; Fri, 25 Apr 2014 18:20:54 +0000 (GMT)
Received: from prod-mail-relay04.akamai.com (prod-mail-relay04.akamai.com [172.27.8.27]) by prod-mail-xrelay08.akamai.com (Postfix) with ESMTP id 9E960481BD; Fri, 25 Apr 2014 18:20:54 +0000 (GMT)
Received: from usma1ex-cashub.kendall.corp.akamai.com (usma1ex-cashub4.kendall.corp.akamai.com [172.27.105.20]) by prod-mail-relay04.akamai.com (Postfix) with ESMTP id 35D8947C14; Fri, 25 Apr 2014 18:20:54 +0000 (GMT)
Received: from USMBX1.msg.corp.akamai.com ([172.27.107.26]) by USMA1EX-CASHUB4.kendall.corp.akamai.com ([172.27.105.20]) with mapi; Fri, 25 Apr 2014 14:20:42 -0400
From: "Gero, Charlie" <cgero@akamai.com>
To: "'mrex@sap.com'" <mrex@sap.com>, Michael D'Errico <mike-list@pobox.com>
Date: Fri, 25 Apr 2014 14:20:42 -0400
Thread-Topic: [TLS] Encrypting ALPN and other unused extensions
Thread-Index: Ac9grN2TA9DwgEGIQ7ej+ttogDJABwABR4ww
Message-ID: <D40A7DE25C5AA54195F82EA553F24460098E8321CB@USMBX1.msg.corp.akamai.com>
References: <535A8CED.7030805@pobox.com> <20140425173608.E1A2E1ACE0@ld9781.wdf.sap.corp>
In-Reply-To: <20140425173608.E1A2E1ACE0@ld9781.wdf.sap.corp>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: en-US
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Archived-At: http://mailarchive.ietf.org/arch/msg/tls/_vIRa4UQhZe_BrEenBJjZ8nJeNk
Cc: "tls@ietf.org" <tls@ietf.org>
Subject: Re: [TLS] Encrypting ALPN and other unused extensions
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: Fri, 25 Apr 2014 18:21:05 -0000

Why is there no need for the TLS stack to use this information?  If SNI is enabled, it can be what the server uses to select the certificate and possibly the cipher it chooses to use on servers where IP space is limited.  In your example, the dispatch server needs to use SNI (if not using distinguishable VIPs) in order to relay to the other machines.  Cipher selection and certificate presentation is part of TLS, and SNI can be used as a selector for both.  Additionally, Michael is correct in that ALPN could be used in the certificate selection process, but also in the cipher selection process.  If the argument is that the application is really the layer that is using this information to inform the TLS layer what to do next, then that is semantics and hard to argue.  But the intent is the same.  SNI and ALPN can be used to alter the path the rest of the handshake takes (and for many hosts, will be the case).

-----Original Message-----
From: Martin Rex [mailto:mrex@sap.com] 
Sent: Friday, April 25, 2014 1:36 PM
To: Michael D'Errico
Cc: tls@ietf.org
Subject: Re: [TLS] Encrypting ALPN and other unused extensions

Michael D'Errico wrote:
> Watson Ladd wrote:
> > 
> > Some extensions aren't used by the TLS layer, like ALPN.
> 
> ALPN is used by the TLS layer.  The requested protocol is one of 
> several inputs to a server's certificate selection algorithm, along 
> with the SNI.

I agree that the information is conveyed within the TLS protocol, so the TLS stack may need to be able to pass this information between TLS stack an application, but there is no need that the TLS stack uses this information for anything.

With TLS extension SNI, the server side TLS stack might even completely ignore the information, i.e. not implement it.

A Hosting provider could set up an SNI-aware load balancer and dispatch/NAT incoming TLS sessions in opaque fashion to individual TLS servers, and the individual server can just ignore the contents of TLS extension SNI (or may not even implement it), and virtual hosting would still work just fine.  There would be no server name confirmantion in ServerHello extensions, but that is a quite irrelevant part of TLS extension SNI.


-Martin

_______________________________________________
TLS mailing list
TLS@ietf.org
https://www.ietf.org/mailman/listinfo/tls