【发布时间】:2016-07-12 08:49:21
【问题描述】:
在 JWT 令牌认证中,提到了“.”。用于拆分令牌的 3 个部分(标头、声明、签名)。但是,如果我的签名或编码声明包含“。”很难确定第 3 节的确切内容。 Anybosy遇到过这种情况或者有什么办法处理?
我使用 HMACSHA256(编码的 json 声明)生成了签名,但我得到了“。”在签名数据的中间。当我连接所有 3 个部分时,我会得到一个额外的“。”
【问题讨论】:
-
如果这3部分的顺序是header、claim和signature,你应该知道在第二个“.”之后剩下的就是签名了,对吧?
-
是的,Header 和 Claims 是 Base64URLEncoder 编码的内容。我的疑问是如果 Header/Claims 还包含“。”
-
据我所知,他们在官方网站上使用 HMACSHA256( base64UrlEncode(header) + "." + base64UrlEncode(payload), secret)
标签: c# .net authentication token