Python中JWT的简单生成和验证

本文介绍了Python中JWT的基本概念,包括其构成部分:头部、载荷和签名。通过示例展示了如何生成和验证JWT token,强调了签名在防止数据篡改中的作用。对于深入理解和应用JWT,建议读者自行进一步研究。
摘要由CSDN通过智能技术生成

JSON Web Token就是JWT的全名,用途比较广泛的验证信息的方式。

JWT的简介

JWT由三部分构成,分别是头部(header),载荷(payload),和签名(signature)。三部分由两个.分隔。

签名(signature)是由头部(header),和载荷(payload)经过加密算法和秘钥加密得出,秘钥不泄露的情况下能判断出数据是否被修改。

生成token

用到的Python模块 json, base64, hmac, hashlib

先设置头部信息

头部信息包括两部分内容
1、声明类型,这里是jwt
2、声明加密的算法 通常直接使用 HMAC SHA256
header = { 'typ': 'JWT', 'alg': 'HS256' }

将字典类型的头部使用JSON模块转成JSON字符串类型,并且编码成字节类型文件,再用base64编码,然后解码后得到字符串就是token的第一部分
header = base64.b64encode(json.dumps(header).encode()).decode()

在这里插入图片描述

载荷部分,存用户的相关信息,不要存敏感信息,这和头部的内容都可被解码看到
p

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值