接口自动化测试框架中动态参数接口,加密接口,签名接口你们是怎么处理的?

动态参数:可通过热加载形式(在代码执行过中自动去yaml里面执行外部的函数)

接口测试加密解密简介:

       对称加密(私钥加密,只有一个密钥)AES,DES,BASE64 特点是:加密和解密有相同的密钥

       非对称加密(私钥加密)RSA

       主流不解密算法MD5,SHA,HmacSHA

       接口签名SIGN详解

 

二、非对称加密:(双钥加密)RSA

       有公钥和私钥两个密钥。公钥加密,私钥解密,私钥加密,公钥解密

Postman本身不支持这种加密方式,需要引入外部js文件

三、只加密不解密,MD5,SHA,HmacSHA

MD5:var md5_str=CryptoJS.MD5(“admin”).toString();默认情况是32位小写

Console.log(md5_str)

SHA:var sha_str=CryptoJS.SHA224(“admin”).toString();

HmacSHA哈希运算消息验证加密算法:var hmac_sha=CryptoJS.HmacSHA(“admin”,“密钥“).toString();

测试过程中都是加密不解密,前端后端开发对数据加密后进行加密数据对比

四、Sign签名(自定义加密方式),比混合加密更加严格

       1.首先先获取到所有的参数(params和body)

       2.把所有参数组合成一个字典

       3.自定义一个根据key的ACSII进行升序排列的算法,把所有的参数和值进行升序排序

       4.获取一个订单号随机

       5.获取一个当前的时间戳

       6.把订单号参数之前和时间戳加到参数之后

       7.把最终的参数进行加密(混合)处理,生成sign

       8.把sign签名在请求头里面传给后端。

       Sign签名生命周期一般是1~3分钟

posted @ 2024-01-15 22:08  yongheng999  阅读(176)  评论(0)    收藏  举报