前言:
接口出于安全考虑,开发经常会对接口传输参数进行MD5、AES等方式加密,故而,这里记录下我是怎么通过jmeter去处理AES加密的。
什么是AES加密:
AES高级加密标准,在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。AES是一种对称性加密方式。
目标:
进行账号注册操作,接口的请求内容需要进行AES加密,响应内容需要进行AES解密。
操作:
1、定义一个BeanShell 预处理程序“requestParams”,主要用于存放请求参数。(String存放字符串,json串中的双引号需要加个/)
2、定义一个BeanShell 预处理程序处理请求参数的加密。(这里调用了个我自己封装的jar,是用来处理AES加密的,后面会提及)
3、在HTTP请求中引用加密后的请求参数“enString”。
4、定义一个BeanShell 后置处理程序处理响应参数的解密。(同样是通过我自个封装的jar来处理AES的解密)
5、添加一个响应断言,用于判断响应是否成功。
以上就是jmeter进行AES加密请求参数、解密响应参数的基本过程。下面我将介绍下我的AES加解密工具jar。
可以使用下列代码进行调试:
编写完成如上代码后,需进行打jar包操作
1、选择 “Open Module Setting”
2、选择 “Artifacts”进行如下如的配置
3、勾选 “Include in project build”
4、进行 “Build Project”
5、查看是否成功生成 jar
评论区