跳到工具区
安全

Hash / HMAC / 文件校验

在浏览器本地计算文本或文件摘要,生成 HMAC,并与完整校验值进行比对。

Web Worker 仅本地处理工具
输入0 个字符
结果0 个字符
就绪

字节证据工作台 · 工具不是魔法

摘要是否一致,先从输入字节查起。

Hash 处理的是字节。校验值不一致时,应先确认双方使用了相同的字符编码、Unicode 规范化、换行符和文件内容,再检查算法与 hex / Base64 输出表示。

输入清单#BYTES-0514
文本 · UTF-8

字符先编码为字节

文件 · 原始内容

所选文件的 ArrayBuffer 直接传给本地 Worker

Café43 61 66 C3 A9
你好E4 BD A0 E5 A5 BD
LF0A
CRLF0D 0A

看起来相同的文本,可能采用不同 Unicode 规范化形式或带有不可见的尾随字节。输入清单不仅记录结果,也要记录它来自文本还是文件。

两种工具

普通摘要与 HMAC 回答的是不同问题。

INSTRUMENT 01

普通 HASH

消息 → H(message)

任何拿到消息的人都能复算。

用于完整性比对

INSTRUMENT 02

带密钥的 HMAC

密钥 + 消息 → HMAC

只有共享密钥的参与方才能复算。

完整性 + 共享密钥认证

算法状态架

输出更长,不等于安全属性就更完整。

SHA-256256 bit当前推荐

通用完整性校验与内容寻址

SHA-384384 bit当前推荐

兼容特定协议或安全策略

SHA-512512 bit当前推荐

需要较宽 SHA-2 输出的场景

SHA-1160 bit旧算法

仅作兼容校验;存在碰撞弱点

MD5128 bit旧算法

仅作旧校验值兼容;存在碰撞弱点

不一致排查

肉眼相同的输入,可能不是同一份字节证据。

换行符

LF 0ACRLF 0D 0A

Unicode

é · U+00E9e + ◌́ · U+0065 U+0301

文本编码

UTF-8UTF-16LE

输出表示

小写 hex带 padding 的 Base64

文件处理

原始字节文本模式转换

摘要长度

完整值截断前缀

校验回执

规范化表示后,仍需比对完整摘要。

来源release.tar.zst · 原始字节
算法SHA-256
预期值64 个 hex 字符
实际值64 个 hex 字符
结论匹配 / 不匹配
COMPLETE VALUE REQUIRED

匹配只能说明本地字节与所填预期值一致。发布者身份是否可信,还取决于预期值从哪里取得、是否经过可信渠道认证。

直接回答

什么是 Hash / HMAC / 文件校验?

在浏览器本地计算文本或文件的 SHA-256、SHA-384、SHA-512、SHA-1、MD5,生成 HMAC 并比对完整校验值。文件不上传;MD5 与 SHA-1 仅用于旧系统兼容。

它能做什么?

  • 哈希
  • HMAC
  • 验证

如何使用 Hash / HMAC / 文件校验

  1. 01

    选择任务

    在工作区选择哈希、HMAC和验证。

  2. 02

    提供输入

    Hello, DevSexy!。内容始终留在浏览器的本地处理流程中。

  3. 03

    检查结果

    运行工具,检查结果和诊断信息;页面提供复制或下载时,可以直接导出。

常见问题

Hash / HMAC / 文件校验是什么?
在浏览器本地计算文本或文件的 SHA-256、SHA-384、SHA-512、SHA-1、MD5,生成 HMAC 并比对完整校验值。文件不上传;MD5 与 SHA-1 仅用于旧系统兼容。
Hash / HMAC / 文件校验能做什么?
Hash / HMAC / 文件校验支持哈希、HMAC和验证,所有模式都可以直接在当前页面使用。
Hash / HMAC / 文件校验会上传我的数据吗?
Hash / HMAC / 文件校验会在浏览器本地处理输入内容。DevSexy 不会增加上传、登录或服务器处理步骤。
DevSexy 在浏览器本地处理工具输入:不追踪粘贴内容,无需账号,也没有上传步骤。