我们真的需要" oauth_nonce"?

时间:2014-04-15 15:49:01

标签: oauth

是的,我知道oauth是如何运作的,但我不知道为什么我们需要oauth_nonce

规范说时间戳/ nonce必须是唯一的才能解决重放攻击,但是如果consumer_key足够独特呢?

如果consumer_key不唯一,它如何找到相应的oauth_nonce

1 个答案:

答案 0 :(得分:12)

钥匙是独一无二的,但不经常改变。另一方面,nonce需要根据请求是唯一的。

请考虑以下情形。先决条件是:攻击者可以监视您的通信,但不知道任何秘密。如果没有nonce,他可以进行重播攻击:他可以简单地复制并重新发送您之前的任何请求,因为他知道您已经发送的请求是有效的。

nonce会阻止这种情况,因为服务器检查所有最近使用的nonce(there is a time limit)并且不接受任何两次nonce。