我想知道如何实现oauth_token,oauth_nonce或oauth_token_secret。 我已经阅读了关于oauth1.0和oauth1.0a的规范,但我对它们是如何实现感到困惑。 对于oauth_token,我只知道它是一个字符串,但是还有关于它是如何实现的信息,例如Google或Facebook如何实现它,它只是一个GUID吗? 对于oauth_nonce,据我所知,它应该是每个请求唯一,但GUID也是唯一的,我可以使用它吗?从很多网站我看到它是一个转换为Base 64字符串的数字,为什么它应该是这样的呢?
答案 0 :(得分:0)
请记住,GUID是唯一的,但通常不是完全随机的。为避免冲突,GUID的某些部分基于生成计算机的MAC地址和当前时间戳。这使得GUID比相同长度的完全随机数更容易猜测。
我认为GUID可用于生成唯一的非机密值。虽然他们很长。鉴于大多数令牌的寿命很短,我认为创建随机位更容易,更简单,而且仍然相当独特。它还节省了带宽和存储空间,以便使用更小的ID。
由于您经常无法传输原始位,因此使用Base64编码仅使用ASCII字符发送随机数。我也看过用于此的Base62编码,有时候更方便,因为它不包含任何特殊字符(仅0-9a-zA-Z
)。