Re: [OAUTH-WG] Question lengths in draft-sakimura-oauth-tcse-03

Anil Saldhana <Anil.Saldhana@redhat.com> Tue, 20 May 2014 13:57 UTC

Return-Path: <Anil.Saldhana@redhat.com>
X-Original-To: oauth@ietfa.amsl.com
Delivered-To: oauth@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 400011A0449 for <oauth@ietfa.amsl.com>; Tue, 20 May 2014 06:57:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.552
X-Spam-Level:
X-Spam-Status: No, score=-7.552 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-0.651, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id aSEtRs8qmEGm for <oauth@ietfa.amsl.com>; Tue, 20 May 2014 06:57:15 -0700 (PDT)
Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by ietfa.amsl.com (Postfix) with ESMTP id 1774A1A0336 for <oauth@ietf.org>; Tue, 20 May 2014 06:57:05 -0700 (PDT)
Received: from int-mx02.intmail.prod.int.phx2.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id s4KDv44l023987 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for <oauth@ietf.org>; Tue, 20 May 2014 09:57:04 -0400
Received: from localhost.localdomain (vpn-60-37.rdu2.redhat.com [10.10.60.37]) by int-mx02.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id s4KDuxAY002239 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NO) for <oauth@ietf.org>; Tue, 20 May 2014 09:57:00 -0400
Message-ID: <537B5F2B.9090501@redhat.com>
Date: Tue, 20 May 2014 08:56:59 -0500
From: Anil Saldhana <Anil.Saldhana@redhat.com>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0
MIME-Version: 1.0
To: oauth@ietf.org
References: <CA+k3eCTZOheb0HCetS88EXcP-8LJQrYPRuwVcd4NWaWxUAVO1g@mail.gmail.com> <sjm4n0uk8be.fsf@mocana.ihtfp.org> <21A361B0-4E8F-4DAB-9EEB-D48FBCBDFFED@ve7jtb.com> <CA+k3eCQJRymEDERy=3yvioetg-7Tz025gaZJ1FS4DYmkTGRhcQ@mail.gmail.com> <CA+k3eCTguJMR-94-KyfpT2_3kQZQQgH3QV6VwawPLoSnBxqVbQ@mail.gmail.com> <CABzCy2DvNsL79JHcR8LoNd1riaC9_KjTXBO1+xUTfCv2NHCOyA@mail.gmail.com> <CA+k3eCQLdfmY_q3Avjc-FKUUK-wq6gEP-j+YE85dkNnhr5=Y4w@mail.gmail.com> <CABzCy2DHTxv6W+u171ZrgBeL0NJZ0jkY33YVWDnsPhuCZfJ26g@mail.gmail.com> <E54A312A-F44C-4E13-9DD7-C47DC48CA805@ve7jtb.com> <CA+k3eCS=vt_WDpGYJ6LcsF_MO0GkoebH6NrQ--NTD0E20NOQ8A@mail.gmail.com> <1400275641.37471.YahooMailNeo@web142803.mail.bf1.yahoo.com> <CA+k3eCTMWHAJ8Kbh9WQ9dGVAWEwq87TUkhrigfCFi1JJkRPoCw@mail.gmail.com>
In-Reply-To: <CA+k3eCTMWHAJ8Kbh9WQ9dGVAWEwq87TUkhrigfCFi1JJkRPoCw@mail.gmail.com>
Content-Type: multipart/alternative; boundary="------------060109070408080006010601"
X-Scanned-By: MIMEDefang 2.67 on 10.5.11.12
Archived-At: http://mailarchive.ietf.org/arch/msg/oauth/r3dnWQevzHVzThGaediEqVjSgYI
Subject: Re: [OAUTH-WG] Question lengths in draft-sakimura-oauth-tcse-03
X-BeenThere: oauth@ietf.org
X-Mailman-Version: 2.1.15
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: Tue, 20 May 2014 13:57:20 -0000

Brian - I agree with you.  It should be MUST as long as the hard limit 
is generous for usage.



On 05/20/2014 07:09 AM, Brian Campbell wrote:
> I'd say it should be a MUST so that implementations are consistent 
> about it.
>
>
> On Fri, May 16, 2014 at 3:27 PM, Bill Mills <wmills_92105@yahoo.com 
> <mailto:wmills_92105@yahoo.com>> wrote:
>
>     The HTTP specs don't limit these things, but implementations do,
>     and the problems when you run into them are a rea pain.
>
>     DO we want to make this a hard limit, or should it be guidance in
>     the form of RECOMMENDED or SHOULD?
>
>     On Friday, May 16, 2014 9:35 AM, Brian Campbell
>     <bcampbell@pingidentity.com <mailto:bcampbell@pingidentity.com>>
>     wrote:
>     Yeah, I agree with John here. There are a few good reasons to
>     restrict the length of the code_challenge. One is trying to keep
>     the authorization request URI to reasonable size as it will
>     eventually run into various limits on clients and/or servers. The
>     other is constraining the amount of data that an AS needs to store
>     per code.
>
>
>
>
>     On Fri, May 16, 2014 at 7:41 AM, John Bradley <ve7jtb@ve7jtb.com
>     <mailto:ve7jtb@ve7jtb.com>> wrote:
>
>         From the AS side you probably want to know what the max size
>         you need to store per code.
>
>         On the call to the token endpoint it is a POST so size should
>         not be an issue.
>
>
>         On May 16, 2014, at 3:10 PM, Nat Sakimura <sakimura@gmail.com
>         <mailto:sakimura@gmail.com>> wrote:
>
>>         Now that I cannot remember what limit we were hitting, it
>>         might be a good idea to remove the constraint and see if
>>         anyone protests.
>>
>>         What do you think?
>>
>>         Nat
>>
>>
>>         2014-05-14 20:46 GMT+09:00 Brian Campbell
>>         <bcampbell@pingidentity.com <mailto:bcampbell@pingidentity.com>>:
>>
>>             That too would suggest that the length limit be on
>>             code_challenge because that's the parameter that will be
>>             on URIs getting passed around. The code_verifier is sent
>>             directly in the POST body from client to AS.
>>
>>
>>             On Tue, May 13, 2014 at 12:52 AM, Nat Sakimura
>>             <sakimura@gmail.com <mailto:sakimura@gmail.com>> wrote:
>>
>>                 +1 for octet. We used to have "bytes" in JW* so I
>>                 used "bytes" here, while at the same time complaining
>>                 in Jose that it should be "octet". JW* changed to
>>                 "octet" but I failed to sync with it in the last few
>>                 edits.
>>
>>                 I do not quite remember which platform, but the
>>                 reason for the limit was that some platform had some
>>                 limitations as to the length of the sting to be
>>                 passed to it through URI and we did not want the
>>                 challenges to be truncated by that limit.
>>
>>                 Best,
>>
>>                 Nat
>>
>>
>>                 2014-05-13 6:56 GMT+09:00 Brian Campbell
>>                 <bcampbell@pingidentity.com
>>                 <mailto:bcampbell@pingidentity.com>>:
>>
>>                     And it'd give the AS some direct guidance on
>>                     protecting itself from crazy long code_challenge
>>                     values rather than relying on the client not to
>>                     do something creative.
>>
>>
>>                     On Mon, May 12, 2014 at 3:54 PM, Brian Campbell
>>                     <bcampbell@pingidentity.com
>>                     <mailto:bcampbell@pingidentity.com>> wrote:
>>
>>                         Right but that's why I'm asking why not just
>>                         put the limit on code_challange rather than
>>                         inferring it from code_verifyer + challenge
>>                         algorithm, which probably bounds it but
>>                         doesn't necessarily do so? It's not a big
>>                         deal but would read more clearly, I think.
>>
>>
>>                         On Mon, May 12, 2014 at 3:48 PM, John Bradley
>>                         <ve7jtb@ve7jtb.com
>>                         <mailto:ve7jtb@ve7jtb.com>> wrote:
>>
>>                             I think octets is more consistent with
>>                             other JW* and OAuth specs.
>>
>>                             The code_challange is the same length as
>>                             the code_verifyer or is a hash of the
>>                             code_verifyer so likely smaller than
>>                             128octets (43 ish for base64 256 bit)
>>
>>                             Limiting the code_verifyer size sets the
>>                             upper bound for code_challange, unless
>>                             someone comes up with a really creative
>>                             code challenge algorithm.
>>
>>                             I will talk to nat about changing it to
>>                             octets when I see him tomorrow.
>>
>>                             John B.
>>
>>                             On May 12, 2014, at 11:15 PM, Derek
>>                             Atkins <warlord@MIT.EDU
>>                             <mailto:warlord@MIT.EDU>> wrote:
>>
>>                             > Brian Campbell
>>                             <bcampbell@pingidentity.com
>>                             <mailto:bcampbell@pingidentity.com>> writes:
>>                             >
>>                             >> I notice that code_verifier is defined
>>                             as "high entropy cryptographic random
>>                             >> string of length less than 128 bytes"
>>                              [1], which brought a few questions and
>>                             >> comments to mind. So here goes:
>>                             >>
>>                             >> Talking about the length of a string
>>                             in terms of bytes is always potentially
>>                             >> confusing. Maybe characters would be
>>                             an easier unit for people like me to wrap
>>                             >> their little brains around?
>>                             >
>>                             > It depends if it really is characters
>>                             or bytes.  For example there are
>>                             > many multi-byte UTF-8 characters, so if
>>                             it really is bytes then saying
>>                             > characters is wrong because it could
>>                             overflow.  So let's make sure we
>>                             > know what we're talking about.
>>                              Historically, if we're talking bytes the
>>                             > IETF often uses the phrase "octets".
>>                              Would that be less confusing?
>>                             >
>>                             >> Why are we putting a length
>>                             restriction on the code_verifier anyway?
>>                             It seems
>>                             >> like it'd be more appropriate to
>>                             restrict the length of the code_challenge
>>                             >> because that's the thing the AS will
>>                             have to maintain somehow (store in a DB
>>                             >> or memory or encrypt into the code).
>>                             Am I missing something here?
>>                             >>
>>                             >> Let me also say that I hadn't looked
>>                             at this document since its early days in
>>                             >> draft -00 or -01 last summer but I
>>                             like the changes and how it's been kept
>>                             >> pretty simple for the common use-case
>>                             while still allowing for crypto agility/
>>                             >> extension. Nice work!
>>                             >>
>>                             >> [1]
>>                             http://tools.ietf.org/html/draft-sakimura-oauth-tcse-03#section-3.3
>>                             >
>>                             > -derek
>>                             >
>>                             >>
>>                             _______________________________________________
>>                             >> OAuth mailing list
>>                             >> OAuth@ietf.org <mailto:OAuth@ietf.org>
>>                             >>
>>                             https://www.ietf.org/mailman/listinfo/oauth
>>                             >
>>                             > --
>>                             > Derek Atkins, SB '93 MIT EE, SM '95 MIT
>>                             Media Laboratory
>>                             > Member, MIT Student Information
>>                             Processing Board  (SIPB)
>>                             > URL: http://web.mit.edu/warlord/  
>>                              PP-ASEL-IA     N1NWH
>>                             > warlord@MIT.EDU
>>                             <mailto:warlord@MIT.EDU>                
>>                                    PGP key available
>>
>>
>>
>>
>>                         -- 
>>                         Ping Identity logo
>>                         <https://www.pingidentity.com/> 	
>>                         Brian Campbell
>>                         Portfolio Architect
>>                         @ 	bcampbell@pingidentity.com
>>                         <mailto:bcampbell@pingidentity.com>
>>                         phone 	+1 720.317.2061
>>                         Connect with us...
>>                         twitter logo
>>                         <https://twitter.com/pingidentity> youtube
>>                         logo
>>                         <https://www.youtube.com/user/PingIdentityTV>
>>                         LinkedIn logo
>>                         <https://www.linkedin.com/company/21870>
>>                         Facebook logo
>>                         <https://www.facebook.com/pingidentitypage>
>>                         Google+ logo
>>                         <https://plus.google.com/u/0/114266977739397708540>
>>                         slideshare logo
>>                         <http://www.slideshare.net/PingIdentity>
>>                         flipboard logo <http://flip.it/vjBF7> rss
>>                         feed icon <https://www.pingidentity.com/blogs/>
>>
>>                         Register for Cloud Identity Summit 2014 |
>>                         Modern Identity Revolution | 19--23 July,
>>                         2014 | Monterey, CA
>>                         <https://www.cloudidentitysummit.com/>
>>
>>
>>
>>
>>
>>                     -- 
>>                     Ping Identity logo <https://www.pingidentity.com/> 	
>>                     Brian Campbell
>>                     Portfolio Architect
>>                     @ 	bcampbell@pingidentity.com
>>                     <mailto:bcampbell@pingidentity.com>
>>                     phone 	+1 720.317.2061
>>                     Connect with us...
>>                     twitter logo <https://twitter.com/pingidentity>
>>                     youtube logo
>>                     <https://www.youtube.com/user/PingIdentityTV>
>>                     LinkedIn logo
>>                     <https://www.linkedin.com/company/21870> Facebook
>>                     logo <https://www.facebook.com/pingidentitypage>
>>                     Google+ logo
>>                     <https://plus.google.com/u/0/114266977739397708540>
>>                     slideshare logo
>>                     <http://www.slideshare.net/PingIdentity>
>>                     flipboard logo <http://flip.it/vjBF7> rss feed
>>                     icon <https://www.pingidentity.com/blogs/>
>>
>>                     Register for Cloud Identity Summit 2014 | Modern
>>                     Identity Revolution | 19--23 July, 2014 |
>>                     Monterey, CA <https://www.cloudidentitysummit.com/>
>>
>>
>>
>>                     _______________________________________________
>>                     OAuth mailing list
>>                     OAuth@ietf.org <mailto:OAuth@ietf.org>
>>                     https://www.ietf.org/mailman/listinfo/oauth
>>
>>
>>
>>
>>                 -- 
>>                 Nat Sakimura (=nat)
>>                 Chairman, OpenID Foundation
>>                 http://nat.sakimura.org/
>>                 @_nat_en
>>
>>
>>
>>
>>             -- 
>>             Ping Identity logo <https://www.pingidentity.com/> 	
>>             Brian Campbell
>>             Portfolio Architect
>>             @ 	bcampbell@pingidentity.com
>>             <mailto:bcampbell@pingidentity.com>
>>             phone 	+1 720.317.2061
>>             Connect with us...
>>             twitter logo <https://twitter.com/pingidentity> youtube
>>             logo <https://www.youtube.com/user/PingIdentityTV>
>>             LinkedIn logo <https://www.linkedin.com/company/21870>
>>             Facebook logo <https://www.facebook.com/pingidentitypage>
>>             Google+ logo
>>             <https://plus.google.com/u/0/114266977739397708540>
>>             slideshare logo <http://www.slideshare.net/PingIdentity>
>>             flipboard logo <http://flip.it/vjBF7> rss feed icon
>>             <https://www.pingidentity.com/blogs/>
>>
>>             Register for Cloud Identity Summit 2014 | Modern Identity
>>             Revolution | 19--23 July, 2014 | Monterey, CA
>>             <https://www.cloudidentitysummit.com/>
>>
>>
>>
>>
>>
>>         -- 
>>         Nat Sakimura (=nat)
>>         Chairman, OpenID Foundation
>>         http://nat.sakimura.org/
>>         @_nat_en
>
>
>
>     _______________________________________________
>     OAuth mailing list
>     OAuth@ietf.org <mailto:OAuth@ietf.org>
>     https://www.ietf.org/mailman/listinfo/oauth
>
>
>
>
>
> _______________________________________________
> OAuth mailing list
> OAuth@ietf.org
> https://www.ietf.org/mailman/listinfo/oauth