Re: [TLS] Fwd: Clarification on interleaving app data and handshake records

mrex@sap.com (Martin Rex) Thu, 15 October 2015 13:00 UTC

Return-Path: <mrex@sap.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 B08A01B316E for <tls@ietfa.amsl.com>; Thu, 15 Oct 2015 06:00:49 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.551
X-Spam-Level:
X-Spam-Status: No, score=-6.551 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HELO_EQ_DE=0.35, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001] 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 qGIUR0n2jTIv for <tls@ietfa.amsl.com>; Thu, 15 Oct 2015 06:00:43 -0700 (PDT)
Received: from smtpde02.smtp.sap-ag.de (smtpde02.smtp.sap-ag.de [155.56.68.140]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id EBF021B3161 for <tls@ietf.org>; Thu, 15 Oct 2015 06:00:42 -0700 (PDT)
Received: from mail05.wdf.sap.corp (mail05.sap.corp [194.39.131.55]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtpde02.smtp.sap-ag.de (Postfix) with ESMTPS id BB08D44962; Thu, 15 Oct 2015 15:00:40 +0200 (CEST)
X-purgate-ID: 152705::1444914040-00001EB9-7FB97F96/0/0
X-purgate-size: 1750
X-purgate: clean
X-purgate: This mail is considered clean (visit http://www.eleven.de for further information)
X-purgate-Ad: Categorized by eleven eXpurgate (R) http://www.eleven.de
X-purgate-type: clean
X-SAP-SPAM-Status: clean
Received: from ld9781.wdf.sap.corp (ld9781.wdf.sap.corp [10.21.82.193]) by mail05.wdf.sap.corp (Postfix) with ESMTP id AC5AF40531; Thu, 15 Oct 2015 15:00:40 +0200 (CEST)
Received: by ld9781.wdf.sap.corp (Postfix, from userid 10159) id 9F1BB1A2EF; Thu, 15 Oct 2015 15:00:40 +0200 (CEST)
In-Reply-To: <561F653B.2010802@baggins.org>
To: Matt Caswell <frodo@baggins.org>
Date: Thu, 15 Oct 2015 15:00:40 +0200
X-Mailer: ELM [version 2.4ME+ PL125 (25)]
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="US-ASCII"
Message-Id: <20151015130040.9F1BB1A2EF@ld9781.wdf.sap.corp>
From: mrex@sap.com
Archived-At: <http://mailarchive.ietf.org/arch/msg/tls/JX5hYmVFVDVHCdB2Iou93LZ3zwU>
Cc: "tls@ietf.org" <tls@ietf.org>
Subject: Re: [TLS] Fwd: Clarification on interleaving app data and handshake records
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
Reply-To: mrex@sap.com
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: Thu, 15 Oct 2015 13:00:49 -0000

Is the particular interop problem that you want to address
caused by a necessity to really process application data and
handshake data with arbitrary interleave,

or is it rather a problem of getting back into half-duplex operation,
i.e. a client being able to continue receiving application data
up to a ServerHello when it has sent out ClientHello, or a server being
able to continue receiving application data up to a ClientHello
(or warning level no-renegotiation alert) after the server has sent
a ClientHelloRequest?

-Martin

 Matt Caswell wrote:
> 
>>> 1) Allow interleaved data everywhere except between CCS and Finished, as
>>> per the (hopelessly unclear) RFC. This would leave us conformant, would
>>> solve our interoperability problems, but is a "highly dangerous idea"
>>> according to your advice.
>>>
>>> or
>>>
>>> 2) Leave things as they are now where we abort on interleaved
>>> application data. This would leave us unconformant and with an
>>> interoperability problem which is causing real issues for users (who
>>> will point the finger at us for failing to fix it).
>> 
>> It takes two sides here to have an interop problem. What
>> implementations are doing this?
> 
> The specific report I have is for Oracle JRE 1.7.0_71 and 1.7.0_75 but
> my assumption is that this affects all Oracle JRE versions.
> 
> The problem ticket in question describes a scenario where a PostgreSQL
> server (which uses OpenSSL) is talking to a PostgreSQL JDBC client. Due
> to that fact that these connections are long running, PostgreSQL server
> has a config parameter "ssl_renegotiation_limit" which triggers a
> renegotiation after a certain amount of data has been transferred over
> the connection.