一、介绍

  在做接口测试的时候,如果是外部用户直接能看到我们的参数,可能会造成接口不安全,比如直接用明文的参数请求接口,把参数自己定义,脏数据就会存到我们的数据库中,严重的话会导致关系统崩溃。

  所以我们很有必要对请求参数进行加密处理,提高系统的安全性。

二、加解密说明

2.1、原理:

 

 

对于我们测试人员来说:

 

 

1、客户端和服务器的加解密工具必须一致

2、加解密程序从客户端中拷贝即可

那我们在测试工作中该如何做加解密工作呢?

1、找开发拷⻉加密和解密⼯具
2、确定⼯具如何使⽤(如何加密、如何解密)
3、明确请求示例(请求参数格式及使⽤)
 

2.2、案例

说明:

接⼝说明:登录接⼝
请求⽅法:POST
请求参数类型:form
url:"http://mobile-p2p-test.itheima.net/phone/member/login"
请求参数
data = {
"member_name": "13012345678",
"password": "test123"
}
(1)为加密解密

 

 

 

 2.3、加解密案例

(1)加解密工具

 

 (2)确定⼯具如何使⽤

 

 (3)、明确请求示例

 

 (4)加解密应⽤示例:

 

 2.4、加密解密标准

说明:加密标准常⽤美国联邦政府⾼级密码标准(AES) 
安装:pip install pycryptodome==3.9.6 -i https://pypi.douban.com/simple
提示:拿到⼯具如果报错提示缺少库,需要跟开发确定安装的依赖库。

三、拓展

1.接口参数加密(基础加密)

2.接口参数加密+接口时效性验证(一般达到这个级别已经非常安全了)

3.接口参数加密+时效性验证+私钥(达到这个级别安全性固若金汤)

4.接口参数加密+时效性验证+私钥+Https(我把这个级别称之为金钟罩,世间最安全莫过于此)

加密算法(对称加密和非对称加密):

对称加密:加密数据用的密钥,跟解密数据用的密钥是一样的。

非对称加密:加密数据用的密钥(公钥),跟解密数据用的密钥(私钥)是不一样的。

1.AES加密算法

2.DES加密算法

3.RSA加密算法(非对称加密算法)

4.Base64加密算法

5.MD5加密算法

四、总结

  我们测试人员在对接口进行测试的时候,在安全测试阶段一定要考虑接口参数的安全性,如果是明文传输或者不加密进行传输,很容易就被截获请求并篡改参数,这就会导致系统的安全性降低,很可能带来更大的商业风险。

  接口加解密的方式与算法有很多,要考虑使用更加安全的,不易被破解的算法与方式进行加解密操作,提高系统的安全性。

posted on 2022-12-18 20:59  zj8970  阅读(54)  评论(0编辑  收藏  举报