JWT 和 JJWT 还傻傻的分不清吗

JWTs是JSON对象的编码表示。JSON对象由零或多个名称/值对组成,其中名称为字符串,值为任意JSON值。

JWT有助于在clear(例如在URL中)发送这样的信息,可以被信任为不可读(即加密的)、不可修改的(即签名)和URL - safe(即Base64编码的)。

JSON Web Token (JWT) 作为一个开放的标准 (RFC 7519) 定义了一种简洁自包含的方法用于通信双方之间以 JSON 对象的形式安全的传递信息。因为有数字签名,所以这些通信的信息能够被校验和信任。

JWT 可以使用秘钥(secret)进行签名 (使用 HMAC 算法) 或使用 RSAECDSA 算法的公钥/私钥对(public/private key)。

尽管 JWT 可以在通讯的双方之间通过提供秘钥(secret)来进行签名,我们将会更多关注 **已签名(signed)**的 token。

通过签名的令牌可以验证其中数据的 完整性(integrity) ,而加密的令牌可以针对其他方 隐藏(hide) 申明。

当令牌(token)使用 公钥/私钥对(public/private key)进行签名的时候,只有持有私钥进行签名的一方是进行签名的。

JWT 定义了一个标准,JJWT 是 JWT 基于 Java 的一个实现。

如下图,我们返回的一个 JWT。

JWT 是可以解码的。

JJWT

JJWT 是基于 JWT 的一个实现。

JJWT很容易使用和理解。它被设计成一个以建筑为中心的流畅界面,隐藏了它的大部分复杂性。

因为 JWT 的官方库不那么好用,那么JJWT 就是一个目前用得比较多的实现 JWT 的库了。

如果在你的项目中需要使用 JWT,那么用 JJWT 就没有什么问题。

展开阅读全文

页面更新:2024-04-21

标签:数字签名   令牌   复杂性   字符串   算法   定义   对象   通信   标准   信息

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2008-2024 All Rights Reserved. Powered By bs178.com 闽ICP备11008920号-3
闽公网安备35020302034844号

Top