Re: [CHANNEL-BINDING] Re: draft-ietf-sasl-gs2 AD review comments

Nicolas Williams <Nicolas.Williams@sun.com> Wed, 10 October 2007 15:39 UTC

Return-path: <channel-binding-bounces@ietf.org>
Received: from [127.0.0.1] (helo=stiedprmman1.va.neustar.com) by megatron.ietf.org with esmtp (Exim 4.43) id 1Ifdey-0000HN-FQ; Wed, 10 Oct 2007 11:39:44 -0400
Received: from [10.91.34.44] (helo=ietf-mx.ietf.org) by megatron.ietf.org with esmtp (Exim 4.43) id 1Ifdex-0000HH-I1 for channel-binding@ietf.org; Wed, 10 Oct 2007 11:39:43 -0400
Received: from brmea-mail-1.sun.com ([192.18.98.31]) by ietf-mx.ietf.org with esmtp (Exim 4.43) id 1Ifdew-00060S-Ad for channel-binding@ietf.org; Wed, 10 Oct 2007 11:39:43 -0400
Received: from centralmail2brm.Central.Sun.COM ([129.147.62.14]) by brmea-mail-1.sun.com (8.13.6+Sun/8.12.9) with ESMTP id l9AFdNjh000035 for <channel-binding@ietf.org>; Wed, 10 Oct 2007 15:39:23 GMT
Received: from binky.Central.Sun.COM (binky.Central.Sun.COM [129.153.128.104]) by centralmail2brm.Central.Sun.COM (8.13.6+Sun/8.13.6/ENSMAIL, v2.2) with ESMTP id l9AFdNTK000449 for <channel-binding@ietf.org>; Wed, 10 Oct 2007 09:39:23 -0600 (MDT)
Received: from binky.Central.Sun.COM (localhost [127.0.0.1]) by binky.Central.Sun.COM (8.14.1+Sun/8.14.1) with ESMTP id l9AFdJRK025958; Wed, 10 Oct 2007 10:39:19 -0500 (CDT)
Received: (from nw141292@localhost) by binky.Central.Sun.COM (8.14.1+Sun/8.14.1/Submit) id l9AFdJq6025957; Wed, 10 Oct 2007 10:39:19 -0500 (CDT)
X-Authentication-Warning: binky.Central.Sun.COM: nw141292 set sender to Nicolas.Williams@sun.com using -f
Date: Wed, 10 Oct 2007 10:39:18 -0500
From: Nicolas Williams <Nicolas.Williams@sun.com>
To: Jeffrey Hutzelman <jhutz@cmu.edu>
Subject: Re: [CHANNEL-BINDING] Re: draft-ietf-sasl-gs2 AD review comments
Message-ID: <20071010153918.GX24532@Sun.COM>
Mail-Followup-To: Jeffrey Hutzelman <jhutz@cmu.edu>, ietf-sasl@imc.org, channel-binding@ietf.org, Sam Hartman <hartmans-ietf@mit.edu>
References: <20071010143650.GT24532@Sun.COM> <Pine.LNX.4.33L.0710101106010.5381-100000@minbar.fac.cs.cmu.edu>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <Pine.LNX.4.33L.0710101106010.5381-100000@minbar.fac.cs.cmu.edu>
User-Agent: Mutt/1.5.7i
X-Spam-Score: -1.0 (-)
X-Scan-Signature: 82c9bddb247d9ba4471160a9a865a5f3
Cc: Sam Hartman <hartmans-ietf@mit.edu>, channel-binding@ietf.org, ietf-sasl@imc.org
X-BeenThere: channel-binding@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: Discussion of channel binding IANA registry requests and specifications <channel-binding.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/channel-binding>, <mailto:channel-binding-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/channel-binding>
List-Post: <mailto:channel-binding@ietf.org>
List-Help: <mailto:channel-binding-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/channel-binding>, <mailto:channel-binding-request@ietf.org?subject=subscribe>
Errors-To: channel-binding-bounces@ietf.org

On Wed, Oct 10, 2007 at 11:16:00AM -0400, Jeffrey Hutzelman wrote:
> On Wed, 10 Oct 2007, Nicolas Williams wrote:
> 
> > The more I think about the who's-responsible-for-prefixing issue the
> > more I realize that the I-D shouldn't speak to that issue.  I could see
> > an operating system where all channels report channel bindings with the
> > prefix already included, another where only some do, and another where
> > none do -- but in all cases the applications can deal and interop
> > provided that the applications know which channels include the prefix
> > when and which don't.
> 
> Again, I don't care what the operating system or the library does.  Of
> course the document should not speak to that; focusing on API issues
> rather than protocol issues misses the point, which is that independent
> implementations be able to interoperate.

Part of the point of the e-mail to which you're replying was to take the
focus off APIs.

> What I _do_ care about is that it's clear in every case what the bits are
> supposed to look like on the wire and what the application protocol
> specification is responsible for doing.  If the application protocol is
> supposed to provide a single slot which will contain the prefix followed
> by the channel binding data, then say so, and specify exactly how they are
> combined.  If the application protocol is responsible for separately
> transporting the prefix and channel binding data, then say _that_, and
> make it clear that you need integrity protection for both.

Please re-read the bits you didn't quote.  I believe there's a guarantee
of non-ambiguity.

> Otherwise you're going to get into a situation where the base document
> expects the app to transport the two elements separately, but the author
> of an application protocol thinks he only gets one blob which contains
> both, and then you have a mess because implementors don't know what to do
> with the prefix (ignore it?  prepend it to the data?  how?) and either
> nothing interoperates or you end up with an application protocol that you
> can't implement correctly without making undocumented assumptions.
> 
> 
> 
> 
> 
> BTW, an environment in which some channels report data without a prefix,
> others report it with the prefix followed by ':', and still others report
> it with the prefix followed by NUL is about the worst thing I can think
> of.  Anyone actually designing an API for this should define a consistent
> way of doing it.

I wrote nothing about the separator being variable or the prefix being
optional.  The text about operating systems was to illustrate that we
need not say who is responsible, API-wise, for adding the prefix, as
long as it is added.  Please re-read carefully.

Nico
-- 

_______________________________________________
CHANNEL-BINDING mailing list
CHANNEL-BINDING@ietf.org
https://www1.ietf.org/mailman/listinfo/channel-binding