JWT:验证签名秘密格式。

Posted

技术标签:

【中文标题】JWT:验证签名秘密格式。【英文标题】:JWT: Verify Signature Secret Format. 【发布时间】:2016-10-23 16:43:43 【问题描述】:

我正在尝试创建 JWT。我遵循此处提供的格式:https://jwt.io/

在验证签名下有一个名为secret的属性

HMACSHA256(
  base64UrlEncode(header) + "." +
  base64UrlEncode(payload),
  secret    
) 

如何在代码中创建该秘密?它可以是任何字符串还是必须是某种格式?

【问题讨论】:

【参考方案1】:

秘密可以是任何东西:当它是字符串时,您可以将其逐字粘贴到“秘密”条目中,当它是二进制秘密(字节序列)时,您应该首先对其进行 base64 编码,然后将其粘贴到“秘密”框并勾选“秘密base64编码”按钮。

请注意,jwt.io 可以根据提供的密钥验证现有的 JWT,它不能生成 JWT 并对其进行签名。

【讨论】:

以上是关于JWT:验证签名秘密格式。的主要内容,如果未能解决你的问题,请参考以下文章

为啥即使我没有在 Jwt.io 中提供秘密(签名),jwt 令牌也会显示有效负载?

使用带有动态/用户相关秘密的“nestjs/jwt”签名

在没有秘密的情况下解码 JWT 令牌

在 Spring Boot 安全性中使用公钥/私钥创建和验证 JWT 签名

.NET 库中的 JWT 无效签名

在 Clojure/Java 中解码 JWT