Re: [OAUTH-WG] more comments on draft-hammer-oauth-v2-mac-token-02 -- algorithm param

Eran Hammer-Lahav <eran@hueniverse.com> Thu, 07 April 2011 06:53 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 D70FA3A6814 for <oauth@core3.amsl.com>; Wed, 6 Apr 2011 23:53:06 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.649
X-Spam-Level:
X-Spam-Status: No, score=-2.649 tagged_above=-999 required=5 tests=[AWL=-0.050, BAYES_00=-2.599]
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 h3j0hipSydOi for <oauth@core3.amsl.com>; Wed, 6 Apr 2011 23:53:06 -0700 (PDT)
Received: from p3plex1out02.prod.phx3.secureserver.net (p3plex1out02.prod.phx3.secureserver.net [72.167.180.18]) by core3.amsl.com (Postfix) with SMTP id 30F6B3A67F3 for <oauth@ietf.org>; Wed, 6 Apr 2011 23:53:06 -0700 (PDT)
Received: (qmail 12160 invoked from network); 7 Apr 2011 06:54:50 -0000
Received: from unknown (HELO smtp.ex1.secureserver.net) (72.167.180.19) by p3plex1out02.prod.phx3.secureserver.net with SMTP; 7 Apr 2011 06:54:50 -0000
Received: from P3PW5EX1MB01.EX1.SECURESERVER.NET ([10.6.135.19]) by P3PW5EX1HT001.EX1.SECURESERVER.NET ([72.167.180.19]) with mapi; Wed, 6 Apr 2011 23:54:42 -0700
From: Eran Hammer-Lahav <eran@hueniverse.com>
To: "Manger, James H" <James.H.Manger@team.telstra.com>, "oauth@ietf.org" <oauth@ietf.org>
Date: Wed, 06 Apr 2011 23:54:34 -0700
Thread-Topic: more comments on draft-hammer-oauth-v2-mac-token-02 -- algorithm param
Thread-Index: AcuxSHVnmSRFc5caQL+nfm1VQbrgkQACjnbAA7aFd/ABAMSawAB0CinwC7wPgeA=
Message-ID: <90C41DD21FB7C64BB94121FBBC2E7234465664E163@P3PW5EX1MB01.EX1.SECURESERVER.NET>
References: <255B9BB34FB7D647A506DC292726F6E1127B45349E@WSMSG3153V.srv.dir.telstra.com> <255B9BB34FB7D647A506DC292726F6E1127D4581D7@WSMSG3153V.srv.dir.telstra.com> <90C41DD21FB7C64BB94121FBBC2E723445A8FB350E@P3PW5EX1MB01.EX1.SECURESERVER.NET> <255B9BB34FB7D647A506DC292726F6E1127D51DE36@WSMSG3153V.srv.dir.telstra.com>
In-Reply-To: <255B9BB34FB7D647A506DC292726F6E1127D51DE36@WSMSG3153V.srv.dir.telstra.com>
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
Subject: Re: [OAUTH-WG] more comments on draft-hammer-oauth-v2-mac-token-02 -- algorithm param
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: Thu, 07 Apr 2011 06:53:06 -0000

I do not want to allow the client any flexibility in choosing the algorithm once a MAC key has been issued. Every other standard provide a negotiation step in which the client can figure out which algorithms are available, and therefore needs to indicate which one was used. I don't want to support that because it leads to complexity. I am trying my best to keep this as focused and limited as possible.

EHL

> -----Original Message-----
> From: Manger, James H [mailto:James.H.Manger@team.telstra.com]
> Sent: Sunday, February 06, 2011 5:43 AM
> To: Eran Hammer-Lahav; oauth@ietf.org
> Subject: RE: more comments on draft-hammer-oauth-v2-mac-token-02 --
> algorithm param
> 
> Eran,
> 
> >> 13. The MAC algorithm should be explicitly indicated in the request,
> >> instead of being implied by the access-token/id. I suggest including an
> "algorithm"
> >> parameter in the "Authorization" request header. I also suggest
> >> including an "algorithms" parameter in the "WWW-Authenticate"
> >> response header that is a (comma-separated?) list of MAC algorithms that
> the server supports.
> 
> > Why? The client does not get a choice which algorithm to use. There is no
> negotiation here.
> 
> Pretty much every standardised crypto message indicates the algorithm used
> to protect it in the message itself. Why be different?
> 
> Consider hashing the body. You don't need the secret key to do this, but you
> do need to know the hash algorithm. With an algorithm parameter, a front-
> end web server can use that to confirm the body-hash parameter is correct
> before passing the message to a middle tier where the secret key is available
> to verify the MAC.
> 
> An algorithm parameter offers some ability to migrate to stronger MAC
> algorithms if, say, (more) weaknesses in SHA-1 are found. Without it you
> need to issue new credentials to migrate.
> 
> If you have a environment of heterogeneous servers (legacy, new, vendor A,
> vendor B...) they might support different algorithms, but it would handy if
> clients could use a single credential.
> 
> Secret keys are generally handled separately in software than support for
> crypto algorithms. For instance, you can store a secret key in a Java Key
> Store, but I don't think there is an associated spot to specify a MAC
> algorithm.
> 
> --
> James Manger