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

时间:2015-07-14 07:08:28

标签: jwt

我用JWT的私钥创建了一个令牌,但是当我尝试在http://kjur.github.io/jsjws/tool_jwt.html上解码它时,我发现令牌可以在没有给出任何密钥的情况下解码。那么JWT令牌只是一个签名是正确的吗?如何在没有密钥的情况下保持令牌解码?

1 个答案:

答案 0 :(得分:6)

JWT可以通过两种方式使用公钥/私钥:签名和加密。

如果使用私钥进行签名,则允许收件人识别JWT的发件人和邮件的完整性,但不能将其内容隐藏在其他人之外(机密性)。请注意,它将是发件人的私钥,用于对JWT进行签名并生成JSON Web签名(JWS)对象。显然,这适用于您正在查看的JWT。

使用公钥进行加密时,它可用于隐藏除预定收件人之外的任何人的内容。结果是JSON Web加密对象。请注意,它将是用于加密JWT的收件人的公钥。显然这就是你要找的东西。

请参阅:http://jose.readthedocs.org/en/latest/