Postman报文进行加密之AES

Postman自带的加密函数是cryptoJS能够实现AES+Base64加密,还是用到Postman中的Pre-request Script。Pre-request Script是指在发送报文前执行的脚本,用于对请求包中的各种参数做一些个性化的处理。

接上篇文章,实际获取的sText签名需要传递给源报文参数sign,报文内容如下signText,把报文作为一个整体进行AES加密。

//-------------------------AES Base64 ---------------------------------//

var signText = '{"endDate":1554790512000,"pageNo":1," Id ":"410923199305180016","userPhone":"15011385365","sign":"'+sText+'","pageSize":200,"startDate":1552355829000}';

console.log(signText);

// AES 加密方法

// word是加密内容,keyStr是秘钥

// ECB:加密算法,padding:对齐方式

// ciphertext16进制加密,不加此方法就是Base64加密

function  encrypt(wordkeyStr){

  var key  = CryptoJS.enc.Utf8.parse(keyStr);

  var srcs = CryptoJS.enc.Utf8.parse(word);

  console.log('content:'+word);

  var encrypted = CryptoJS.AES.encrypt(srcskey, {mode:CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7});

  return encrypted.toString();

}

encryptedText = encrypt(signTextvkey);

console.log(encryptedText);

postman.setGlobalVariable("encryptdata"encryptedText);     //encryptdata对应Body{{encdata}}

 

Encrypt函数实现AES加密,keyStrAES密码,需要传递自己项目的。AES算法常用的加密模式ECBCBCCFBOFBCTR,我这的项目使用ECB,这里需要根据实际进行调整,CryptoJS的具体使用可参考GitHub路径https://github.com/brix/crypto-jsciphertext16进制加密,不加此方法就是Base64加密。Padding填充模式有以下几种,也需要根据实际进行调整。

这里得到的encryptedText 才是最终的加密数据,需要使用setGlobalVariable()传给body

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值