RSA+AES请求组合加密

Posted wuyanzu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RSA+AES请求组合加密相关的知识,希望对你有一定的参考价值。

基本概念

加密方式分为:AES(对称加密)RSA(非对称加密)

AES算法流程

发送方:
  1. 创建AES私钥,用口令对私钥加密
  2. 将加密后的私钥发送给接收方
  3. 用私钥加密明文,并将密文和加密后的私钥发给接收方

接收方:
  1. 解密这个私钥
  2. 用解密后的密钥把密文解密成明文

    RSA算法流程

接收方:
  1. 创建RSA密钥对(公钥和私钥)公钥发给发送方,私钥存在接收方。
  2. 接收方用私钥对密文解密

发送方:
  1. 公钥对明文加密,将密文发给接收方

RSA+AES结合加密

接收方:
  1. 创建RSA密钥对(公钥、私钥)把公钥发给发送方,自己保存私钥
  2. 用RSA私钥解密加密后的AES密钥,并用AES密钥解密密文,得到明文

发送方:
  1. 创建AES密钥,并用AES加密明文,再用RSA公钥加密AES密钥,并把加密后的AES密钥和密文发送给接收方

android RSA+AES加密过程

Android:
  1. 生成AES密钥,并用AES密钥对明文加密
  2. 使用RSA公钥将AES密钥(aesKey)加密成encryptAesKey,作为HTTP请求头
  3. 将AES加密明文后的密文(encryptData)作为请求体,将请求体和请求头一起发给sever

sever:
  1. 生成RSA密钥对(公钥、私钥),提供接口给客户端,发送公钥
  2. 获得AES加密后的请求头(encryptAesKey),获得加密后的请求体(encryptData)
  3. 使用私钥解密请求头请求头(encryptAesKey)获得到AES密钥去请求体(encryptData)里的密文

技术图片

参考链接

我的Android进阶之旅------>Android采用AES+RSA的加密机制对http请求进行加密
?Android数据加密之RSA+AES混合加密
Android数据加密之Aes加密

以上是关于RSA+AES请求组合加密的主要内容,如果未能解决你的问题,请参考以下文章

我的Android进阶之旅------>Android采用AES+RSA的加密机制对http请求进行加密

Android Okhttp/Retrofit网络请求加解密实现方案

uniapp接口层的aes和rsa的对称与非对称加密

RSA非对称加密和AES对称加密

对于加密的总结(AES,RSA)

小程序RSA加密、解密、加签、验签