Hash,一般翻译做散列、杂凑,或音译为哈希,是把任意长度的输入(又叫做预映射pre-image)通过散列算法变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,所以不可能从散列值来确定唯一的输入值。
在实际开发中,我们经常需要对文件计算 MD5 值,比如: 文件完整性校验 重复文件去重 上传前后比对 断点续传一致性校验 Node.js 内置的 crypto 模块已经提供了完整的哈希计算能力,不需要额外依赖。本文从 开发者实战角度 总结两种常用方案,并说明各自适用场景。 一、为什么不能直接 rea…
你想要在 Node.js 中生成 16 位的 MD5 值,首先需要明确: 标准 MD5 算法生成的是 128 位(16 字节)哈希值,对应 32 位十六进制字符串;通常所说的 16 位 MD5 ,本质是 32 位 MD5 字符串的中间 8 字节(即截取 32 位字符串的第 9 到第 24 位,对应索…