Re: [sasl] Mechanism Negotiation and Channel Binding with SCRAM
Nicolas Williams <Nicolas.Williams@sun.com> Wed, 03 March 2010 17:29 UTC
Return-Path: <Nicolas.Williams@sun.com>
X-Original-To: sasl@core3.amsl.com
Delivered-To: sasl@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 30E7028C14A for <sasl@core3.amsl.com>; Wed, 3 Mar 2010 09:29:06 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.046
X-Spam-Level:
X-Spam-Status: No, score=-6.046 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, HELO_MISMATCH_COM=0.553, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id cyOQA7X7abg9 for <sasl@core3.amsl.com>; Wed, 3 Mar 2010 09:29:05 -0800 (PST)
Received: from brmea-mail-1.sun.com (brmea-mail-1.Sun.COM [192.18.98.31]) by core3.amsl.com (Postfix) with ESMTP id 32DB53A87DF for <sasl@ietf.org>; Wed, 3 Mar 2010 09:29:05 -0800 (PST)
Received: from dm-central-02.central.sun.com ([129.147.62.5]) by brmea-mail-1.sun.com (8.13.6+Sun/8.12.9) with ESMTP id o23HT6IK011496 for <sasl@ietf.org>; Wed, 3 Mar 2010 17:29:06 GMT
Received: from binky.Central.Sun.COM (binky.Central.Sun.COM [129.153.128.104]) by dm-central-02.central.sun.com (8.13.8+Sun/8.13.8/ENSMAIL, v2.2) with ESMTP id o23HT6cs045081 for <sasl@ietf.org>; Wed, 3 Mar 2010 10:29:06 -0700 (MST)
Received: from binky.Central.Sun.COM (localhost [127.0.0.1]) by binky.Central.Sun.COM (8.14.3+Sun/8.14.3) with ESMTP id o23HLaiO013835; Wed, 3 Mar 2010 11:21:36 -0600 (CST)
Received: (from nw141292@localhost) by binky.Central.Sun.COM (8.14.3+Sun/8.14.3/Submit) id o23HLaqx013834; Wed, 3 Mar 2010 11:21:36 -0600 (CST)
X-Authentication-Warning: binky.Central.Sun.COM: nw141292 set sender to Nicolas.Williams@sun.com using -f
Date: Wed, 03 Mar 2010 11:21:36 -0600
From: Nicolas Williams <Nicolas.Williams@sun.com>
To: Simon Josefsson <simon@josefsson.org>
Message-ID: <20100303172135.GB1061@Sun.COM>
References: <87k4tww57r.fsf@mocca.josefsson.org> <20100301173017.GF1061@Sun.COM> <87k4tvk7ew.fsf@mocca.josefsson.org> <20100301224424.GN1061@Sun.COM> <87d3znr62u.fsf@mocca.josefsson.org> <20100301231900.GO1061@Sun.COM> <87fx4jng8y.fsf@mocca.josefsson.org> <4B8D043E.6070804@isode.com> <20100302193722.GT1061@Sun.COM> <874okxfick.fsf@mocca.josefsson.org>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <874okxfick.fsf@mocca.josefsson.org>
User-Agent: Mutt/1.5.7i
Cc: Alexey Melnikov <alexey.melnikov@isode.com>, sasl@ietf.org
Subject: Re: [sasl] Mechanism Negotiation and Channel Binding with SCRAM
X-BeenThere: sasl@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: SASL Working Group <sasl.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/sasl>, <mailto:sasl-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/sasl>
List-Post: <mailto:sasl@ietf.org>
List-Help: <mailto:sasl-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sasl>, <mailto:sasl-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 03 Mar 2010 17:29:06 -0000
On Wed, Mar 03, 2010 at 06:03:23PM +0100, Simon Josefsson wrote: > Nicolas Williams <Nicolas.Williams@sun.com> writes: > > > On Tue, Mar 02, 2010 at 12:27:42PM +0000, Alexey Melnikov wrote: > >> I can be easily confused by declarative language, so I would prefer c). > >> But I can live with b). > > > > Ok. For GS2 then I propose the following changes (if you agree I'll > > make the same changes for SCRAM and post them): > > > > - o If the client negotiates mechanisms, then clients MUST select the > > - PLUS-variant if offered by the server. Otherwise (the client does > > - not negotiate mechanisms), if the client has no prior knowledge > > - about mechanisms supported by the server and wasn't explicitly > > - configured to use a particular variant of the GS2 mechanism, then > > - it MUST select only non-PLUS version of the GS2 mechanism. > > + o Clients that support mechanism negotiation and channel binding > > + MUST use a "p" gs2-cb-flag when the server offers the PLUS-variant > > + of the desired GS2 mechanism. > > Fine. > > > + o Clients that do not support mechanism negotiation but do support > > + channel binding MUST use a "p" gs2-cb-flag and SHOULD use the non- > > + PLUS variant of the desired GS2 mechanism. > > This is an unrelated change, and I don't like it -- why should, for > example, clients that _requires_ channel bindings have to select the > non-PLUS name? > > This change actually _introduce_ the same kind of problem that we wanted > to fix! Now the problem is the reverse -- with the above text, clients > that ONLY support channel binding-enabled GS2/SCRAM will need logic to > deal with the non-PLUS name. This is the reverse problem as Tobias > noticed: clients that DO NOT support channel bindings shouldn't have to > worry about the PLUS name. OK. > > o If the client does not support channel binding, then it MUST use a > > "n" gs2-cb-flag. > > > > o If the client supports channel binding and the server does not > > appear to (i.e., the client did not see the -PLUS name), then the > > - client MUST either fail authentication or it MUST chose the non- > > - PLUS mechanism name and use a "y" gs2-cb-flag. > > + client SHOULD either fail authentication immediately or choose > > + the non-PLUS mechanism name and use a "y" gs2-cb-flag. > > Why SHOULD here? Because the client could also continue and use a "p" gs2-cb-flag. Ah! What we must say is that the client MUST NOT use a "n" gs2-cb-flag -- the other options are all equally reasonable. Nico --
- [sasl] Mechanism Negotiation and Channel Binding … Tobias Markmann
- Re: [sasl] Mechanism Negotiation and Channel Bind… Simon Josefsson
- Re: [sasl] Mechanism Negotiation and Channel Bind… Nicolas Williams
- Re: [sasl] Mechanism Negotiation and Channel Bind… Simon Josefsson
- Re: [sasl] Mechanism Negotiation and Channel Bind… Nicolas Williams
- Re: [sasl] Mechanism Negotiation and Channel Bind… Simon Josefsson
- Re: [sasl] Mechanism Negotiation and Channel Bind… Nicolas Williams
- Re: [sasl] Mechanism Negotiation and Channel Bind… Jeffrey Hutzelman
- Re: [sasl] Mechanism Negotiation and Channel Bind… Paul Aurich
- Re: [sasl] Mechanism Negotiation and Channel Bind… Paul Aurich
- Re: [sasl] Mechanism Negotiation and Channel Bind… Paul Aurich
- Re: [sasl] Mechanism Negotiation and Channel Bind… Simon Josefsson
- Re: [sasl] Mechanism Negotiation and Channel Bind… Alexey Melnikov
- Re: [sasl] Mechanism Negotiation and Channel Bind… Nicolas Williams
- Re: [sasl] Mechanism Negotiation and Channel Bind… Alexey Melnikov
- Re: [sasl] Mechanism Negotiation and Channel Bind… Simon Josefsson
- Re: [sasl] Mechanism Negotiation and Channel Bind… Alexey Melnikov
- Re: [sasl] Mechanism Negotiation and Channel Bind… Simon Josefsson
- Re: [sasl] Mechanism Negotiation and Channel Bind… Alexey Melnikov
- Re: [sasl] Mechanism Negotiation and Channel Bind… Nicolas Williams