什么是签名认证令牌?

时间:2018-01-30 08:39:34

标签: authentication access-token

目前我正在学习JWT并开始使用基于令牌的身份验证。我不理解来自the article的句子:

  

基于令牌的身份验证通过确保对a的每个请求来工作   服务器附带一个服务器验证的签名令牌   真实性,然后才响应请求。

什么是签名令牌?签署令牌意味着什么?我无法在SO上找到问题。

1 个答案:

答案 0 :(得分:7)

签名可以验证

您要解决的主要问题是:服务器会创建一些任意值,即它给客户端的令牌。客户端随后将其作为某些内容的证据返回给服务器(例如,证明它们已经过身份验证)。现在,服务器如何确保令牌是真实的,而客户端不只是弥补它?

这就是签名的来源。它是令牌的一部分,服务器可以验证它之前是否已创建该签名,以及是否为此特定令牌创建了签名。简而言之,签名是令牌内容的哈希加上只有服务器拥有的秘密;为了验证签名,服务器只重复令牌内容的散列和秘密,只要它有匹配,这意味着令牌的签名必须以同样的方式创建,以确保两个所需的真实属性。

有关如何具体计算JWT签名的详细信息,请阅读the specification