有没有一种有效的方法来生成浏览器阵列缓冲区的MD5哈希值?

时间:2015-07-09 20:58:37

标签: javascript md5 filereader arraybuffer

我正在制定一项将文件从Web应用程序上传到API的策略。 API需要与文件一起发送的文件的MD5哈希值。我相信这里的意图是他们将在他们身边生成一个MD5并比较两者以查看文件内容是否在没有任何数据丢失或更改的情况下进入服务器。

我可以使用文件阅读器API生成MD5来读取AS文本或readAsBinaryData,然后通过MD5算法运行内容。

我的问题是,其中许多是专门的成像文件,大小从10mb到500mb不等。试图将它们作为二进制文本或文本读取是需要几分钟,有时会崩溃浏览器。

使用readAsArrayBuffer在读取方面似乎更高效,但我找不到生成MD5的策略,该策略不像使用readAsText那样具有同等的资源密集度。

那么,是否有从阵列缓冲区生成MD5的轻量级策略?也许真正的问题是,有没有更好的方法来验证文件是否已经从客户端到服务器而没有中断?我无法控制API,但可以建议更改。

1 个答案:

答案 0 :(得分:1)

1)CRC32与MD5怎么样?

2)SparkMD5可以递增hashaly