前端别再计算文件的MD5了
当前位置:点晴教程→知识管理交流
→『 技术文档交流 』
背景最近需要做视频上传的功能,很自然的就想到要对文件做唯一性校验。避免同一个文件反复上传。 概念文件唯一性校验的基本原理是:通过对文件内容计算哈希值(Hash Value),为每个文件生成一个唯一的"数字指纹"。这个指纹具有三个关键特性:唯一性(不同文件产生相同哈希值的概率极低)、确定性(同一文件多次计算总会得到相同结果)以及不可逆性(无法从哈希值反推原始文件内容)。常见的哈希值计算方法有MD5和SHA。 MD5MD5(Message-Digest Algorithm 5)是一种广泛使用的哈希函数,由Ron Rivest于1991年设计。它生成128位(16字节)的哈希值,通常表示为32个十六进制字符 SHASHA-256属于SHA-2算法家族,由美国国家安全局(NSA)设计,于2001年发布。它生成256位(32字节)的哈希值,表示为64个十六进制字符。SHA-256的设计更加复杂安全 准备工作要计算文件唯一值,本能的反应就是用MD5,相信很多前端项目中都用到了md5加密,比如对用户密码加密之类的。我们的项目中自然也有用到,使用的是crypto-js。但是由于上传的是视频文件,还是需要先测试一下性能的。结果是我找了个一个10M左右的视频文件,md5的加密耗时是350ms左右。如果是500M的视频,这个耗时…… 测试结果
兼容性结论在需要计算文件唯一值的时候,推荐使用sha-256。更安全、更快还不需要引入第三方库 转自https://blog.csdn.net/fjqgx/article/details/156679319 该文章在 2026/2/6 9:34:46 编辑过 |
关键字查询
相关文章
正在查询... |