javascript - 浏览器中二进制数据的加密/解密

标签 javascript browser binary-data

我正在开发一个项目,该项目需要客户端解密从服务器接收的二进制数据。该场景是服务器具有压缩和加密形式的二进制数据。浏览器需要接收这些数据(文件),解密并解压缩它们,然后将它们下载到本地计算机上用户指定的位置。我知道在浏览器中执行此操作有几个限制 -

  1. Javascript 是否可以访问本地存储。我可以将多个文件写入/流式传输到硬盘上用户指定的位置吗?如果是这样,需要寻找哪些 API。

  2. 是否可以在浏览器中使用 Javascript(或任何其他技术)在浏览器中解密 (AES-256) 并解压缩此数据流?

使用 FileAPI 可以解决这些问题吗? HTML5 的?

编辑:
将 SHA2 替换为 AES。我们使用 SHA2 进行完整性检查,而不是加密。这是一个拼写错误。

最佳答案

  1. 您无法直接访问用户的文件系统。不过,HTML5 file system API可用于将数据保存在虚拟的沙盒文件系统中。
  2. CryptoJS 有一个 implementation对于 SHA-2

要从服务器接收数据,我建议使用 XMLHttpRequestresponseType = "arraybuffer" .

关于javascript - 浏览器中二进制数据的加密/解密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11666165/

相关文章:

javascript - 有什么方法可以识别 JavaScript 中的浏览器选项卡?

javascript - 使用 TAU 库在 Tizen Web 应用程序中解析 JSON

javascript - 浏览器阻止 Javascript window.open

javascript - Google Maps MarkerClusterer v3 返回标记簇

javascript - 使用 HTML/CSS/JavaScript 自定义滚动条可视化

compiler-construction - 用于编译/反编译二进制数据文件的通用实用程序或库?

c - 输出和输入二进制数据 C

c# - Emgu CV制作透明背景

javascript - 使用纯 JS 或 jQuery 使用 Alt-Tab 检测浏览器页面窗口何时失去焦点

不同浏览器中的 CSS 悬停宽度样式