T31训练营-DAY24用户系统实现

前言

今天的分享主要是颁发令牌。

JWT

什么是JWT? 

Json web token (JWT), 是为了在⽹络应⽤环境间传递声明⽽执⾏的⼀种基于JSON的开放标准(RFC7519).定义了⼀种简洁的,⾃包含的⽅法⽤于通信双⽅之间以JSON对象的形式安全的传递信息。因为数字签名的存在,这些信息是可信的,JWT可以使⽤HMAC算法或者是RSA的公私秘钥对进⾏签名。

组成

  • Header:包含token类型和采用的加密算法
  • Payload:存放信息
  • Signature:签名,防篡改

为什么使用JWT?

传统的授权模式性能低下,每次都需要请求授权服务校验令牌合法性,我们可以利⽤公钥私钥完成对令牌的加密,如果加密解密成功,则表示令牌合法,如果加密解密失败,则表示令牌⽆效不合法,合法则允许访问资源服务器的资源,解密失败,则不允许访问资源服务器资源。


使用流程

 

生成密钥

使用Keytool工具生成。

keytool -genkeypair -alias kaikeba -keyalg RSA -keypass kaikeba -keystore kaikeba.jks -storepass kaikeba
使用OpenSSL导出
keytool -list -rfc --keystore kaikeba.jks | openssl x509 -inform pem - pubkey

 

总结

今天主要介绍JWT和密钥生成, 下一篇介绍使用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值