Re: [OAUTH-WG] draft-hammer-oauth-v2-mac-token-02

Eran Hammer-Lahav <eran@hueniverse.com> Tue, 08 February 2011 08:21 UTC

Return-Path: <eran@hueniverse.com>
X-Original-To: oauth@core3.amsl.com
Delivered-To: oauth@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 591303A6CB7 for <oauth@core3.amsl.com>; Tue, 8 Feb 2011 00:21:05 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.299
X-Spam-Level:
X-Spam-Status: No, score=-2.299 tagged_above=-999 required=5 tests=[AWL=-0.300, BAYES_00=-2.599, J_CHICKENPOX_84=0.6]
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 lM34hbjWjTZo for <oauth@core3.amsl.com>; Tue, 8 Feb 2011 00:21:02 -0800 (PST)
Received: from p3plex1out01.prod.phx3.secureserver.net (p3plex1out01.prod.phx3.secureserver.net [72.167.180.17]) by core3.amsl.com (Postfix) with SMTP id 70A593A6CB4 for <oauth@ietf.org>; Tue, 8 Feb 2011 00:21:02 -0800 (PST)
Received: (qmail 6083 invoked from network); 8 Feb 2011 08:21:08 -0000
Received: from unknown (HELO smtp.ex1.secureserver.net) (72.167.180.19) by p3plex1out01.prod.phx3.secureserver.net with SMTP; 8 Feb 2011 08:21:06 -0000
Received: from P3PW5EX1MB01.EX1.SECURESERVER.NET ([10.6.135.19]) by P3PW5EX1HT001.EX1.SECURESERVER.NET ([72.167.180.19]) with mapi; Tue, 8 Feb 2011 01:20:55 -0700
From: Eran Hammer-Lahav <eran@hueniverse.com>
To: Skylar Woodward <skylar@kiva.org>
Date: Tue, 08 Feb 2011 01:20:41 -0700
Thread-Topic: [OAUTH-WG] draft-hammer-oauth-v2-mac-token-02
Thread-Index: AcvHY9racjEC58uqQPuLeBSpsdjjCgABRuhQ
Message-ID: <90C41DD21FB7C64BB94121FBBC2E723445A90BFDE6@P3PW5EX1MB01.EX1.SECURESERVER.NET>
References: <90C41DD21FB7C64BB94121FBBC2E723445A8D61EBF@P3PW5EX1MB01.EX1.SECURESERVER.NET> <5A4C1B6B-7D51-4D12-A468-5A5991D72DCB@kiva.org> <90C41DD21FB7C64BB94121FBBC2E723445A90BFC42@P3PW5EX1MB01.EX1.SECURESERVER.NET> <2EFA9E76-1E3B-411A-852F-5640167A9AA4@kiva.org>
In-Reply-To: <2EFA9E76-1E3B-411A-852F-5640167A9AA4@kiva.org>
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
Cc: OAuth WG <oauth@ietf.org>
Subject: Re: [OAUTH-WG] draft-hammer-oauth-v2-mac-token-02
X-BeenThere: oauth@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: OAUTH WG <oauth.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/oauth>, <mailto:oauth-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/oauth>
List-Post: <mailto:oauth@ietf.org>
List-Help: <mailto:oauth-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/oauth>, <mailto:oauth-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 08 Feb 2011 08:21:05 -0000

There is no way I'm going to allow not signing the request URI and any query parameters. That leaves just the body...

EHL

> -----Original Message-----
> From: Skylar Woodward [mailto:skylar@kiva.org]
> Sent: Monday, February 07, 2011 11:43 PM
> To: Eran Hammer-Lahav
> Cc: OAuth WG
> Subject: Re: [OAUTH-WG] draft-hammer-oauth-v2-mac-token-02
> 
> Here's a thought:
> 
> 	signed_content="request,query,body"
> 
> If not included, it defaults to "request,query". It's non-breaking (except for
> the implied removal of bodyhash), allows for either body or query content to
> be omitted from the signature, and looks less ugly than bodyhash=true.  If
> you prefer, the value of this attribute could be one of a predefined string
> (request_query, request_query_body, request, etc.) rather than individual
> parsed elements.
> 
> On Feb 7, 2011, at 6:26 PM, Eran Hammer-Lahav wrote:
> 
> > Yeah...
> >
> > I struggled with that. There is no reason to include the body hash with the
> request other than to indicate a body hash is included in the normalized
> request string. It's just that an attribute like 'bodyhash=true' is so ugly...
> >
> > I'm still thinking about this.
> >
> > EHL
> >
> >> -----Original Message-----
> >> From: Skylar Woodward [mailto:skylar@kiva.org]
> >> Sent: Monday, February 07, 2011 9:25 AM
> >> To: Eran Hammer-Lahav; OAuth WG
> >> Subject: Re: [OAUTH-WG] draft-hammer-oauth-v2-mac-token-02
> >>
> >> On body-hash...
> >>
> >> Having completed a trial implementation, it seems redundant, and
> >> potentially problematic, to include the body-hash in the
> >> Authentication header. The danger is that implementors may neglect to
> >> recalculate the hash themselves, reusing the value (even if
> >> incorrect) provided by the client. Why not just require the provider
> >> to calculate this and validate it by comparing the final signature?
> >> This way it's clearer for everyone what the expectations are in validating
> the signature.
> >>
> >> I propose either a flag (eg, usebodyhash="1") or an algorithm
> >> (bodyhashalgorithm="sha1"). If this parameter was provided, the
> >> correct hash would be added to the base string for signing. If
> >> omitted (or set false?) then an empty string is used for base string
> element #4.
> >>
> >>
> >> On including parameters for signing...
> >>
> >> I'd retract my suggestion that we'd include parameter-hash in the header.
> >> Instead, I would suggest making parameters optional in calculating
> >> the signature using a flag as with bodyhash. Providers could require
> >> including parameters if so desired. Parameters could be included as
> >> currently defined, or with a hash method similar to entity-body
> >> (which I find both simpler and more congruent).
> >>
> >> Again, the goal in making query parameters optional is to allow
> >> providers to make signature calculation as simple as possible for
> >> clients (so much as it is in line with the security requirements of
> >> the provider) and avoid complexities in implementation such as those that
> tripped up OAuth 1.
> >>
> >>
> >>
> >> On Jan 22, 2011, at 2:09 AM, Eran Hammer-Lahav wrote:
> >>
> >>> http://tools.ietf.org/html/draft-hammer-oauth-v2-mac-token-02
> >>>
> >>> New version includes the following changes:
> >>>
> >>>   o  Added body-hash support.
> >>>   o  Updated OAuth 2.0 reference to -12 and added token type
> >>> registration
> >> template.
> >>>   o  Removed error and error URI attributes (codes were just a
> >>> duplication
> >> of the HTTP status codes).
> >>>
> >>> Feedback would be greatly appreciated.
> >>>
> >>> EHL
> >>>
> >>>
> >>> _______________________________________________
> >>> OAuth mailing list
> >>> OAuth@ietf.org
> >>> https://www.ietf.org/mailman/listinfo/oauth
> >