当前位置: 首页 > news >正文

jmeter通过BeanShell对接口参数进行MD5和HmacSHA256加密【杭州多测师_王sir】

一、在eclipse里面编写MD5加密算法

package com.Base64;import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;public class Md5Utils {public static 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;}public static void main(String[] args) {String md5Str = md5("123456");System.out.println(md5Str);}
}

二、在eclipse里面自己编写HMACSHA256算法

package com.Base64;import javax.crypto.Mac;
import javax.crypto.spec.SecretKeySpec;public class HMACSHA256 {/*** 将加密后的字节数组转换成字符串** @param b 字节数组* @return 字符串*/public  static String byteArrayToHexString(byte[] b) {StringBuilder hs = new StringBuilder();String stmp;for (int n = 0; b!=null && n < b.length; n++) {stmp = Integer.toHexString(b[n] & 0XFF);if (stmp.length() == 1)hs.append('0');hs.append(stmp);}return hs.toString().toLowerCase();}/*** sha256_HMAC加密* @param message 消息* @param secret  秘钥* @return 加密后字符串*/public static String sha256_HMAC(String message, String secret) {String hash = "";try {Mac sha256_HMAC = Mac.getInstance("HmacSHA256");SecretKeySpec secret_key = new SecretKeySpec(secret.getBytes(), "HmacSHA256");sha256_HMAC.init(secret_key);byte[] bytes = sha256_HMAC.doFinal(message.getBytes());hash = byteArrayToHexString(bytes);} catch (Exception e) {System.out.println("Error HmacSHA256 ===========" + e.getMessage());}return hash;}public static void main(String[] args) {String data = sha256_HMAC("123", "abc");System.out.println(data);}}

三、在eclipse里面写好之后,导出来为jar包,命名为:base64.jar  放在jmeter/lib/ext中

1.md5方法就一个参数,就是需要加密的数据

2.sha256_HMAC方法接收两个参数,message:需要被加密的数据,secret:加密的秘钥

四、在jmeter测试计划底部library中添加该jar包,重启jmeter
新建http请求后,在下面加一个前置处理器:BeanShell PreProcessor
直接导入该jar包里面的java包,Md5Utils和HMACSHA256都在在com.Base64这个包里,直接引入,如果导入不了在jmeter的测试计划底部引入即可
插入如下代码:

import com.Base64.*;
//1.测试通过MD5进行加密
String md5Str = Md5Utils.md5("123456"); 
vars.put("loginPwd",md5Str);   //把加密后的内容赋值给到loginPwd变量
log.info(md5Str); //2.测试通过HMACSHA256进行加密 HMACSHA256 psSha256 = new HMACSHA256(); //调用HMACSHA256类的sha256_HMAC方法,进行hmacsha256加密 //通过abc秘钥对密码123456进行加密 String psStr=psSha256.sha256_HMAC("123456","abc"); log.info(psStr);

五、通过创建前置处理器beanshell脚本进行加密处理

六、对加密后的数据进行引用

相关文章:

jmeter通过BeanShell对接口参数进行MD5和HmacSHA256加密【杭州多测师_王sir】

一、在eclipse里面编写MD5加密算法 package com.Base64;import java.security.MessageDigest; import java.security.NoSuchAlgorithmException;public class Md5Utils {public static String md5(String sourceStr) {String result "";try {MessageDigest md Mess…...

基于自适应曲线阈值和非局部稀疏正则化的压缩感知图像复原研究【自适应曲线阈值去除加性稳态白/有色高斯噪声】(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…...

Spring AOP 切点表达式

参考博客&#xff1a; 参考博客...

打破传统直播,最新数字化升级3DVR全景直播

导语&#xff1a; 近年来&#xff0c;随着科技的不断创新和发展&#xff0c;传媒领域也正经历着一场前所未有的变革。在这个数字化时代&#xff0c;直播已经不再仅仅是在屏幕上看到一些人的视频&#xff0c;而是将观众带入一个真实世界的全新体验。其中&#xff0c;3DVR全景直…...

网络安全--利用awk分析Apache日志

一、溯源 你会溯源吗&#xff1f;怎么溯 拿到日志&#xff08;ssh登录日志&#xff0c;Apache日志&#xff09;&#xff0c;通过日志溯到ip&#xff0c;对日志进行每天的拆分&#xff0c;第二通过awk日志分析工具对每天的日志进行拆分&#xff0c;分析某一个ip今天对我访问多…...

计算机视觉一 —— 介绍与环境安装

傲不可长 欲不可纵 乐不可极 志不可满 一、介绍 研究理论和应用 - 研究如何使机器“看”的科学 - 让计算机具有人类视觉的所有功能 - 让计算机从图像中&#xff0c;提取有用的信息&#xff0c;并解释 - 重构人眼&#xff1b;重构视觉皮层&#xff1b;重构大脑剩余部分 计…...

如何看懂统一社会信用代码?

在查看企业信息的时候&#xff0c;我们通常第一时间查看的就是该企业的照面信息&#xff1a;企业名称&#xff0c;企业信用代码&#xff0c;企业法人等等。 其中统一社会信用代码就是给各个企业组织编号&#xff0c;是便于统一识别管理的一串代码&#xff0c;类似我们的身份证…...

计算机网络 运输层端口号,复用、分用

...

systrace: 系统级跟踪工具的解析

关于作者&#xff1a;CSDN内容合伙人、技术专家&#xff0c; 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 &#xff0c;擅长java后端、移动开发、人工智能等&#xff0c;希望大家多多支持。 目录 一、导读二、概览三、获取systrace文件3.1 通过python命令获取3.1.…...

关于青少年学习演讲与口才对未来的领导力的塑造的探析

标题&#xff1a;青少年学习演讲与口才对未来领导力的塑造&#xff1a;一项探析 摘要&#xff1a; 本论文旨在探讨青少年学习演讲与口才对未来领导力的塑造的重要性和影响。通过分析演讲和口才对青少年的益处&#xff0c;以及如何培养这些技能来促进领导力的发展&#xff0c;我…...

大数据分析案例-基于KMeans和DBSCAN算法对汽车行业客户进行聚类分群

&#x1f935;‍♂️ 个人主页&#xff1a;艾派森的个人主页 ✍&#x1f3fb;作者简介&#xff1a;Python学习者 &#x1f40b; 希望大家多多支持&#xff0c;我们一起进步&#xff01;&#x1f604; 如果文章对你有帮助的话&#xff0c; 欢迎评论 &#x1f4ac;点赞&#x1f4…...

Vue 3 中定义组件常用方法

在Vue 3 中有多种定义组件的方法。从选项到组合再到类 API&#xff0c;情况大不相同 1、方式一&#xff1a;Options API 这是在 Vue 中声明组件的最常见方式。从版本 1 开始可用&#xff0c;您很可能已经熟悉它。一切都在对象内声明&#xff0c;数据在幕后由 Vue 响应。它不是…...

Linux | curl命令调用接口时查看调用时长和详情

关注wx&#xff1a; CodingTechWork 引言 在服务器中通过curl命令调用接口时&#xff0c;我们经常需要分析一些时长。本文主要总结两种方式进行处理。 curl命令 使用time命令 time curl -k -u <username>:<password> https://127.0.0.1/xxxx -vvv 使用文本 编…...

用ngrok实现内网穿透,一行命令就搞定!

最近在写支付的东西&#xff0c;调试时候需要让支付平台能够回调本地接口来更新支付成功的状态。但由于开发机器没有公网IP&#xff0c;所以需要使用内网穿透来让支付平台能够成功访问到本地开发机器&#xff0c;这样才能更高效率的进行调试。 推荐内网穿透的文章已经很多很多…...

C++ 混合Python编程 及 Visual Studio配置

文章目录 需求配置环节明确安装的是64位Python安装目录 创建Console C ProjectCpp 调用 Python Demo 参考 需求 接手了一个C应用程序&#xff0c;解析csv和生成csv文件&#xff0c;但是如果要把多个csv文件合并成一个Excel&#xff0c;分布在不同的Sheet中&#xff0c;又想在一…...

斐波拉契数列+二进制--夏令营

1. f[40]{0,1} 数组赋值&#xff1a;只赋值前两个的话&#xff0c;剩余的自动为0 2.先要自己写出斐波拉契数列判断一下应该要多少个斐波拉契数样例&#xff0c;第39项已经超样例数500了&#xff0c;所以够用 3.就是把一个数字拆分成斐波拉契数列里的数的和嘛&#xff0c;但是…...

【使用Hilbert变换在噪声信号中进行自动活动检测】基于Hilbert变换和平滑技术进行自动信号分割和活动检测研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…...

Android 13 Launcher——屏蔽上拉到应用列表

背景 Launcher定制需要将原先的应用列表去掉,可以从根源去掉,就是将上拉出现应用列表的上拉手势直接屏蔽,让其不能上拉出现应用列表界面,在研究的过程中顺便将下拉出现负一屏的逻辑也研究了下,如下就是具体实现。 目录 背景 一.如何屏蔽上拉出现应用列表 一.如何屏蔽上拉…...

Java 基础知识点

Object 类相关方法 getClass 获取当前运行时对象的 Class 对象。 hashCode 返回对象的 hash 码。 clone 拷贝当前对象&#xff0c; 必须实现 Cloneable 接口。浅拷贝对基本类型进行值拷贝&#xff0c;对引用类型拷贝引用&#xff1b;深拷贝对基本类型进行值拷贝&#xff0c;对…...

jenkins容器内CI/CD 项目失败问题

问题&#xff1a; 在jenkins 的docker容器内CI/CD制作vue项目镜像失败 1、docker权限问题 permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/build?buildargs%…...

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...

vscode里如何用git

打开vs终端执行如下&#xff1a; 1 初始化 Git 仓库&#xff08;如果尚未初始化&#xff09; git init 2 添加文件到 Git 仓库 git add . 3 使用 git commit 命令来提交你的更改。确保在提交时加上一个有用的消息。 git commit -m "备注信息" 4 …...

深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录

ASP.NET Core 是一个跨平台的开源框架&#xff0c;用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录&#xff0c;以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...

日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻

在如今就业市场竞争日益激烈的背景下&#xff0c;越来越多的求职者将目光投向了日本及中日双语岗位。但是&#xff0c;一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧&#xff1f;面对生疏的日语交流环境&#xff0c;即便提前恶补了…...

Leetcode 3576. Transform Array to All Equal Elements

Leetcode 3576. Transform Array to All Equal Elements 1. 解题思路2. 代码实现 题目链接&#xff1a;3576. Transform Array to All Equal Elements 1. 解题思路 这一题思路上就是分别考察一下是否能将其转化为全1或者全-1数组即可。 至于每一种情况是否可以达到&#xf…...

安宝特方案丨XRSOP人员作业标准化管理平台:AR智慧点检验收套件

在选煤厂、化工厂、钢铁厂等过程生产型企业&#xff0c;其生产设备的运行效率和非计划停机对工业制造效益有较大影响。 随着企业自动化和智能化建设的推进&#xff0c;需提前预防假检、错检、漏检&#xff0c;推动智慧生产运维系统数据的流动和现场赋能应用。同时&#xff0c;…...

使用分级同态加密防御梯度泄漏

抽象 联邦学习 &#xff08;FL&#xff09; 支持跨分布式客户端进行协作模型训练&#xff0c;而无需共享原始数据&#xff0c;这使其成为在互联和自动驾驶汽车 &#xff08;CAV&#xff09; 等领域保护隐私的机器学习的一种很有前途的方法。然而&#xff0c;最近的研究表明&…...

DAY 47

三、通道注意力 3.1 通道注意力的定义 # 新增&#xff1a;通道注意力模块&#xff08;SE模块&#xff09; class ChannelAttention(nn.Module):"""通道注意力模块(Squeeze-and-Excitation)"""def __init__(self, in_channels, reduction_rat…...

汽车生产虚拟实训中的技能提升与生产优化​

在制造业蓬勃发展的大背景下&#xff0c;虚拟教学实训宛如一颗璀璨的新星&#xff0c;正发挥着不可或缺且日益凸显的关键作用&#xff0c;源源不断地为企业的稳健前行与创新发展注入磅礴强大的动力。就以汽车制造企业这一极具代表性的行业主体为例&#xff0c;汽车生产线上各类…...

【磁盘】每天掌握一个Linux命令 - iostat

目录 【磁盘】每天掌握一个Linux命令 - iostat工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景 注意事项 【磁盘】每天掌握一个Linux命令 - iostat 工具概述 iostat&#xff08;I/O Statistics&#xff09;是Linux系统下用于监视系统输入输出设备和CPU使…...