OAuth 2 是否使用随机数



我在 2.0 规范中没有看到它,OAuth 2 没有使用随机数,如果没有,现在它可以防止重放攻击吗?

1.0 规范指出:

3.3. 随机数和时间戳

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

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

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

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

最新更新