Kad*_*mar 1 javascript node.js jwt
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1aWQiOjIsImlhdCI6MTU2ODY1NjI1OX0.E2TNtWjqyPC-4myEom6leLJgE96ZlQOq0-mcBr3p5QU
如果我们将使用 JsonWebToken 从我的代码生成的令牌放置在 Jwt.io 站点中,即使我没有提供要验证的秘密,它也会立即解码。我不知道为什么会显示。有人能解释一下原因吗?
--那么Jwt中SECRET的目的是什么?
我认为您对加密和签名有点困惑。
JSON Web 令牌未加密,它只是进行了 Base64 编码,这意味着任何人都可以轻松解码和查看。
然而,它是经过签名的,这意味着它是hash根据其中的所有信息和密钥生成的。只有拥有秘密密钥(对于对称散列)或公钥(对于非对称散列)的人才能确认令牌已被正确散列,并且只有密钥的提供者(拥有秘密令牌)才能创建有效的哈希值。
这样做的作用是让您相信令牌是由您认为创建它的人/服务创建的,从而防止假冒等,因此允许您信任令牌claims中创建的内容。如果该哈希因任何原因无效,您将立即拒绝该令牌,因为它很可能是伪造的。
请注意,正如 @FlorentMorselli 提到的,有一种称为JWE 的加密令牌。
| 归档时间: |
|
| 查看次数: |
1011 次 |
| 最近记录: |