各位小伙伴,大家好,今天给大家带来的是接口测试加密了我们该怎么测试。
首先我们来了解一下什么是接口,在我们生活中,水管接口,管道接口等等,在我们软件中通常说的是客户端和服务端之间数据传输的接口。我们要测试的就是数据从客户端传输到服务器端,数据是否是正确的,服务器端返回的数据是否是正确的等等。
我们的数据从客户端接口出来,然后经过网络,传输到服务器端的接口。
这时候就有个问题出现,我们的数据在网络上可能会被不法分子获取,然后篡改,所以我们要给数据加密。
客户端数据加密后通过网络发送给服务端,服务端的接口获取到加密的数据之后,需要进行解密。服务端验证后再发送信息给客户端,告诉客户端数据是否正确。
接下来说一下加密的方式,一般有三种:
- 对称加密:接口数据前从开发获取对称公钥,基于对称公钥可以加密请求数据,解密响应报文。
- 非对称加密:非对称加密算法,有两个密钥,一个称为公开密钥 (publickey),另一个称为 私有密钥 (private key),加密和解密使用的是两个不同的密钥,所以这种算法称为非对称加密算法。
- 摘要加密:接口数据前调用MD5,SHA1进行编码,服务端对比编码后的字符串是否一致
通俗的讲, 对称加密就是事先说好一个加密方式,发送方把数据进行加密,接收方进行解密,密钥都是一样的,这种方式有个缺点是一旦一方的密钥被盗,那么数据就能解密。类似于谍战片中,电报发送信息,接收方通常拿个字典去解密电文,这个字典就是密钥。
非对称加密就解决了对称加密的不足,加密一个密钥,解密一个密钥。用公钥进行加密就必须使用私钥进行解密。
摘要加密:是一种更简便的加密方式,就是把我的数据进行MD5加密,得到一串字符串。通过字符串进行比较。
那么我们知道了接口测试的加密原理,那么我们在进行接口测试的时候遇到了加密的问题,就知道怎么进行测试了,如果你的加密是对称加密,那么你就需要问开发拿到密钥来,然后通过密钥对数据进行加密,然后在通过接口测试工具测试接口。如下图:
如果是非对称加密,那么你就问开发,发送数据是用私钥还是公钥进行数据加密,然后拿到对应的密钥来,对数据进行加密。类似于上图,只不过加密的密钥不一样。
用的更多的是摘要加密,就是使用MD5加密算法对数据进行加密,然后发送给服务器端。比如需要对每个数据进行MD5加密,然后需要每个或几个数据进行组合后再进行MD5加密(这种方式也叫签名),如下图:
总结:接口测试加密了怎么测?首先和开发沟通,了解开发是使用什么加密方式,然后拿到对应的密钥,测试时,把数据进行加密,然后发送出去就可以了。
感谢每一个认真阅读我文章的人!!!
作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。