接口测试 05 -- 接口加密处理

前言

实际工作当中,涉及到接口加密时,每一个公司加密方式都是不一样的。

 1. 遇到接口加密的解决方法:
① 如果是一些常用的加密,可以通过 (第三方)工具或者代码去解决。

② 如果是开发自己封装的加密方法,核心逻辑外人是无法知道的,最好的方式让开发去协助你。提供接口去进行调用,然后进行加密/解密的操作

③ 如果开发不肯提供接口,那么让开发协助你,把一些固定的数据给你手动进行加密一下。
④ 如果你能够去解决核心代码,那自己用代码去进行实现(难度高)。

=====================================================================

2. 为什么会有接口加密?它的目的是什么?

因为在网络数据的传输过程中,不能绝对的保证数据安全,所以接口加密是为了数据的安全性、项目的安全性。

比如一个公网项目的登录输入的密码、支付项目的银行卡号、密码登,不能是明文,所以需要进行加密。

=====================================================================

3. 提高安全的方式有哪几种呢?
① 在对应的协议加认证证书: http请求 --- https请求(花钱去买一个安全)

② 通过一些常用的算法去进行解决:MDHSHAI 编码: BASE64

③ 通过对应加密方式去进行加密:对称加密、非对称加密

=====================================================================

4. 对加密接口进行测试的前提条件

① 明确项目中哪些接口是加密的,加密的数据是什么(例如:是账号、密码,还是其他?)

② 明确加密数据的加密类型、加密模式

③ 以及无论如何我们都需要用到对应的[密钥]


1. 对称加密与非对称加密

加密接口的应用场景:

敏感信息:身份证、银行卡号、信用卡号、账户、密码等等。

不同国家/公司的加密要求各不相同,所以我们最重要的理解思路。

在数字加密算法中,通过可划分为对称加密和非对称加密。

 1.1 对称加密概念

在对称加密算法中,加密和解密使用的是同一把钥匙。

即:使用相同的密匙对同一密码进行加密和解密。

======================================================================

加密过程如下

加密:原文 + 密匙 = 密文

解密:密文 - 密匙 = 原文

--------------->>>

举个例子:

小明给小红发送微信消息表白,为了避免小红手机临时不在身边而导致消息被其他人看到,原本小明计划发送”我爱你一生一世”,小明和好加密的方式为:每个字通过”新华字典”中多少页第几个字在第几页,后两位是字)。当小红收到消息时,则自然明白文字的含义。

接口测试 05 -- 接口加密处理_第1张图片

常用的对称加密算法

下面是一些常用的对称加密算法:

①  DES(Data Encryption Standard):是一种使用56位密钥的对称加密算法,已经不再被广泛使用,因为其密钥长度较短,安全性较低。

---------->>>

② 3DES(Triple Data Encryption Standard):是对DES算法的改进,通过对数据应用DES算法三次来提高安全性。

---------->>>

③  AES(Advanced Encryption Standard):是目前广泛使用的对称加密算法,支持128位、192位和256位密钥长度,安全性较高。

---------->>>

④  Blowfish:是一种使用变长密钥的对称加密算法,可以使用32位到448位的密钥长度。

---------->>><

你可能感兴趣的:(软件测试,python进阶,python)