Re: [OAUTH-WG] Fwd: New Version Notification for draft-sakimura-oauth-tcse-02.txt

Phil Hunt <phil.hunt@oracle.com> Sat, 09 November 2013 20:32 UTC

Return-Path: <phil.hunt@oracle.com>
X-Original-To: oauth@ietfa.amsl.com
Delivered-To: oauth@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A849121E8096 for <oauth@ietfa.amsl.com>; Sat, 9 Nov 2013 12:32:23 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.56
X-Spam-Level:
X-Spam-Status: No, score=-5.56 tagged_above=-999 required=5 tests=[AWL=-0.358, BAYES_00=-2.599, HTML_MESSAGE=0.001, MIME_QP_LONG_LINE=1.396, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id OUhoV0gYPTXd for <oauth@ietfa.amsl.com>; Sat, 9 Nov 2013 12:32:18 -0800 (PST)
Received: from aserp1040.oracle.com (aserp1040.oracle.com [141.146.126.69]) by ietfa.amsl.com (Postfix) with ESMTP id 7AB8811E80F9 for <oauth@ietf.org>; Sat, 9 Nov 2013 12:32:18 -0800 (PST)
Received: from acsinet21.oracle.com (acsinet21.oracle.com [141.146.126.237]) by aserp1040.oracle.com (Sentrion-MTA-4.3.1/Sentrion-MTA-4.3.1) with ESMTP id rA9KWFkj002122 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Sat, 9 Nov 2013 20:32:16 GMT
Received: from aserz7021.oracle.com (aserz7021.oracle.com [141.146.126.230]) by acsinet21.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id rA9KWFtG024649 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sat, 9 Nov 2013 20:32:15 GMT
Received: from abhmp0010.oracle.com (abhmp0010.oracle.com [141.146.116.16]) by aserz7021.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id rA9KWFa3024646; Sat, 9 Nov 2013 20:32:15 GMT
Received: from [192.168.1.125] (/174.7.250.104) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Sat, 09 Nov 2013 12:32:14 -0800
References: <20131019101348.9565.3370.idtracker@ietfa.amsl.com> <CABzCy2Ai6W3XRLzXTGQB8vS40V6QTsoa6Q+7uq4zMftgnZkc7g@mail.gmail.com> <527E376C.2010205@lodderstedt.net> <001C64DB-2DD0-4740-8C9A-B7A0445F68CD@ve7jtb.com> <fcf385e3-9ab3-4f9e-8b5e-e729d0218699@email.android.com> <78E2CDE2-D49B-423E-AF13-097660FFB03F@ve7jtb.com> <AFF3FFE8-9C7A-448C-B3A4-A7F56D976B99@gmail.com> <AC6D6C2B-F2D4-4D28-9308-6863FA910564@lodderstedt.net>
Mime-Version: 1.0 (1.0)
In-Reply-To: <AC6D6C2B-F2D4-4D28-9308-6863FA910564@lodderstedt.net>
Content-Type: multipart/alternative; boundary="Apple-Mail-C2731F7E-67B4-4ADA-8FAD-5C793DE6C7B7"
Content-Transfer-Encoding: 7bit
Message-Id: <81C0B993-31B3-4591-8C91-9214AD90B26F@oracle.com>
X-Mailer: iPhone Mail (11B511)
From: Phil Hunt <phil.hunt@oracle.com>
Date: Sat, 09 Nov 2013 12:32:09 -0800
To: Torsten Lodderstedt <torsten@lodderstedt.net>
X-Source-IP: acsinet21.oracle.com [141.146.126.237]
Cc: oauth <oauth@ietf.org>
Subject: Re: [OAUTH-WG] Fwd: New Version Notification for draft-sakimura-oauth-tcse-02.txt
X-BeenThere: oauth@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: OAUTH WG <oauth.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/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: Sat, 09 Nov 2013 20:32:23 -0000

Sounds interesting. 

I wonder about why one might choose a public model with tcse vs stateless client reg?  

Eg. Tcse might be more important for transient clients. 

Phil

> On Nov 9, 2013, at 12:27, Torsten Lodderstedt <torsten@lodderstedt.net> wrote:
> 
> Hi,
> 
> thanks for the explanation. Seems there is the simpler option sufficient to solve the original problem but it's not secure enough to be a general solution. 
> 
> Regarding implementation: The simpler option requires the developer to create a value of reasonable randomness and the second additionally requires to calculate the SHA correctly. I'm afraid client developers will have trouble implementing it correctly. That's why the idea of OAuth always was to push complexity to the server implementation.
> 
> While thinking about your proposal, I remembered a potential alternative. We initially discussed usage of dynamically issued client id/secrets (dyn. client registration) in order to mitigate the threat. This has two advantages:
> - it utilizes general OAuth functionality
> - usage of client credentials is easy from a client developers perspective
> 
> This idea was originally rejected due to the potential implications on scalability. The assumption was, potentially billions of client instances could not be managed by the AS in a reasonable way. Based on the outcome of the latest discussions around dynamic registration, we now know how to implement registration in a stateless way using client secrets as self-contained tokens. So this should not be a scalability issue any longer.
> 
> Should we reconsider this alternative?
> 
> regards,
> Torsten.
> 
>> Am 09.11.2013 um 19:04 schrieb Nat Sakimura <sakimura@gmail.com>:
>> 
>> And adding to it, it is Google's application team that needs to be persuaded. As usual, persuading application people to use crypto is hard. We have to strike a point that is acceptable to them as well as being somewhat sensible security-wise. Having option to bump up the security is important as a future migration path as well, hence the current design. 
>> 
>> =nat via iPhone
>> 
>> Nov 10, 2013 1:42、John Bradley <ve7jtb@ve7jtb.com> のメッセージ:
>> 
>>> Simplicity for clients that don't need the extra security.   I happen to agree with you but it is Google that needs the convincing, as they have deployed the non crypto version.
>>> As with many things getting people to adopt it is the trick.
>>> 
>>> John B.
>>> 
>>>> On Nov 9, 2013, at 8:15 AM, Torsten Lodderstedt <torsten@lodderstedt.net> wrote:
>>>> 
>>>> Hi John,
>>>> 
>>>> why not make the more secure option the only one?
>>>> 
>>>> regards,
>>>> Torsten.
>>>> 
>>>> 
>>>> 
>>>> John Bradley <ve7jtb@ve7jtb.com> schrieb:
>>>>> 
>>>>> With a native app using a captive browser with no malware, only the response is susceptible to interception, making encrypting the request redundant.
>>>>> In other environments and with some user groups the request's challenge needs to be protected from interception.  This may be more the case in a desktop environment where there is less control over the browser.
>>>>> 
>>>>> I expect that we will come to two options one unprotected requests and one for protected requests.
>>>>> 
>>>>> To Phil's point this is not about identifying the class of software this is about matching a response to an instance of software.   
>>>>> A software statement gives you a hint about the class of software but not the instance without per client registration.
>>>>> 
>>>>> This method gives you the ability to securely return the token to only the instance of the client that requested it without the overhead of per instance dynamic registration.
>>>>> 
>>>>> This is a practical solution to a real problem people are having today, and versions of this are in production now.   
>>>>> 
>>>>> Nat and I are trying to document it so that there can be interoperability rather than every AS doing something different.
>>>>> 
>>>>> John B.
>>>>> 
>>>>>> On Nov 9, 2013, at 5:23 AM, Torsten Lodderstedt <torsten@lodderstedt.net> wrote:
>>>>>> 
>>>>>> Hi Nat,
>>>>>> 
>>>>>> what's the rationale for having different algorithms to produce a code challenges? As this may cause interop issues there should be good reasons to introduce variants.
>>>>>> 
>>>>>> regards,
>>>>>> Torsten.
>>>>>> 
>>>>>> 
>>>>>> Am 19.10.2013 12:15, schrieb Nat Sakimura:
>>>>>>> Incorporated the discussion at Berlin meeting and after in the ML. 
>>>>>>> 
>>>>>>> Best, 
>>>>>>> 
>>>>>>> Nat
>>>>>>> 
>>>>>>> ---------- Forwarded message ----------
>>>>>>> From: <internet-drafts@ietf.org>
>>>>>>> Date: 2013/10/19
>>>>>>> Subject: New Version Notification for draft-sakimura-oauth-tcse-02.txt
>>>>>>> To: Nat Sakimura <sakimura@gmail.com>, John Bradley <jbradley@pingidentity.com>, Naveen Agarwal <naa@google.com>
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> A new version of I-D, draft-sakimura-oauth-tcse-02.txt
>>>>>>> has been successfully submitted by Nat Sakimura and posted to the
>>>>>>> IETF repository.
>>>>>>> 
>>>>>>> Filename:        draft-sakimura-oauth-tcse
>>>>>>> Revision:        02
>>>>>>> Title:           OAuth Symmetric Proof of Posession for Code Extension
>>>>>>> Creation date:   2013-10-19
>>>>>>> Group:           Individual Submission
>>>>>>> Number of pages: 8
>>>>>>> URL:             http://www.ietf.org/internet-drafts/draft-sakimura-oauth-tcse-02.txt
>>>>>>> Status:          http://datatracker.ietf.org/doc/draft-sakimura-oauth-tcse
>>>>>>> Htmlized:        http://tools.ietf.org/html/draft-sakimura-oauth-tcse-02
>>>>>>> Diff:            http://www.ietf.org/rfcdiff?url2=draft-sakimura-oauth-tcse-02
>>>>>>> 
>>>>>>> Abstract:
>>>>>>>    The OAuth 2.0 public client utilizing authorization code grant is
>>>>>>>    susceptible to the code interception attack.  This specification
>>>>>>>    describe a mechanism that acts as a control against this threat.
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> Please note that it may take a couple of minutes from the time of submission
>>>>>>> until the htmlized version and diff are available at tools.ietf.org.
>>>>>>> 
>>>>>>> The IETF Secretariat
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> -- 
>>>>>>> Nat Sakimura (=nat)
>>>>>>> Chairman, OpenID Foundation
>>>>>>> http://nat.sakimura.org/
>>>>>>> @_nat_en
>>>>>>> 
>>>>>>> 
>>>>>>> _______________________________________________
>>>>>>> OAuth mailing list
>>>>>>> OAuth@ietf.org
>>>>>>> https://www.ietf.org/mailman/listinfo/oauth
>>>>>> 
>>>>>> _______________________________________________
>>>>>> OAuth mailing list
>>>>>> OAuth@ietf.org
>>>>>> https://www.ietf.org/mailman/listinfo/oauth
> _______________________________________________
> OAuth mailing list
> OAuth@ietf.org
> https://www.ietf.org/mailman/listinfo/oauth