token、cookie、session

本文介绍了如何获取和使用token,以及两种加密方法——MD5和RSA。MD5用于基本的加密,而RSA是流行的非对称加密方式,适用于数据安全传输。同时,文章也提及了cookie和session在身份验证中的角色和区别。
摘要由CSDN通过智能技术生成

获取token

获取响应的token

print('token值--->',resp.json()['data]['token'])

直接获取字典格式的数据

print('token的值是--->,jsonpath.jsonpath(resp.json(),"s.data.token'))

接口加密操作

MD5加密

# 定义md5加密的函数
'''  
1.输入参数: 字符串类型
2.调用对应库的加密方法去处理
3.得到返回值!
'''
'''
MD5盐值
password: xintian+盐值(字符串 数字 时间戳 随机数)
函数定义参数的时候,如果参数有默认值,怎么选择这个默认值:Nonearr0
'''
def get_md5_data(data: str, salt='') -> str:
'''
:param data: 加密的数据
:param salt;盐值,默认是空字符串
:return: 密文
'''
# 1,创建一个md5对象
md5 = hashlib.md5()
# 2.进行加密
data = f'{data}{salt}'
md5.update(data.encode('utf-8'))
# 3, 返回加密后的密文return md5.hexdigest()
res = get_md5_data('YAnanq', 100)print(res)

RSA加密

概述: 很流行的一种数据加密方法

非对称加密: 一对密钥

公钥: 客户端拿到这个公钥,使用对应的函数把明文数据,加密,公钥可以 公开

私钥: 客户端请求发过来密文,需要校验,使用私钥去解密,做判断数据是 否,匹配

怎么获取公钥? 1.直接找开发要 2.有些项目可以测试人员自己获取 浏览器打开项目---F12---控制台---输入publickey

扩展: 公钥加密,私钥解密;私钥签名,公钥验签 加密: 保证数据在网络传送中就算被人抓包,不能直接看到具体的数据 签名: 签名,保证用户的身份

rsa实战练习

'''
RSA加密的代码编辑:
1- 安装对应的库 cmd---pip install pycryptodome
2- rsa加密处理流程:
- 1.先获取加密公钥文件
- 2.输入需要加密的明文数据---加密函数一定有一个形参data
- 3.把输入的字符串---byte(加密都是对字节加密) str:'abc'-----b'abc
- 4.使用加密方法加密
- 5.使用base64编码(加密的密文进行编码)
- 6.解码---密文是bytes字节码---dencode()-----字符串
'''
from Crypto.PublicKey import RSA
from Crypto.ciphen import PKCS1_v1_5 as PKCS1_cipher
class RsaEncrypt:
    def __init__(self,file_path='./'): # 默认是当前路径
       self.file_path = file_path
    def encrypt(self,data: str): # 加密方法
# 1.打开读取文件内容
        with open(f'{self.file_path}public.pem','rb') as fo:
# 2. 获取公钥的内容
              key_content_bytes = fo.read()
# 3. 把需要加密的源数-- 转成--- 字节码
              data = data.encode('utf-8')
# 4. 把公朗的内容- 转换--RSA公朗对象
              public_key = RSA.importKey(key_content_bytes)
# 5. 使用公钥对象生成一个加密对象
              cipher = PKCS1_cipher.new(public_key)
# 6.加密操作---data此时是字节码
              encrypt_text = cipher.encrypt(data)
# 7.先使用base64编码--- 使用解码--- 字符串的密文
              return base64.b64encode(encrypt_text).decode('utf-8')

cookie和session

cookie服务端传给客户端,存在本地,是身份认证机制,cookie可以被伪造

session是浏览器访问服务器,在服务器里产生session对象(id属性,其他属性)存放在服务器,session不能被伪造,但是高并发时会产生很多session,影响性能

sessionid是客户端第一次访问服务器,服务器会产生sessionid

1、访问网站的任何页面都会返回sessionid-电商项目

2、只有登录完成才会返回sessionid- 教管系统

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值