JJWT:JWS, JWE, JWK, JWA, JWT

编程入门 行业动态 更新时间:2024-10-22 16:23:34

JJWT:JWS, <a href=https://www.elefans.com/category/hyzx/6d46624baffae64975f679791eeb2527.html style=JWE, JWK, JWA, JWT"/>

JJWT:JWS, JWE, JWK, JWA, JWT

JWS, JWE, JWK, JWA, JWT

JWS:JSON Web Signature,Digital signature/HMAC specification(签名)

JWE:JSON Web Encryption,Encryption specification(加密)

JWK:JSON Web Key,Public key specification

JWA:JSON Web Algorithms,Algorithms and identifiers specification(算法)

JWT:JSON Web Token

 

 

什么是JSON Web Token

JWT是一种在两方之间传输信息的方法。
在JWT的主体中编码的信息被称为claims。JWT的扩展形式是JSON格式,因此每个claim都是JSON对象中的一个键。
JWTs可以加密签名(使它成为JWS)或加密(使它成为JWE)。
这为JWTs增强了可验证性。例如,接收者可以确定JWT没有通过验证签名来篡改。

JWT的组成

  • Header: 标题包含了令牌的元数据,并且在最小包含签名和/或加密算法的类型
  • Claims: Claims包含您想要签署的任何信息
  • JSON Web Signature (JWS): 在header中指定的使用该算法的数字签名和声明

例:

Header:
{"alg": "HS256","typ": "JWT"
}
Claims:
{"sub": "1234567890","name": "John Doe","admin": true
}
Signature:
base64UrlEncode(Header) + "." + base64UrlEncode(Claims)

在这种情况下,我们得到的信息是使用sha - 256算法的HMAC来签署JWT。而且,body有一个claim name与value John Doe  等信息。

 

所生成JWT的结果是有三个部分的字符串,每个部分由"."分隔

例如:

eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJKb2UifQ.ipevRNuRP6HflG8cFKnmUPtypruRC4fb1DWtoLL62SY

 

 

JJWT

JJWT是一个提供端到端的JWT创建和验证的Java库。永远免费和开源(Apache License,版本2.0),JJWT很容易使用和理解。它被设计成一个以建筑为中心的流畅界面,隐藏了它的大部分复杂性。

  • JJWT的目标是最容易使用和理解用于在JVM上创建和验证JSON Web令牌(JWTs)的库。
  • JJWT是基于JWT、JWS、JWE、JWK和JWA RFC规范的Java实现。
  • JJWT还添加了一些不属于规范的便利扩展,比如JWT压缩和索赔强制。

 

 

 

 

 

更多推荐

JJWT:JWS, JWE, JWK, JWA, JWT

本文发布于:2023-06-29 10:50:18,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/943716.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:JWE   JWS   JJWT   JWT   JWA

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!