接口测试中SHA256加密算法实现

引言

做接口测试的时候,是否遇到一些需要加密的接口,但是不知如何进行测试呢?今天我们来学习一下SHA256加密算法接口如何进行测试的。

算法介绍

SHA256加密算法
SHA256是SHA-2下细分出的一种算法。SHA-2,名称来自于安全散列算法2(英语:Secure Hash Algorithm 2)的缩写,一种密码散列函数算法标准(哈希算法),由美国国家安全局研发,属于SHA算法之一,是SHA-1的后继者。
  SHA-2下又可再分为六个不同的算法标准,包括了:SHA-224、SHA-256、SHA-384、SHA-512、SHA-512/224、SHA-512/256。这些变体除了生成摘要的长度 、循环运行的次数等一些微小差异外,
  算法的基本结构是一致的。对于任意长度的消息,SHA256都会产生一个256bit长的哈希值,称作消息摘要。这个摘要相当于是个长度为32个字节的数组,通常用一个长度为64的十六进制字符串来表示。
SHA256特点:
  1. 单向加密,不可解密
  2. 同明文,同密文
  3.应用场景: 网站验证密码为了保证安全,不会储存明文密码,而直接储存 hash

代码实现

SHA256加密算法的接口测试
  接口地址: http://47.96.181.17:8098/login
  返回格式: json
  请求方式: POST
  请求参数:{“userName”:“您的用户名”,“password”:“sha256加密后的密码”}
  请求头:
  键:Content-Type 值:application/x-www-form-urlencoded
  键:X-Requested-With 值:XMLHttpRequest
  成功返回示例:

import requests
import hashlib
## 1.实例化一个sha256对象
sha256=hashlib.sha256()
## 2.加密原始值-比如密码,需要将字符串转成bytes(字节)
sha256.update('111111'.encode('utf-8'))
#print(sha256.hexdigest())
header={"Content-Type":"application/x-www-form-urlencoded","X-Requested-With":"XMLHttpRequest"}
#3.发送登录接口信息
body={"userName":"sqqdcl","password":sha256.hexdigest()}
resp=requests.post('http://47.96.181.17:8098/login',data=body,headers=header)
print(resp.text)

测试结果:

E:\Users\Administrator\Anaconda3\python.exe "I:/temp code/python/ ST project1/SHA256 .py"
{"success":"true","systemUser":{"userId":"1","userName":"sqqdcl","nickname":"sqqdcl3","avatarPath":"file/avatar/2020-02-06/","avatarName":null,"securityDigest":null,"rememberMe":false},"jumpUrl":"index"}

Process finished with exit code 0

接口测试中还有很多加密算法,如MD5、RSA、AES等,但各种算法的作用不同,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

笨猪起飞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值