The whole mechanism relies on the attacker not having access to the 
code_verifier or hash.  It's defending against the attacker getting the code 
via weakness in IPC or other such mechanism like URI handlers.  How many more 
bits is secure beyond 256 bits of entropy recommended?  If you want to make it 
longer then just make it longer, salting doesn't really help that much.
The original value or the hashed value *should* be protected by the transport 
security, and if it isn't then the attacker could be stealing the original 
credential used to authenticate anyway.
 

     On Thursday, November 13, 2014 5:40 PM, takamichi saito 
<sa...@cs.meiji.ac.jp> wrote:
   

 
Hi all,

I appreciate this idea, simple and powerful to achieve proof of possession.
But, I have some questions against the scheme.
Sorry if these ware already discussed.

I worry about using a hash function in simple way.
I mean, a simple use of random as code_verifier may cause that malicious client 
can have any code_verifier and code_challenge.
All combinations of random and its hash can be obtained, it may not be risk?

So, we should use:
S256 "code_challenge" = BASE64URL(SHA256("code_verifier" + “client ID”))
or
S256 "code_challenge" = BASE64URL(SHA256("code_verifier" + “client ID” + 
“server ID”))
Where, you know that client ID is client’s unique name.


Other problem is the following, using Nat’s slide:
http://www.slideshare.net/nat_sakimura/1112-spoppresso .

0.    Attacker prepares own code_verifier and code_challenge.
1.    replage legitimate challenge with malicious code_challenge.
5. Attacker can submits own code_verifier.

It may be out of the draft, I think.

Best regards,


;; takamixhi saito

_______________________________________________
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

Reply via email to