Hash 计算
开发者工具MD5/SHA-256 哈希
答案速览
Hash 计算——MD5/SHA-256 哈希。MD5:输出 128 bit(32 位十六进制),已被证明可碰撞,仅用于校验和非安全场景。
输入文本(UTF-8)
共 9 字节 · 哈希是单向运算:相同输入恒得相同摘要,且无法反推原文
算法对照
| 算法 | 摘要长度 | 安全性 | 典型用途 |
|---|---|---|---|
| SHA-1 | 160 bit / 40 hex | 已破解,勿用于安全场景 | Git 提交 ID、文件去重 |
| SHA-256 | 256 bit / 64 hex | 推荐 | 密码加盐、证书、区块链 |
| SHA-384 | 384 bit / 96 hex | 推荐 | 高安全场景、TLS |
| SHA-512 | 512 bit / 128 hex | 推荐 | 大文件校验、密码哈希 |
💡 存储密码不要直接用 SHA 系列——应使用 bcrypt、scrypt 或 Argon2 等慢速 KDF 并加随机盐。MD5 与 SHA-1 均存在实用碰撞攻击,安全场景请用 SHA-256 及以上。
这个工具对你有帮助吗?
怎么用
- 确认输入格式:在 Hash 计算 中按提示格式粘贴数据(十六进制带不带 0x 前缀均可),MD5/SHA-256 哈希。
- 选对进制/位宽:涉及位运算或整数溢出的场景,先确认位宽(8/16/32/64 位)与符号性。
- 读结果:结果区同时给出多种表示(十进制/十六进制/二进制),便于交叉核对。
- 边界自查:接近位宽上限的值注意溢出回绕;Hash 计算 会在溢出时给出标注。
核心要点
- 位宽与符号性决定边界:32 位有符号整数范围 −2147483648–2147483647,无符号 0–4294967295;超界发生回绕而非报错。
- 进制只是表示法:同一数值在不同进制下字面量不同但值相等;Hash 计算 的多进制联显可直观验证这一点。
- 浮点的二进制本质:0.1+0.2 ≠ 0.3 源于 IEEE 754 双精度无法精确表示 0.1,涉及金额请转为"分"的整数运算。
- 编码与字节序:文本按 UTF-8 处理(变长 1–4 字节),中文常见汉字占 3 字节;字节序(大小端)影响多字节整数的内存表示。
原理与公式
哈希算法说明:
MD5:输出 128 bit(32 位十六进制),已被证明可碰撞,仅用于校验和非安全场景
SHA-256:输出 256 bit(64 位十六进制),当前主流安全哈希
特性:单向不可逆、定长输出、雪崩效应(输入改 1 bit,输出约一半 bit 变化)。
应用:文件完整性校验、密码存储(应加盐+慢哈希如 bcrypt)、数字签名、区块链。
本工具在浏览器本地计算,内容不上传。
常见问题
支持多大的数值?
整数支持到 JavaScript 安全整数 2^53−1(9007199254740991);更大数值精度受限,结果会标注。
0.1 + 0.2 为什么不等于 0.3?
IEEE 754 双精度浮点的二进制表示误差,是所有语言共有的现象;显示层 Hash 计算 会按精度规则圆整到可读位数。
十六进制要带 0x 前缀吗?
可不带。Hash 计算 按选定进制解析输入;混用多进制输入时前缀(0x/0b/0o)优先于选择器。
UTF-8 下一个汉字几个字节?
常见汉字(基本区)3 字节,生僻字(扩展区)4 字节,ASCII 字符 1 字节——与 GBK 的固定双字节不同。
位运算结果是负数怎么回事?
有符号整数的位模式按补码解释,最高位为 1 时表示负数;查看二进制表示即可理解符号位的来源。
相关工具
相关指南
来源与更新
开发者工具领域的标准计算公式。所有计算逻辑经过验证。最近更新:2025-07
最近更新:
本页公式与内容经一键算团队复核,仅供学习参考,实际业务请以官方口径为准。
内容由一键算编辑团队维护并定期复核,更新与审核流程见编辑规范。
引用本页:一键算. Hash 计算[EB/OL]. https://www.yijiansuan.com/c/dev/hash
本工具提供的结果仅供参考,不构成任何专业建议,请以官方核算为准。