crypto-js计算文件的sha256值

Posted loveyunk

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了crypto-js计算文件的sha256值相关的知识,希望对你有一定的参考价值。

1. 要在浏览器中计算出文件的sha256或md5值,基本思路就是使用html5的FileReader接口把文件读取到内存(readAsArrayBuffer),然后获取文件的二进制内容,然后获取文件的shaa256或md5值。

2. ArrayBuffer是一块内存,ArrayBuffer对象被用来表示一个通用的,固定长度的二进制数据缓冲区。

3. CryptoJS (crypto.js) 为 javascript 提供了各种各样的加密算法。目前已支持的算法包括: MD5 SHA-1 SHA-256 AES Rabbit MARC4 HMAC HMAC-MD5 HMAC-SHA1...

 

let reader = new FileReader();
reader.readAsArrayBuffer(file.files[0]);
reader.onload = function () {
    var wordArray = CryptoJS.lib.WordArray.create(reader.result);
    var hash = CryptoJS.SHA256(wordArray).toString();
};

 

 

参考:

https://stackoverflow.com/questions/27060248/calculate-sha-256-hash-and-b64-of-a-file-in-javascript

 

以上是关于crypto-js计算文件的sha256值的主要内容,如果未能解决你的问题,请参考以下文章

C# 计算文件的SHA256值

如何增量计算上传到多个服务器实例的文件的“sha256”?

是否可以使用用户的视频卡在浏览器中计算sha256哈希值,例如。使用WebGL或Flash?

登录加密

Python计算文件的MD5SHA1SHA256值(校验文件完整性)

利用Windows系统自带的Powershell功能计算文件的MD5SHA256等Hash值