【发布时间】:2016-05-29 15:35:02
【问题描述】:
我正在使用 JWT 令牌在客户端对用户进行身份验证。
在我的服务器上,我指定了一个密钥来对令牌进行编码。
在客户端,我想解码这些令牌并验证其有效性,但是如何在不将秘密暴露给客户端的情况下实现这一点(我认为这是不允许的)
【问题讨论】:
我正在使用 JWT 令牌在客户端对用户进行身份验证。
在我的服务器上,我指定了一个密钥来对令牌进行编码。
在客户端,我想解码这些令牌并验证其有效性,但是如何在不将秘密暴露给客户端的情况下实现这一点(我认为这是不允许的)
【问题讨论】:
有不同类型的键:
如果您使用对称密钥签署或加密您的 JWT(在服务器端),这些密钥必须用于在客户端验证或解密 JWT。 如果您使用私钥/公钥对,则使用私钥执行签名或解密;使用公钥进行验证或加密。
所以如果你想decode these tokens and verify that validity ... without exposing the secret to the client,那么你应该考虑使用非对称密钥。
您的 JWT 将由服务器使用私钥签名,并由客户端使用公钥验证。
【讨论】: