Postman轻松签名,让SHA256withRSA保驾护航!

这篇具有很好参考价值的文章主要介绍了Postman轻松签名,让SHA256withRSA保驾护航!。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

 postman接口签名教程:https://www.bilibili.com/video/BV1r14y1A7MQ/?

目录:导读

前言

获取pmlib

引入依赖bundle.js,有以下两种方式:

使用Pre-request Script对请求进行加签(具体加签字段请看自己项目)

结语


前言

在接口测试中,我们经常需要对请求进行签名,以保证数据的安全性。而SHA256withRSA是一种较为常见的签名算法,它可以使用私钥对数据进行签名,使用公钥进行验签。

但是,实现该算法签名可能会涉及到一些繁琐的操作,给我们的工作带来不小的困扰。

今天,我要向大家介绍一个神器——Postman,它可以轻松完成SHA256withRSA签名的实现,让您的API请求得到更加完善的保护。

接下来,我将简单介绍如何使用Postman实现SHA256withRSA签名,并且分享一些注意事项和技巧,希望能让大家轻松掌握这个技能。

获取pmlib

引入依赖bundle.js,有以下两种方式:

  1. 从github下载postman collection ,并导入进你的集合里
    sha256withrsa签名,软件测试,经验分享,postman,postman,软件测试,功能测试,测试工具,接口测试
  2. 将所需js所需js所需js全部复制保存成一个全局变量如:pmlib_code
    sha256withrsa签名,软件测试,经验分享,postman,postman,软件测试,功能测试,测试工具,接口测试
  3. 把自己的私钥设置成环境变量如:pri_key
    sha256withrsa签名,软件测试,经验分享,postman,postman,软件测试,功能测试,测试工具,接口测试

使用Pre-request Script对请求进行加签(具体加签字段请看自己项目)

// 使用eval执行js
eval(pm.globals.get('pmlib_code'))

// 生成rfctime
let date = new Date()
let y = date.getFullYear()
let m = date.getMonth()+1<10?'0'+(date.getMonth()+1):(date.getMonth()+1)
let d = date.getDate()<10?'0'+date.getDate():date.getDate()
let hh = date.getHours()<10?'0'+date.getHours():date.getHours();            
let mm = date.getMinutes()<10?'0'+date.getMinutes():date.getMinutes()
let ss = date.getSeconds()<10?'0'+date.getSeconds():date.getSeconds()
this.rfc_time = y +'-' + m + '-' + d + ' ' + hh + ':' + mm + ':' + ss
this.rfc_time = this.rfc_time.replace(/\s+/g, 'T')+'+08:00'
pm.variables.set('rfctime',this.rfc_time)
// console.log(pm.variables.get('rfctime'))

const privkey = pm.environment.get('pri_key').replace(/\\n/g, "\n")

// 随机字符串
const uuid = pm.variables.replaceIn('{{$randomUUID}}')
pm.variables.set('nonce_str', uuid)

const requestBodyRaw = pm.variables.replaceIn(pm.request.body == undefined ? '' : pm.request.body.raw)

const now = pm.variables.replaceIn('{{$timestamp}}')
pm.variables.set('req_time', now)
// 具体加密字段拼接请依据项目情况案例是:method+\n+url+\n+timestamp+\n+nonce_str+\n+body
var dataToSign = pm.request.method + "\n" +
    pm.request.url.getPathWithQuery() + "\n" +
    now + "\n" +
    uuid + "\n" +
    requestBodyRaw

console.log(dataToSign)

const sha256withrsa = new pmlib.rs.KJUR.crypto.Signature({"alg": "SHA256withRSA"});
sha256withrsa.init(privkey);

sha256withrsa.updateString(dataToSign);

const sign = pmlib.rs.hextob64(sha256withrsa.sign());

// console.log(sign);
pm.variables.set('sign', sign)
// 添加请求头
pm.request.headers.add({
    key:"Authorization",
    value:"SHA256-RSA nonce_str={{nonce_str}},timestamp={{req_time}},signature={{sign}}"
});

至此SHA256withRSA签名已完成
sha256withrsa签名,软件测试,经验分享,postman,postman,软件测试,功能测试,测试工具,接口测试

结语

这篇贴子到这里就结束了,最后,希望看这篇帖子的朋友能够有所收获。

 postman接口签名教程(详细版)获取方式:留言【postman学习】即可

如果你觉得文章还不错,请大家 点赞、分享、留言 下,因为这将是我持续输出更多优质文章的最强动力!

 文章来源地址https://www.toymoban.com/news/detail-673711.html

到了这里,关于Postman轻松签名,让SHA256withRSA保驾护航!的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Apifox&Postman请求参数进行SHA256/MD5加密

    Base64加密,代码如下: Base64解密,代码如下: MD5加密,代码如下: SHA256加密,代码如下

    2024年02月16日
    浏览(52)
  • 用给定的key对字符串进行sha256加密-postman预处理

    接口在请求时,需要将参数排序后进行sha256加密,获取sign,作为参数。 postman的预处理,找不到方法可以对字符串进行有key的sha256加密,所以用python写一个加密接口,在预处理中调用加密接口即可 1.python文件

    2024年02月16日
    浏览(59)
  • 关于Postman Pre-request Script 请求前处理(AES加密以及HMAC-SHA256)

    目录 一 postman前置 处理 设置环境变量如下:  二 编写Postman Pre-request Script Js加密代码 三 Postman 最终参数设置以及结果演示 postman 表单请求 参数设置示例: 设置环境变量如下: params:   AES 加密后的参数 signature:  HMAC-SHA256 加密后的签名 timestamp: 时间毫秒值 secret:     加密秘钥

    2024年02月10日
    浏览(64)
  • Android 获取应用sha1和sha256

    在 Android 应用开发中,SHA-1(Secure Hash Algorithm 1)值是一种哈希算法,常用于生成应用的数字签名。这个数字签名用于验证应用的身份,并确保应用在发布到设备上时没有被篡改。 以下是生成 Android 应用的 SHA-1 值的步骤: 生成密钥库(KeyStore): 首先,你需要创建一个密钥库

    2024年02月07日
    浏览(56)
  • [虚幻引擎插件说明] DTSha – 蓝图SHA加密节点, SHA1, SHA224, SHA256, SHA384, SHA512加密

    本插件可以在虚幻引擎中使用蓝图对字符串或者文件进行SHA加密。 目录 1. 节点说明 SHA-1 Encrypt SHA-224 Encrypt SHA-256 Encrypt SHA-384 Encrypt SHA-512 Encrypt SHA-1 Of File SHA-224 Of File SHA-256 Of File SHA-384 Of File SHA-512 Of File 2. 案例演示 ​编辑 3. 插件下载 SHA-1 Encrypt 字符串进行SHA-1加密,字符串

    2024年02月16日
    浏览(67)
  • Python hashlib 加密方法(MD5、SHA1、SHA256、SHA52)

    Python 提供了 hashlib 模块来进行加密操作。在下面的文章中,我们将介绍 hashlib 模块的常用加密算法。 hashlib 模块是 Python 中用于加密的标准库。它包含了所有常见的哈希函数,例如 SHA1、SHA224、SHA256、SHA384、SHA512、MD5 等。这些哈希函数都是单向的,即只能对信息进行加密,而

    2024年02月07日
    浏览(45)
  • ocr+sha256

       

    2024年04月17日
    浏览(67)
  • SHA256加密

    将转换成16进制再加密 将byte转为16进制 以上是加密算法,解密,其实我们可以将密文存到数据库中,当需要判断是否一致的时候,就那加密后的与数据库中存的值做对比,看是否一致

    2024年02月12日
    浏览(72)
  • SHA-256算法及示例

    SHA-256(安全哈希算法,FIPS 182-2)是密码学哈希函数,其摘要长度为256位。SHA-256为keyless哈希函数,即为MDC(Manipulation Detection Code)。【MAC消息认证码有key,不是keyless的。】 SHA-256哈希函数可定义为: 其中: 输入:消息 M M M 为任意长度的字节数组。 输出:在 [ 0 , 2 256 ) [0,2

    2024年02月10日
    浏览(66)
  • Solidity Keccak256与SHA3-256

    SHA3由Keccak标准化而来,在很多场合下Keccak和SHA3是同义词,但在2015年8月SHA3最终完成标准化时,NIST调整了填充算法: SHA3-256(M) = KECCAK [512] (M || 01, 256) 。所以标准的NIST-SHA3就和Keccak计算的结果不一样。 如对空字符串进行Keccak256 和 SHA3-256结果各不相同: 以太坊在开发的时候SH

    2024年02月11日
    浏览(78)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包