RSA公钥加密和私钥加密整个结构是一致的,《Postman报文进行加密之RSA+Bate64》中私钥做的签名,这里RSA公钥是进行加密。

//--------RSA使用公钥对AES密码进行加密-------------//

function pubencrypt(pubencrypt_key, aeskey){

console.info('pubencrypt_key:'+pubencrypt_key);

console.info('aeskey: ' + aeskey);

//注意此处上下的BEGIN PRIVATE KEY不要删除,框架自带的

const public_key = '-----BEGIN PUBLIC KEY-----\n'

+ pubencrypt_key

+ '\n-----END PUBLIC KEY-----';

var publicKey = forge.pki.publicKeyFromPem(public_key);

var buffer = forge.util.createBuffer(aeskey, 'utf8');

var bytes = buffer.getBytes();

var pubencryptedText = forge.util.encode64( publicKey.encrypt(bytes, 'RSAES-PKCS1-V1_5', {

md: forge.md.sha256.create(),

mgf1: {

md: forge.md.sha1.create()

}

})

);

console.info('pulencryptedText: '+ pubencryptedText);

return pubencryptedText;

}

// 第一次运行时从网络加载forgeJS,会导致请求失败

if(!pm.globals.has('forgeJS')){

console.log('request forge.js from ' + forge_url);

pm.sendRequest(forge_url, function (err, res) {

if (err) {

console.error(err);

else {

console.info("request forgs.js: Succeed, please try again");

pm.globals.set('forgeJS', res.text());

}

}

);

}

eval(pm.globals.get('forgeJS'));

pubencryptedText = pubencrypt(pulencrypt_key,vkey);

console.log(pubencryptedText);

postman.setGlobalVariable("encryptkey",pubencryptedText)

这一段主要实现使用RSA公钥加密AES密码,AES密码是自己定义的,加密后的密文传递给变量"encryptkey",作为实际请求的参数。

'pubencrypt_key'是RSA公钥需要加上公钥的格式;

const public_key = '-----BEGIN PUBLIC KEY-----\n'

+ pubencrypt_key

+ '\n-----END PUBLIC KEY-----';

'aeskey'是自定义的AES密码;

forge.pki.publicKeyFromPem(public_key)转换pem格式的公钥;

forge.util.createBuffer(aeskey, 'utf8')创建缓冲区,设置编码格式;

buffer.getBytes()转成字节;

publicKey.encrypt(bytes, 'RSAES-PKCS1-V1_5')加密函数,把明文使用'RSAES-PKCS1-V1_5'加密成密文;

forge.util.encode64()把加密后的密文按照encode64进行编码输出;

setGlobalVariable()将密文赋值给Body栏目对应的字段;

这样需要签名加密的参数都完成了,就可以使用新Body发起HTTP请求。

Postman报文进行加密之RSA公钥加密相关推荐

  1. Postman报文进行加密之RSA+Bate64

    最近在项目接口测试中使用postman,对于一般的非加密HTTP请求可以很方便直接的测试,但是有些需要签名验签的报文,就需要对报文进行加解密处理,在实际工作过程中,参考了网络上共享的资源,下面对自己工 ...

  2. asp版 vbscript RSA公钥加密 / 私钥解密 / 私钥签名 / 公钥验签(支持中文)分段加密解密

    最近有空在把自己的asp站点后端函数全部整理了下,在弄RSA的时候遇到了坑了,然后找到下面这位兄弟刚好发布的文章: https://blog.csdn.net/todaygods/article/de ...

  3. RSA加密原理与RSA公钥加密系统、数字签名

    通过公钥加密系统,可以对传输于两个通信单位之间的消息进行加密,即使窃听者窃听到加密之后的消息,也不能对其破译. 1.RSA公钥加密原理 1.1 几个核心概念 公钥P与公钥函数P() 密钥S与密钥函数S ...

  4. RSA 公钥加密——私钥解密

    作者:刘巍然-学酥 链接:http://www.zhihu.com/question/25912483/answer/31653639 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业 ...

  5. ASP VBSCRIPT VBA RSA 公钥加密 私钥解密 私钥签名 公钥验签

    <% '@title: Class_Crypt_Rsa '@author: ekede.com '@date: 2020-10-28 '@description: RSA 公钥加密->私钥 ...

  6. 登录密码加密,RSA加密算法

    公钥加密,私钥解密 前端:密文RSA公钥加密,得到base64编码的加密密文,jsencrypt.min.js var publicKey = "MIGfMA0GCSqGSIb3DQEBAQ ...

  7. Android直播开发之旅(25):使用AES算法加密多媒体文件(+RSA+MD5+Base64)

    文章目录 1. AES算法 1.1 AES加密过程 1.1.1 字节代替(SubBytes) 1.1.2 行移位(ShiftRows) 1.1.3 列混合(MixColumns) 1.1.4 加轮密钥 ...

  8. RSA公钥加密与私钥解密算法

    首先是随机生成一个密钥对(一个公钥和一个私钥) package com.zy.demo1.secretTest;import lombok.extern.slf4j.Slf4j; import org ...

  9. AES加密和RSA加密详细原理及使用场景

    部分RPC请求或者网络传输,需要对一些敏感数据进行加密传输. 误解 当初错以为MD5.SHA1这些哈希算法就是加密算法 后来在一些远程通信和网络传输的过程中,需要对一些敏感数据,经过再编码的方式,转换 ...

最新文章

  1. Blender材质和着色基础视频教程 CGCookie – Fundamentals of Blender Materials and Shading
  2. 小白学python系列-(4)list
  3. 一分钟带你快速进入Nacos的世界,史上最简易教程!零基础也能看明白!谁反对?
  4. 数据库复习之规范化理论应用(第八次上机内容)
  5. P3195 [HNOI2008]玩具装箱TOY DP+优化
  6. Django【基础篇】
  7. 群辉服务器根目录新建文件夹,群晖 synology NAS 存储创建存储空间的方法
  8. 十八.描述符(__get__,__set__,__delete__)
  9. 10)Thymeleaf 标记选择器语法
  10. Fiddler 5.0 中文版
  11. 攻防世界 crypto Railfence
  12. 狗年出生的宝宝取名都有哪些注意事项呢?起名真不是简单事
  13. qq音乐mp3解析php源码,QQ音乐PHP解析源码
  14. httpwatch professional 破解版v9.4.17
  15. logstash(10)过滤器-dissect
  16. 计算机无法自动连接网络连接,win7系统开机后无线网络无法自动连接的解决方法...
  17. 电脑运行卡顿?六个方法打开任务管理器解决
  18. 身体和灵魂,总得有一个在路上
  19. 秒杀小程序 php后台,基于ThinkPhp6.0+Vue 开发实现微信小程序、公众号、商城、拼团、秒杀、后台管理等功能...
  20. 根据词云寻找对应文章的Web开发

热门文章

  1. visio如何插入word中的数学公式
  2. 数据采集(二):腾讯新闻网,新闻标题和内容爬取
  3. 是Word文档中添加音乐
  4. vue实战项目 vue-typescript-music 音乐项目 解析
  5. pythonic_pythonic方式
  6. 伊顿车辆集团荣获通用汽车“2021年度最佳供应商”称号
  7. 归一法的计算方法讲解_第七讲 归一法
  8. 微信小程序开发——修改页面的背景颜色
  9. cookie各字段详解
  10. Python小项目俄罗斯方块代码基于pygame编写