已掉线,重新登录

首页 > 绿虎论坛 > 历史版块 > 编程 > HTML/CSS/JS > 讨论/求助

标题: crypto-js实现文件加密解密

作者: @Ta

时间: 2020-02-28

点击: 5070

我觉得这是一个奇葩的问题,但是我现在有这样的需求,文件上传前,先在浏览器上进行 AES 加密,在文件下载时,先进行 AES 解密再存储本地。我该如何操作,我目前正在 VUE 项目中尝试这些操作,我使用https://github.com/brix/crypto-js 来进行操作,感觉它非常流行,但是发现我只能对文本文件进行处理,对于图片之类的文件我无法操作。请问我该如何做。。有人有研究过吗.

[隐藏样式|查看源码]


『回复列表(5|隐藏机器人聊天)』

2.

用js下载文件在按字节处理就行,怎么保存就不知道了,可以看看这篇文章。 https://blog.csdn.net/zhang__ao/article/details/82625606
小米5黑色高配版

(/@Ta/2020-02-28 15:33//)

3.

你可以在上传时把文件进行base64编码,然后对编码后的内容进行AES加密。在文件下载时进行AES解密,然后再进行base64转Blob对象下载。不过在浏览器端进行AES加密,那密匙岂不是公开的吗(好吧,理解到了这是针对服务端而进行的加密需求)

(/@Ta/2020-02-28 16:07//)

4. 建议使用 用户密码进行加解密,这样安全性只能破解自己的,并且可以直接对数据流加密,然后在直接解密使用,如果是图片的话,就直接让后端解密返回数据流
(/@Ta/2020-02-28 16:18//)

5. @Curtion,我和你的思路一样,利用FileReader。但是我发现当我还原base的时候,crypto-js无法parse元数据
(/@Ta/2020-02-28 22:04//)

6.

@xuthus,使用new FileReader().readAsDataURL(),原理上来说应该没问题才对

(/@Ta/2020-02-29 09:35//)

回复需要登录

6月28日 18:32 星期六

本站由hu60wap6驱动

备案号: 京ICP备18041936号-1