在客户端解码 HS256?
Decoding HS256 in client side?
我正在为我的应用程序使用 json 网络令牌。
当我登录到我的网站并想查看谁是登录用户时,我有一个以前存储的令牌,其中包含以 HS256 编码的所有需要的数据。
我应该使用这个令牌负载来显示 "Hello ..." 和负载中的用户名,还是应该解码令牌服务器端并从那里检索用户数据?
有没有解码HS256的客户端库供我使用?
或者这是不好的做法,应该避免。
JWT 是独立的,并受数字签名保护。您可以完美使用token中包含的信息,但您应该验证过期时间并确保数字签名未被更改。
要在客户端验证签名,您需要密钥是非对称的,并使用 public 密钥进行验证。可能会将令牌发送到服务器,从而为您解决问题。取决于操作可能会承担风险,只要令牌用于服务器上的身份验证并执行验证
Is there any client-side library to decode HS256 for me to use? Or is it bad practice and should be avoided.
事实上,您不需要任何库。有效载荷是 base64 url 编码的,可以用任何编程语言轻松解码。您需要一个图书馆来验证数字签名。看看jwt.io
我正在为我的应用程序使用 json 网络令牌。
当我登录到我的网站并想查看谁是登录用户时,我有一个以前存储的令牌,其中包含以 HS256 编码的所有需要的数据。
我应该使用这个令牌负载来显示 "Hello ..." 和负载中的用户名,还是应该解码令牌服务器端并从那里检索用户数据?
有没有解码HS256的客户端库供我使用? 或者这是不好的做法,应该避免。
JWT 是独立的,并受数字签名保护。您可以完美使用token中包含的信息,但您应该验证过期时间并确保数字签名未被更改。
要在客户端验证签名,您需要密钥是非对称的,并使用 public 密钥进行验证。可能会将令牌发送到服务器,从而为您解决问题。取决于操作可能会承担风险,只要令牌用于服务器上的身份验证并执行验证
Is there any client-side library to decode HS256 for me to use? Or is it bad practice and should be avoided.
事实上,您不需要任何库。有效载荷是 base64 url 编码的,可以用任何编程语言轻松解码。您需要一个图书馆来验证数字签名。看看jwt.io