Keccak-512 哈希生成器
在浏览器中即时生成任意文本的 Keccak-512 哈希值。支持 UTF-8、十六进制或 Base64 输入,输出十六进制或 Base64。免费、私密,无需上传。
完全在浏览器中运行,您的数据不会被上传。
什么是 Keccak-512 哈希生成器?
Keccak-512 是最初提交版本的 Keccak 哈希(即 2011 年参赛的 SHA-3 竞赛获胜算法),输出 512 位,早于 NIST 为 FIPS 202 修改填充方式。本工具会在你输入时实时计算文本或原始字节(十六进制或 Base64)的 512 位 Keccak-512 摘要,并以 128 个十六进制字符或 Base64 显示。
如何使用 Keccak-512 哈希生成器
- 在 要计算哈希的文本 中输入或粘贴内容——摘要会随输入实时更新(输入框为空时显示空输入的哈希值)。
- 选择 输入编码:文本 (UTF-8) 会把字符按 UTF-8 计算哈希,十六进制字节 或 Base64 则对解码后的原始字节计算哈希。
- 选择 输出格式(十六进制小写、十六进制大写或 Base64),然后点击 复制。
示例
abc
18587dc2ea106b9a1563e32b3312421ca164c7f1f07bc922a9c83d77cea3a1e5d0c69910739025372dc14ac9642629379540c17e2a65b19d77aa511a9d00bb96
3 个 ASCII 字节“abc”的 Keccak-512(UTF-8,十六进制小写输出),即标准测试向量。
何时使用 Keccak-512 哈希生成器
Keccak-512 文本工具适合对字符串计算哈希:复现文档或代码中的值、构造测试向量、比对 API 签名的输入,或检查程序应输出的结果。不要用它校验下载的文件:把文件内容复制到文本框会改变换行符和编码,请使用 Keccak-512 文件校验工具。如果是遵循标准的新项目(FIPS、NIST),请改用 SHA3-512。
Keccak-512 哈希生成器 的工作原理
Keccak-512 把输入以 576 位为一块(容量 1024 位)吸收进 1600 位的 Keccak-f[1600] 状态,每块应用 24 轮置换。它使用原始 Keccak 的 pad10*1 规则填充(字节 0x01 … 0x80),没有 FIPS 202 增加的 01 域分隔后缀。状态的前 512 位就是摘要,这也是 Keccak-512 与 SHA3-512 对任何输入结果都不同的原因。文本会先转换为字节(默认 UTF-8),因此相同的字符总会得到相同的哈希值。
常见用例
- 在单元测试或测试数据中核对字符串的预期 Keccak-512
- 对从调试器、抓包结果或协议规范中复制的十六进制字节计算哈希
- 比较两种编程语言之间结果不一致的 Keccak-512 输出
- 从文本生成确定性的标识符或缓存键
- 获取 Keccak-512 摘要的 Base64 形式,用于请求头或配置文件
安全提示
Keccak-512 目前没有已知的实际攻击。普通哈希也不适合存储密码:请使用 Argon2、scrypt 或 bcrypt 等慢速、加盐的密码哈希。所有计算都在你的浏览器本地完成,输入的内容不会发送到任何地方。
常见问题
Keccak-512 与 SHA3-512 有什么区别?
只有填充方式不同:Keccak 使用 0x01,SHA-3 使用 0x06(一个两位的域分隔后缀)。置换和速率相同,输出却完全不同。即使输入为空,Keccak-512 与 SHA3-512 给出的摘要也毫无关联。
谁在使用 Keccak-512?
主要是 FIPS 202 定稿之前编写的软件和一些区块链项目。以太坊使用 Keccak-256;224、384 和 512 位的变体出现在较旧的库和测试套件中。
为什么只改一个字符,哈希值就完全变了?
这就是每种密码学哈希都刻意追求的雪崩效应:输入翻转一个比特,512 位输出中大约一半会改变,因此相似的输入会得到毫不相关的摘要。
末尾的空格或换行符有影响吗?
有。哈希覆盖每一个字节,所以 abc 和后面跟着换行符的 abc 会得到不同的 Keccak-512 值。请确保输入中恰好是你想计算哈希的那些字节。