6

我在 2.0 规范中的任何地方都没有看到它,OAuth 2 没有使用 nonce,如果没有,现在它可以防止重放攻击吗?

1.0 规范指出:

3.3. 随机数和时间戳

时间戳值必须是正整数。除非服务器文档另有规定,否则时间戳以自 1970 年 1 月 1 日 00:00:00 GMT 以来的秒数表示。

nonce 是一个随机字符串,由客户端唯一生成,以允许服务器验证以前从未发出过请求,并有助于防止通过非安全通道发出请求时的重放攻击。在具有相同时间戳、客户端凭据和令牌组合的所有请求中,nonce 值必须是唯一的。

为了避免需要为将来的检查保留无限数量的 nonce 值,服务器可以选择限制使用旧时间戳的请求被拒绝的时间段。请注意,此限制意味着客户端和服务器时钟之间的同步级别。应用这种限制的服务器可以为客户端提供一种与服务器时钟同步的方法;或者,两个系统都可以与受信任的时间服务同步。时钟同步策略的细节超出了本规范的范围。

4

1 回答 1

7

这是在单独的规范中捕获的。有关详细信息/答案,请参阅OAuth 2.0 威胁模型和安全注意事项:)

于 2012-08-07T01:13:45.680 回答