分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 运营维护

JWT JSON Web Token

发布时间:2023-09-06 01:46责任编辑:顾先生关键词:Web

JWT(JSON Web Token)

允许我们使用JWT在用户和服务器之间传递安全可靠的信息的规范。

JWT由三个部分组成:header(头部)、payload(载荷)、signature(签名)。

一、头部 header

头部用于描述关于该JWT的最基本的信息,例如其类型以及签名所用的算法等,用base64url编码生成jwt header头部。

var base64url = require("base64url");var header = { ???‘typ‘: ‘jwt‘, ???‘alg‘: ‘hs256‘};var base64urlheader = base64url(JSON.stringify(header));

header头部:

  • typ: 类型  
  • alg: 签名所用算法

二、载荷 payload

var payload = { ???"iss": "momobutong", ???"iat": iat, ???"exp": exp, ???"aud": "www.example.com", ???"sub": "momobutong@example.com", ???"from_user": "B", ???"target_user": "A"}var base64urlpayload = base64url(JSON.stringify(payload));
  • iss: 该JWT的签发者
  • sub: 该JWT所面向的用户
  • aud: 接收该JWT的一方
  • exp(expires): 过期时间(Unix时间戳)
  • iat(issued at): 签发时间

三、签名 signature

签名signature由header头部、载荷payload、密钥组成。

var crypto = require("crypto");var signature = crypto.createHmac(‘sha256‘, ‘secretkey‘).update(base64urlheader+‘.‘+base64urlpayload).digest(‘hex‘);

生成jwt 

JWT JSON Web Token

原文地址:https://www.cnblogs.com/momobutong/p/8649771.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved