Re: [OAUTH-WG] why are we signing?

Eran Hammer-Lahav <eran@hueniverse.com> Mon, 09 November 2009 08:25 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 AD0E13A67A4 for <oauth@core3.amsl.com>; Mon, 9 Nov 2009 00:25:47 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.546
X-Spam-Level:
X-Spam-Status: No, score=-2.546 tagged_above=-999 required=5 tests=[AWL=0.052, BAYES_00=-2.599, HTML_MESSAGE=0.001]
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 vCNT8adh2mA8 for <oauth@core3.amsl.com>; Mon, 9 Nov 2009 00:25:42 -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 053523A6B03 for <oauth@ietf.org>; Mon, 9 Nov 2009 00:25:41 -0800 (PST)
Received: (qmail 14501 invoked from network); 9 Nov 2009 08:26:07 -0000
Received: from unknown (HELO smtp.ex1.secureserver.net) (72.167.180.19) by p3plex1out01.prod.phx3.secureserver.net with SMTP; 9 Nov 2009 08:26:07 -0000
Received: from P3PW5EX1MB01.EX1.SECURESERVER.NET ([10.6.135.19]) by P3PW5EX1HT001.EX1.SECURESERVER.NET ([72.167.180.19]) with mapi; Mon, 9 Nov 2009 01:26:06 -0700
From: Eran Hammer-Lahav <eran@hueniverse.com>
To: "oauth@ietf.org" <oauth@ietf.org>
Date: Mon, 09 Nov 2009 01:26:09 -0700
Thread-Topic: [OAUTH-WG] why are we signing?
Thread-Index: AcphEqlzuPYWbFWtQZap0lwl/eLPUQAA5vmg
Message-ID: <90C41DD21FB7C64BB94121FBBC2E72343785078716@P3PW5EX1MB01.EX1.SECURESERVER.NET>
References: <daf5b9570911082102u215dcf22gf0aeb2f3578e5ea0@mail.gmail.com> <90C41DD21FB7C64BB94121FBBC2E72343785078711@P3PW5EX1MB01.EX1.SECURESERVER.NET> <1bc4603e0911090000i6872f482pf1d003442aadd6be@mail.gmail.com>
In-Reply-To: <1bc4603e0911090000i6872f482pf1d003442aadd6be@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: en-US
Content-Type: multipart/alternative; boundary="_000_90C41DD21FB7C64BB94121FBBC2E72343785078716P3PW5EX1MB01E_"
MIME-Version: 1.0
Subject: Re: [OAUTH-WG] why are we signing?
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: Mon, 09 Nov 2009 08:25:47 -0000

We are not likely to provide less security than currently offered by the 1.0a specification (on the authentication side). While I welcome this discussion, my focus is to enable the two edge cases: "full" security (as currently offered by the OAuth HMAC method) and "transport layer" security (as currently offered by the PLAINTEXT method). I am confident that we can significantly simplify the HMAC-based solution. It is already much simpler in my working draft (which I will focus on next, right after my batch of discovery specs is out this week).

EHL


From: Chris Messina [mailto:chris.messina@gmail.com]
Sent: Monday, November 09, 2009 12:00 AM
To: Eran Hammer-Lahav
Cc: Brian Eaton; oauth@ietf.org
Subject: Re: [OAUTH-WG] why are we signing?

Indeed, in the beginning of OAuth, that was one of the primary drivers that lead us to the decision to sign everything - because of the non-SSL case...

While it's possibly increasingly common to expect that serious developers will go and buy an SSL cert, that may not be the case for the wider array of hobbyist types. Now, that's not to say that they are the only audience that needs to be addressed, but the idea was to make it harder for them to screw up if they leaked their API calls... Clearly it turned out that the signing bit intended to prevent against such attacks itself was too hard to implement, and so now we're having these conversations again.

At least now we have more data about what the market will bear now.

Anyway, that's my recollection. But it might also not be exactly the explanation for what you're looking for.

Chris
On Sun, Nov 8, 2009 at 11:48 PM, Eran Hammer-Lahav <eran@hueniverse.com<mailto:eran@hueniverse.com>> wrote:
The problem is, we are not likely to ever reach consensus on 'reasonable security'.

For example, I don't find most cookie-based session systems reasonably secure without SSL/TLS. Being able to sit at a coffee shop with free wifi and a laptop and steal sessions cookies, then access people's email for the duration the cookie is valid isn't reasonable or secure.

If you would like to try this approach, I would suggest adding next to each option the list of common attacks still possible under those terms. It will allow us to evaluate the added security each level of complexity brings.

EHL

> -----Original Message-----
> From: oauth-bounces@ietf.org<mailto:oauth-bounces@ietf.org> [mailto:oauth-bounces@ietf.org<mailto:oauth-bounces@ietf.org>] On Behalf
> Of Brian Eaton
> Sent: Sunday, November 08, 2009 9:03 PM
> To: oauth@ietf.org<mailto:oauth@ietf.org>
> Subject: [OAUTH-WG] why are we signing?
>
> Hey folks -
>
> What are the use cases for cryptography in OAuth?  Why are we signing
> requests?  And how much of each request do we need to sign in order to
> be useful?
>
> As I see it, we have roughly the following menu of choices:
>
> 1) No signatures.
>     Just use bearer tokens.  Use transport layer encryption to keep
> those bearer tokens from leaking.
>
> 2) Signed tokens.
>     We could just sign a timestamp, rather than entire messages.
>
> 3) Partially signed messages.
>     We could sign just the request URL, or the request URL plus some
> parameters.
>
> 4) Fully signed messages.
>      Sign as much of the HTTP request as possible, down to the bits of
> the HTTP entity body.
>
> My guess is we need at least two out of those four choices (one with
> bearer tokens, a la OAuth 1.0 plaintext) and another with
> cryptography.  But I'm not sure whether we need to sign entire
> messages, or if we can get away with something simpler and still have
> reasonable security.
>
> Cheers,
> Brian
> _______________________________________________
> OAuth mailing list
> OAuth@ietf.org<mailto:OAuth@ietf.org>
> https://www.ietf.org/mailman/listinfo/oauth
_______________________________________________
OAuth mailing list
OAuth@ietf.org<mailto:OAuth@ietf.org>
https://www.ietf.org/mailman/listinfo/oauth



--
Chris Messina
Open Web Advocate

Personal: http://factoryjoe.com
Follow me on Twitter: http://twitter.com/chrismessina

Citizen Agency: http://citizenagency.com
Diso Project: http://diso-project.org
OpenID Foundation: http://openid.net

This email is:   [ ] shareable    [X] ask first   [ ] private