jwt与签名机制讲解_第1页
jwt与签名机制讲解_第2页
jwt与签名机制讲解_第3页
jwt与签名机制讲解_第4页
jwt与签名机制讲解_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第十九节 JWT与签名机制讲解Guns系列教程JWT的介绍Jwt简介:Jwt是一种用户授权机制,jwt由服务器端产生,当客户端拥有jwt之后,就相当于客户端拥有了访问服务器资源的权限,jwt由三部分组成,第一部分头部( header),第二部分载荷(payload),第三部分是Jwt的样子:xxxx. xxxx. xxxxheader:声明类型(jwt) ,声明加密的算法(HS256),json经过base64编码payload:存放有效信息,json经过base64编码( signature).signature:存放信息,由header和payload分别base64编码后,并拼接秘钥串(

2、secret),再进行加密生成Header base64.payload base64 + secretJWT参考资料 参考资料: /p/576dbf44b2ae http:/blog.rainy.im/2015/06/10/react-jwt-pretty-good-practice/ /2015/09/06/understanding-jwt/ /2015/09/07/user-authentication-with-jwt/传输数据签名和加密的作用

3、 签名的作用: 防止数据被篡改. 如何保证不被篡改: 原始数据base64编码+随机字符串进行md5加密,如果被篡改,则服务端验证的时候签名和数据不对应. 加密的作用: 防止数据泄露客户端服务端原始数据Base64解码(可选)验证jwt和签名接收的客户端数据最终传输的数据签名加密(可选)base64编码原始数据(json)回顾REST模块 接口访问流程要点:1. 访问接口之前需要持有jwt令牌2. 访问接口的json数据需要进行base64编码,编码之后需要进行md5签名(编码+混淆字符串) 3.混淆字符串通过获取jwt token的接口同时获取流程图:流程说明:1.客户端请求auth接口,获

4、取jwt token,请求时一般携带用户名和或者手机号和验证码等.,2. 服务端返回jwt token和用于签名用的混淆字符串(混淆字符串的作用是对客户端传输数据进行签名)3. 客户端对传输数据(一般为json数据)进行base64编码(保证解析json的顺序)将编码之后的数据和混淆字符串拼接进行md5加密,加密结果作为签名4. 将md5加密之后的数据和base64编码的数据发送给hello接口5. 将客户端传来的数据进行签名校验,验证签名是否正确,是否超时等一系列 操作6. 校验成功的话,正常返回hello接口内容,校验失败的话返回签名异常12客户端4635服务端hello接口校验器Auth接口JWT机制原理AuthController控制器为auth接口(作用:验证请求账号字符串),返回jwt token和签名用的随机WithSignMessageConverter类实现签名校验,并可以把base64编码的内容转化成实体AuthFilter过滤器验证客户端的jwt token是否正确,是否超时等等DataSecurityAction接口定义了数据传输的保护措施,目前默认的是只对数据进行base64编码,可以自行实现该接口实现自己业务需要的加密方式JwtTokenUtil类为jwt token相关的工具类IReqValidator接口为A

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论