Thanks for the feedback.

On Tue, Dec 9, 2008 at 1:51 AM, Marc Worrell <[EMAIL PROTECTED]> wrote:
> 1.  Why use sha1 and not hmac-sha1 (or the signing method of the request)?

I don't want to use HMAC-SHA1 because that would require signing an
uninterpreted string of bytes.  Signing raw byte streams is poor
cryptographic hygiene, because the signer does not understand what
they are signing.

For example, OpenSocial gives special meaning to opensocial_*
parameters in the signature base string.  If we use HMAC-SHA1, an
opensocial container could be tricked into signing a string of bytes
that has special meaning.  Imagine an application/octet-stream request
body that looks like

GET&http://www.example.com/resource&opensocial_owner=<fake-owner>&opensocial_viewer=<fake-viewer>
etc...

If an opensocial container signs that request body with their oauth
consumer key, they've signed a message authenticating fake-owner and
fake-viewer, without ever intending to do so.

Hashing the body and then signing the hash avoids this problem.

> 2.  Is it possible to have a way to add signing of the content-type and
> content-length headers?  Maybe add a normalisation method for the header and
> include the headers in the signature. Or when normalisation is not feasible,
> add an oauth_body_length and oauth_body_type parameter that the software
> might use to verify the received content-length and content-type headers.

Hrm.  I didn't want to do this, but John Hayes made a similar
suggestion.  Let me respond to his e-mail, I'll add you to the CC
list.

Cheers,
Brian

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"OAuth" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/oauth?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to