wuqingvika 发表于 2023-4-18 16:04

springboot实现rsa2048加密明文带base64编码过的json数据加密完再base64 再解码

本帖最后由 wuqingvika 于 2023-4-19 14:13 编辑

我的需求是这样的:
1:明文:Json业务数据,里面包含一个img图片信息,用的是base64编码的 。
{
    "my_data": "我的其他业务数据",
    "pic_list": [ //图片可上传多张
      {
            "pic_name": "有图片时必填设备照片文件名称,要求上传的文件为jpg或png",
            "pic": "有图片时必填数据中心照片文件,将二进制的照片文件编码为Base64格式字符串。大小限制为2M。"
      }
    ]
}
2:用RSA(2048)对明文加密变成密文

3:再对密文进行BASE64编码变成---发送报文

疑问(难点):
1.这种场景有没有技术建议呀 特别加密的报文数据量蛮大的情况(因为Base64后的图片就已经很大了,RSA加密是不是得用分块加密)
2.解码过程:base64编码后的图片信息 再进行加密 再base64 后续将base64解码好像出像乱码了 我希望的是解码完出来的json数据里面还是base64的图片信息



这块有大佬可以给点意见吗?



谢谢大佬们的思路 已经实现了

不知道改成啥 发表于 2023-4-18 16:20

这种加密干啥

rhsy445566 发表于 2023-4-18 16:25

你加解码的代码有问题

wang8118 发表于 2023-4-18 16:34

wuqingvika 发表于 2023-4-18 16:36

wang8118 发表于 2023-4-18 16:34
为什么非要把图片base64呢,如果图片很大的话,你这base64也会很大。为什么不用对象存储,只存图片url

是对接不同平台我们是负责把他们请求来的数据入库的 反正感觉加了base64图片直接复杂化了。。。

nnpig 发表于 2023-4-18 16:38

1. RSA处理超过127b的字符串是需要分块处理的,处理方法写成函数调用其实也挺方便的,没想象的那么麻烦
2. 解密是加密的逆过程,如果解密后数据不正确,我想应该是RSA那步没处理好吧,因为只有这里涉及分块处理,base64的加解密就一个函数而已,不至于出错。

ytfrdfiw 发表于 2023-4-18 17:03

用对称加密文件更合适一些吧,可以先用对称密钥对文件加密,然后再使用rsa对密钥加密,这样会比较快了,文件再大也不怕,否则RSA可能速度不行。

归途与陌路 发表于 2023-4-18 17:06

分成报文头和报文体发送不就行了,报文头是图片以外的数据,报文体就是图片数据,这样不是想怎么加密就怎么加密吗

wuqingvika 发表于 2023-4-18 17:17

ytfrdfiw 发表于 2023-4-18 17:03
用对称加密文件更合适一些吧,可以先用对称密钥对文件加密,然后再使用rsa对密钥加密,这样会比较快了,文 ...

是的 我感觉我们的接口规范一开始就定义有问题了

wuqingvika 发表于 2023-4-19 09:39

nnpig 发表于 2023-4-18 16:38
1. RSA处理超过127b的字符串是需要分块处理的,处理方法写成函数调用其实也挺方便的,没想象的那么麻烦
2. ...

嗯嗯 等彻底 捊通就试下
页: [1]
查看完整版本: springboot实现rsa2048加密明文带base64编码过的json数据加密完再base64 再解码