jmeter使用JSR223预处理程序通过RSA加密传参

密码传参是通过RSA加密的, jmeter如何实现RSA加密传参

1.新增JSR223预处理程序

脚本语言选择java

 2.脚本可以找开发提供加密代码, 引用相关的包即可

import org.apache.commons.codec.binary.Base64;
import sun.security.rsa.RSAPublicKeyImpl;
import javax.crypto.Cipher;
import org.bouncycastle.jce.provider.BouncyCastleProvider;

try {
	String publicKeyStr = "M****";
	String password = "***";
	byte[] data = Base64.decodeBase64(publicKeyStr.getBytes());
	RSAPublicKeyImpl publicKey = new RSAPublicKeyImpl(data);
	Cipher cipher = Cipher.getInstance("RSA/None/NoPadding", new BouncyCastleProvider());
	cipher.init(1, publicKey);
	String pwd = Base64.encodeBase64String(cipher.doFinal(password.getBytes()));
	vars.put("editmerchant_sign",pwd);
} catch (Exception e) {
	e.printStackTrace();
}

3.赋值加密后的pwd给变量名editmerchant_sign

4.http请求中, 直接传${editmerchant_sign}

 5.查看结果树, password传参为加密后的参数

猜你喜欢

转载自blog.csdn.net/bugua3542/article/details/127208214