The only question is if the OAuth ext review list is the correct place for 
review.  

I don't have a problem with re using an existing review process for a new 
registry, if that works for people.

John B.

> On Dec 3, 2014, at 9:09 AM, Hannes Tschofenig <hannes.tschofe...@gmx.net> 
> wrote:
> 
> I just looked at the IANA consideration section and I noticed that there
> is no policy defined for adding, or deprecating values from various
> registries, such as the code_challenge_method.
> 
> So, you can essentially decide about how easy or difficult you can make
> it for yourself.
> 
> I would think that 'Specification Required' would be appropriate.
> You can copy the relevant text from
> https://tools.ietf.org/html/rfc6749#section-11 and adjust it accordingly.
> 
> Ciao
> Hannes
> 
> On 12/03/2014 01:01 PM, John Bradley wrote:
>> We have been thinking that new hash functions and new mechanisms (eg 
>> ECDH-ES) would be treated the same and require a spec and review. 
>> 
>> (At some point I will do a asymmetric extension so that the key can also be 
>> used to encrypt POP keys back to the client,  but I don't want to make this 
>> spec look to complicated)
>> 
>> Any mechanism using a challenge & verifier approach could fit in to the 
>> defined parameters,  a different hash like SHA3 is simple in that it just be 
>> a replacement of the hash function.
>> 
>> I think guidance id fine as long as it doesn't limit future options.
>> 
>> John B.
>> 
>> 
>>> On Dec 3, 2014, at 8:46 AM, Hannes Tschofenig <hannes.tschofe...@gmx.net> 
>>> wrote:
>>> 
>>> Hi John,
>>> 
>>> I believe it makes sense to give recommendations for extensions (if you
>>> envision them). Of course, I hope that we do not see a flood of
>>> extensions that all use different hash functions.
>>> 
>>> Changing the mechanism to something that provides even stronger security
>>> properties would definitely require a new specification and review.
>>> 
>>> Ciao
>>> Hannes
>>> 
>>> 
>>> On 12/03/2014 12:37 PM, John Bradley wrote:
>>>> Thanks Hannes.
>>>> 
>>>> Other methods such as different hashes need to be added via extension 
>>>> specs.   
>>>> 
>>>> Are you saying that we should set minimum recommendations for them.
>>>> 
>>>> It is also possible that those methods might use something other than 
>>>> hashing.  Key agreement might be a possibility.
>>>> 
>>>> Those properties would all be requirements for selecting a different hash 
>>>> function.   We could add that as a requirement for extensions if you think 
>>>> that is appropriate.
>>>> 
>>>> John B.
>>>> 
>>>>> On Dec 3, 2014, at 8:17 AM, Hannes Tschofenig <hannes.tschofe...@gmx.net> 
>>>>> wrote:
>>>>> 
>>>>> Hi all,
>>>>> 
>>>>> I am trying to figure out how to progress the SPOP document and
>>>>> therefore I read through the discussion about the code challenge, see
>>>>> 
>>>>> I wanted to share my view about this topic.
>>>>> 
>>>>> As a summary, the mechanism works as follows:
>>>>> 
>>>>> C: Compute code_verifier:=rand()
>>>>> C: Compute code_challenge:=func(code_verifier)
>>>>> 
>>>>> (For this discussion, the function func() is SHA-256.)
>>>>> 
>>>>> C: Send(Authz Request + code_challenge,S)
>>>>> 
>>>>> S: store code_challenge
>>>>> S: Send(Authz Grant,C)
>>>>> 
>>>>> C: Send(Access Token Request || code_verifier, S)
>>>>> 
>>>>> S: Compute code_challenge':=func(code_verifier)
>>>>> S: IF (code_challenge'==code_challenge) THEN SUCCESS ELSE FAIL.
>>>>> 
>>>>> The document currently does not say how much entropy the random number
>>>>> has to have.
>>>>> 
>>>>> The text only talks about the output size and SHA-256 indeed produces a
>>>>> 256 bit output.
>>>>> 
>>>>> Here is the relevant text:
>>>>> 
>>>>> "
>>>>> NOTE: code verifier SHOULD have enough entropy to make it impractical
>>>>> to guess the value.  It is RECOMMENDED that the output of a suitable
>>>>> random number generator be used to create a 32-octet sequence.
>>>>> "
>>>>> 
>>>>> I suggest to recommend at least 128 bits, which is inline with the
>>>>> recommendations for symmetric ciphers in
>>>>> http://tools.ietf.org/html/draft-ietf-uta-tls-bcp-07
>>>>> 
>>>>> I would also suggest to reference RFC 4086 concerning the creation of
>>>>> random numbers.
>>>>> 
>>>>> Furthermore, since you allow other hash functions to be used as well it
>>>>> would be good to give guidance about what the properties of those hash
>>>>> functions should be. You definitely want a cryptographic hash function
>>>>> that provides pre-image resistance, second pre-image resistance, and
>>>>> collision resistance.
>>>>> 
>>>>> Given the size of the input and output it is impractical to compute a
>>>>> table that maps code_verifies to code_challenges.
>>>>> 
>>>>> This mechanism provides better properties than the "plain" mechanism
>>>>> since it deals with an attacker that can see responses as well as
>>>>> requests (but cannot modify them). It does not provide any protection
>>>>> against a true man-in-the-middle attacker.
>>>>> 
>>>>> Ciao
>>>>> Hannes
>>>>> 
>>>>> 
>>>>> _______________________________________________
>>>>> OAuth mailing list
>>>>> OAuth@ietf.org
>>>>> https://www.ietf.org/mailman/listinfo/oauth
>>>> 
>>> 
>> 
> 

Attachment: smime.p7s
Description: S/MIME cryptographic signature

_______________________________________________
OAuth mailing list
OAuth@ietf.org
https://www.ietf.org/mailman/listinfo/oauth

Reply via email to