Jmeter用BeanShell Sampler调用java写的jar包进行MD5加密

2022-11-02,,,,

【前言】

在工作中,有时候我们请求的参数可能需要加密,比如登录接口中的密码做了加密操作,今天我就给大家介绍一种方法:Jmeter用BeanShell Sampler调用java写的jar包进行MD5加密。

【正文】

1.我们首先在Eclipse里面写好MD5的加密文件,用Eclipse执行一遍,确保程序调用不会报错。

Eclipse展示图:

Str2MD5.java 代码:

 package com.md5;

 import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException; public class Str2MD5 { public String MD5(String sourceStr) {
String result = "";
try {
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(sourceStr.getBytes());
byte b[] = md.digest();
int i;
StringBuffer buf = new StringBuffer("");
for (int offset = 0; offset < b.length; offset++) {
i = b[offset];
if (i < 0)
i += 256;
if (i < 16)
buf.append("0");
buf.append(Integer.toHexString(i));
}
result = buf.toString();
System.out.println("MD5(" + sourceStr + ",32) = " + result);
// System.out.println("MD5(" + sourceStr + ",16) = " + buf.toString().substring(8, 24));
} catch (NoSuchAlgorithmException e) {
System.out.println(e);
}
return result;
}
}

2.写好这个类之后,再写一个test类调用一下这个方法:

Eclipse展示图:

Test.java代码如下:

 package com.md5;

 public class test {

     public static void main(String[] args) {
String reString = new Str2MD5().MD5("suneee1234");
System.out.println(reString);
}
}

3.将文件导出为jar包,并放到 Jmeter的lib/ext文件目录下

选择整个包,点击Export:

选择Java —> JAR file:

勾选导出内容,给导出的文件命名,点击Finish:

导出成功后,文件会生成在你这个Eclipse的工作空间中(在第一次打开Eclipse,会选择一个工作空间,用来存储文件)

找到你自己Jmeter目录下的lib\ext,将这个jar包复制粘贴进去:

4.在Jmeter里面调用这个jar包

BeanShell Sampler 代码如下:

 import com.md5.Str2MD5;
String res = new Str2MD5().MD5("suneee1234");
System.out.println(res);
props.put("md5",res.toString());

运行结果:

上面就是Jmeter用BeanShell Sampler调用java写的jar包进行MD5加密全过程!

至于还有一种方法网上说是直接调用MD5函数,但是我实在没有找到,是不是我版本太高了?尴尬......

Jmeter用BeanShell Sampler调用java写的jar包进行MD5加密的相关教程结束。

《Jmeter用BeanShell Sampler调用java写的jar包进行MD5加密.doc》

下载本文的Word格式文档,以方便收藏与打印。