经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 程序设计 » 编程经验 » 查看文章
Jmeter SHA512接口加密测试
来源:cnblogs  作者:dabeen  时间:2024/8/7 8:48:37  对本文有异议

前言:最近,我遇到一些测试接口必须传入经过SHA512加密后的sign签名,并且签名有1小时时间限制,即签名不是一成不变超1小时就会过期,这导致在测试过程中就得频繁手工去更新签名。其实Jmeter是有提供函数去进行自动转换的,以下详解

SHA512加密,可以去网上搜索SHA512在线转换

 

1、已知,接口请求必须传入4个参数tenantCode、timestamp、nonce、sign

  1. {
  2. "tenantCode":"",
  3. "timestamp":"",
  4. "nonce":"",
  5. "sign":""
  6. }

其中sign是经过SHA512加密的签名,计算规则如下【其中appSecret=573e182924f8d40fd4566989ace22729e8d4a1cb】:

  • 按照顺序tenantCode${tenantCode}nonce${nonce}timestamp${timestamp}${appSecret}拼接成一串字符串
  • 对这串字符串进行SHA512加密
  • 对加密后的字符串转大写,就得到sign

 

2、例子:

  1. {
  2. "tenantCode":"jkdsa",
  3. "timestamp":"1722938712",
  4. "nonce":"3754",
  5. "sign":"5F61CFD4AE4FD799C644659F14B81ABF510941F6EDA4C16349018E6A3872281A7794A43A3CF3E7734B7AD1E553ADA562AAA5DBA90188CF22A8781CE8BAF7C158"
  6. }

以下是手工根据规则计算sign的过程

  • 拼接字符串为:tenantCodejkdsanonce3754timestamp1722938712573e182924f8d40fd4566989ace22729e8d4a1cb
  • 进行SHA512加密后为:5f61cfd4ae4fd799c644659f14b81abf510941f6eda4c16349018e6a3872281a7794a43a3cf3e7734b7ad1e553ada562aaa5dba90188cf22a8781ce8baf7c158
  • 转大写后为:5F61CFD4AE4FD799C644659F14B81ABF510941F6EDA4C16349018E6A3872281A7794A43A3CF3E7734B7AD1E553ADA562AAA5DBA90188CF22A8781CE8BAF7C158

 

3、由于sign签名是有1小时时间限制的,测试接口过程中为了减少手工频繁去更新签名,我用了Jmeter的函数去自动转换,用到V函数digest函数changeCase函数

3.1 定义变量值

3.2 接口请求传参 。注意sign,用到3个函数:V函数(用于执行变量名、嵌套函数)、digest函数(用于加密)、changeCase函数(用于字符转换大小写)

  1. {
  2. "tenantCode":"${tenantCode}",
  3. "timestamp":"${timestamp}",
  4. "nonce":"${nonce}",
  5. "sign":"${__changeCase(${__digest(SHA-512,${__V(tenantCode${tenantCode}nonce${nonce}timestamp${timestamp}${appSecret})},,,)},,)}"
  6. }

3.3 执行接口请求,查看接口请求参数已自动得到sign签名

 

原文链接:https://www.cnblogs.com/dabeen/p/18345761

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号