当前位置: 首页 > news >正文

从0开始python学习-51.pytest之接口加密封装

目录

MD5加密

base64加密

rsa加密


MD5加密

1. 封装加密方法

def md5_encode(self,data):data = str(data).encode("utf-8")md5_data = hashlib.md5(data).hexdigest()return md5_data

2. 写入需要使用加密的接口yaml用例

-request:method: posturl: http://192.168.0.1/md5logindata:username: ${md5_encode(admin)} # 这里直接调用MD5的方法即可password: ${md5_encode(123)}

base64加密

1. 封装加密方法

def base64_encode(self,data):data = str(data).encode("utf-8")base64_data = base64.b64encode(data).decode("utf-8")return base64_data

2. 写入需要使用加密的接口yaml用例

-request:method: posturl: http://192.168.0.1/base64logindata:username: ${base64_encode(admin)} password: ${base64_encode(123)}

rsa加密

需要先进行下载  pip install rsa

1. 生成rsa使用的公钥和私钥

def create_key(self):# 生成1024位的公钥和私钥-RSA密钥至少为500位,密钥长度随着保密级别提高public_key,private_key = rsa.newkeys(1024)# 将生成的公钥和密码写入文件with open("./public_key.pem","w+") as f :f.write(public_key.save_pkcs1().decode())with open("./private_key.pem","w+") as f :f.write(private_key.save_pkcs1().decode())

2. 封装加密方法

这里读取的时候注意相对路径的问题

def rsa_encode(self,data):# 读取公钥with open("./public_key.pem") as f:public_key = rsa.PublicKey.load_pkcs1(f.read().encode())# 把data转为utf-8格式data = str(data).encode("utf-8")# 把字符串加密成byte类型byte_data = rsa.encrypt(data,public_key)# 把字节转为字符串base64_data = base64.b64encode(byte_data).decode("utf-8")

3. 写入需要使用加密的接口yaml用例

-request:method: posturl: http://192.168.0.1/rsalogindata:username: ${rsa_encode(admin)} password: ${rsa_encode(123)}

相关文章:

从0开始python学习-51.pytest之接口加密封装

目录 MD5加密 base64加密 rsa加密 MD5加密 1. 封装加密方法 def md5_encode(self,data):data str(data).encode("utf-8")md5_data hashlib.md5(data).hexdigest()return md5_data 2. 写入需要使用加密的接口yaml用例 -request:method: posturl: http://192.168.…...

c++的命名空间

命名空间 一.c的关键字二.命名空间2.1 命名空间定义2.1 命名空间的使用2.1.1加命名空间名称及作用域限定符2.1.2使用using将命名空间中某个成员引入 三.标准命名空间std 一.c的关键字 c中一共有63个关键字 关键字11111asmdoifreturntrycontinueautodoubleinlineshorttypedeff…...

阿富汗塔利班兴起时的比赛代码3475:练85.3 删数问题(Noip1994)

【题目描述】 输入一个高精度的正整数n�,去掉其中任意s�个数字后剩下的数字按原左右次序组成一个新的正整数。编程对给定的n�和s�,寻找一种方案使得剩下的数字组成的新数最小。 输出新的正整数。&#xff0…...

大数据平台红蓝对抗 - 磨利刃,淬精兵!

背景 目前大促备战常见备战工作:专项压测(全链路压测、内部压测)、灾备演练、降级演练、限流、巡检(监控、应用健康度)、混沌演练(红蓝对抗),如下图所示。随着平台业务越来越复杂&a…...

【2024-01-22】某极验3流程分析-滑块验证码

声明:该专栏涉及的所有案例均为学习使用,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!如有侵权,请私信联系本人删帖! 文章目录 一、前言二、抓包流程分析1.刷新页面2.点击按钮进行验证…...

Laya2.13.3接入FGUI

下载与复制文件与Laya1.x类似,可以看我上一篇: Laya1.8.4接入FariyGui,以及其中踩的坑-CSDN博客 不同的是: 两个库文件需要在index.js中引入 新建一个脚本将fgui中搭建好的UI包引入: export default class GameApp…...

短视频账号矩阵系统+无人直播系统源码技术开发

短视频账号矩阵系统无人直播系统源码技术开发涉及到多个领域,包括但不限于前端开发、后端开发、数据库设计、网络通信等。 以下是一些基本技术的步骤和注意事项: 1.技术需求分析设计:首先,需要明确开发短视频账号矩阵系统和无人直…...

C语言或C++通过IShellLinkA创建或解析lnk快捷方式(使用char字符数组)

本例程用到的COM接口有IShellLinkA和IPersistFile。 请注意因为函数参数的类型不为BSTR,所以这两个接口可直接传char *或wchar_t *字符串,不需要提前转化为BSTR类型。 C语言的写法: /* 这个程序只能在C编译器下编译成功, 请确保源文件的扩展…...

Spring源码学习-Spring流程概述(一)

Spring启动的流程 public class Test {public static void main(String[] args) {ClassPathXmlApplicationContext context new ClassPathXmlApplicationContext("applicationContext.xml");Student bean context.getBean(Student.class);context.close();} }调用…...

Figma怎么设置中文,Figma有中文版吗?

不是很多人不想用 Figma,真是因为纯英文界面而头疼。这就是为什么有人会到处搜索 Figma 如何设置中文这样的问题。 然后我们直接快刀斩乱麻,Figma 没有中文版,但是我们还有其他的方法:例如, Figma 添加一个插件来解决…...

智慧文旅一机游:科技与文化的完美结合,引领智慧文旅新潮流,智慧旅游未来已来

一、科技与文化的完美结合:智慧文旅一机游的核心理念 智慧文旅一机游,是科技与文化相融合的产物,它不仅代表着旅游行业的创新与发展,更是一种文化与科技完美结合的生活方式。一机游的核心理念在于通过先进的科技手段,提…...

多维时序 | Matlab实现CNN-LSTM-Mutilhead-Attention卷积长短期记忆神经网络融合多头注意力机制多变量时间序列预测

多维时序 | Matlab实现CNN-LSTM-Mutilhead-Attention卷积长短期记忆神经网络融合多头注意力机制多变量时间序列预测 目录 多维时序 | Matlab实现CNN-LSTM-Mutilhead-Attention卷积长短期记忆神经网络融合多头注意力机制多变量时间序列预测效果一览基本介绍程序设计参考资料 效果…...

软件工程实验报告(完整)

博主介绍:✌全网粉丝喜爱、前后端领域优质创作者、本质互联网精神、坚持优质作品共享、掘金/腾讯云/阿里云等平台优质作者、擅长前后端项目开发和毕业项目实战✌有需要可以联系作者我哦! 🍅附上相关C语言版源码讲解🍅 &#x1f44…...

Java零基础学习20:集合的练习

编写博客目的:本系列博客均根据B站黑马程序员系列视频学习和编写目的在于记录自己的学习点滴,方便后续回忆和查找相关知识点,不足之处恳请各位有缘的朋友指正。 一、查找id对应的集合索引 package www.itheima;import java.util.ArrayList;…...

【latex】在Overleaf的IEEE会议模板中,快速插入参考文献

【LaTeX】在Overleaf的IEEE会议模板中,快速插入参考文献 写在最前面第一步:在文献检索网站导出引用文献的bib文件第二步:编辑overleaf模版方法二:EduBirdie生成参考文献(补充)使用LaTeX在Overleaf的IEEE会议…...

java反射之Field用法(获取对象的字段名和属性值)

一、概述 Field是一个类,位于java.lang.reflect包下。在Java反射中Field类描述的是类的属性信息,功能包括: 获取当前对象的成员变量的类型 对成员变量重新设值 二、如何获取Field类对象 getField(String name): 获取类特定的方法&#xff0c…...

Java Web(三)--CSS

介绍 为什么需要: 在没有 CSS 之前,想要修改 HTML 元素的样式需要为每个 HTML 元素单独定义样式属性,费心费力;CSS 可以让 html 元素(内容) 样式(CSS)分离,提高web 开发的工作效率(针对前端开发),从而…...

天津大数据培训班推荐,数据分析过程的常见错误

大数据”是近年来IT行业的热词,目前已经广泛应用在各个行业。大数据,又称海量信息,特点是数据量大、种类多、实时性强、数据蕴藏的价值大。大数据是对大量、动态、能持续的数据,通过运用分析、挖掘和整理,实现数据信息…...

【笔记】Helm-3 主题-17 弃用的Kubernetes API

弃用的Kubernetes API Kubernetes是一个API驱动系统,且API会随着时间的推移而变化,以反映对问题理解的不断推移。这是系统及API的普遍做法。API推移的一个重要部分是良好的弃用策略和通知用户更改API是如何实现的。换句话说,您的API使用者需要…...

麒麟系统—— openKylin 安装 java

麒麟系统—— openKylin 安装 java JDK 一、准备工作1. 确保麒麟系统 openKylin 已经安装完毕。2. 了解 java JDK 的版本信息,以便下载合适的安装包。 二、安装 java JDK3. 将下载好的 java JDK 安装包解压到指定目录。4. 配置环境5. 验证安装结果 本文将分享如何在…...

终极CH55xduino指南:5分钟构建低成本USB微控制器项目

终极CH55xduino指南:5分钟构建低成本USB微控制器项目 【免费下载链接】ch55xduino An Arduino-like programming API for the CH55X 项目地址: https://gitcode.com/gh_mirrors/ch/ch55xduino CH55xduino为CH55X系列低成本MCS51 USB微控制器提供了完整的Ardu…...

3个思维转变:用Obsidian Homepage打造你的第二大脑控制中心

3个思维转变:用Obsidian Homepage打造你的第二大脑控制中心 【免费下载链接】obsidian-homepage Obsidian homepage - Minimal and aesthetic template (with my unique features) 项目地址: https://gitcode.com/gh_mirrors/obs/obsidian-homepage 你是否曾…...

终极指南:如何用FanControl彻底解决电脑风扇噪音问题 [特殊字符]

终极指南:如何用FanControl彻底解决电脑风扇噪音问题 🎯 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHu…...

手把手调SerDes眼图:从FFE系数到示波器实测,看懂那个‘翘起来’的信号

手把手调SerDes眼图:从FFE系数到示波器实测,看懂那个‘翘起来’的信号 在高速数字电路设计中,SerDes(串行器/解串器)技术已经成为现代通信系统的核心。当信号速率突破10Gbps大关时,工程师们常常会在示波器上…...

深度架构解析:深圳地铁大数据客流分析系统的技术演进与架构哲学

深度架构解析:深圳地铁大数据客流分析系统的技术演进与架构哲学 【免费下载链接】SZT-bigdata 深圳地铁大数据客流分析系统🚇🚄🌟 项目地址: https://gitcode.com/gh_mirrors/sz/SZT-bigdata 在智慧城市建设的浪潮中&#…...

技能管理框架skill-mix:用YAML与声明式配置构建可量化技能体系

1. 项目概述与核心价值最近在梳理团队的知识库和技能树时,我又一次深刻体会到,一个清晰、可量化、可追踪的技能管理体系对个人成长和团队效能有多重要。无论是作为技术负责人评估团队战斗力,还是作为一线开发者规划自己的学习路径&#xff0c…...

别再傻傻分不清了!全桥、半桥、推挽电源拓扑,到底哪个更适合你的项目?

全桥、半桥与推挽拓扑实战选型指南:从理论到工程落地的关键抉择 在电力电子设计领域,拓扑结构的选择往往决定着整个项目的成败。当我第一次面对500W工业电源设计需求时,曾天真地认为"功率越大拓扑越高级"——这个错误认知让我付出了…...

Imagine Engine时间线管理:掌握游戏节奏的完整教程 [特殊字符]

Imagine Engine时间线管理:掌握游戏节奏的完整教程 🎮 【免费下载链接】ImagineEngine A project to create a blazingly fast Swift game engine that is a joy to use 🚀 项目地址: https://gitcode.com/gh_mirrors/im/ImagineEngine …...

Android 显示框架:SurfaceFlinger与合成策略探析

1. SurfaceFlinger的核心角色解析 第一次拆解Android显示系统时,我被SurfaceFlinger这个名称逗笑了——"Surface抛洒者"?后来发现这个命名意外地准确。想象你正在布置多屏艺术展,SurfaceFlinger就是那个决定每幅画作展示位置、叠加…...

如何彻底清理Mac应用残留文件:Pearcleaner完整指南

如何彻底清理Mac应用残留文件:Pearcleaner完整指南 【免费下载链接】Pearcleaner A free, source-available and fair-code licensed mac app cleaner 项目地址: https://gitcode.com/gh_mirrors/pe/Pearcleaner 你是否曾经遇到过这样的情况:删除…...