哈希类型识别
网络所有处理都在浏览器本地完成,数据不上传服务器
拿到一串哈希,第一件事往往是“这是哪种算法”。这个工具按长度与字符集把它可能是的算法列出来,覆盖 MD5 / SHA 家族 / SHA3 / BLAKE / RIPEMD / CRC 以及 bcrypt、argon2、scrypt、crypt 家族、MySQL、Django 等 40 多种。 ⚠️ 请务必看清它给的是候选,不是结论:一个 32 位的十六进制串可能是 MD5、NTLM、MD4,也可能是 LM —— 它们长度一样、字符集一样,光看那一串字符永远分不出来。真正能确定的只有带前缀的那些(`$2b$` 一定是 bcrypt、`$argon2` 一定是 argon2、`*` 加 40 位十六进制一定是 MySQL 4.1),因为前缀就是格式的一部分。要确定是哪一个,只能看它的来源,或拿原文重新算一遍逐条比对。 全部在浏览器本地完成,你粘进来的哈希不离开这个页面。
功能
- 按长度 + 字符集识别,覆盖 40 多种算法
- 十六进制、Base64、Base64URL、连字符 UUID 混在一起也能逐行认
- 带前缀的(bcrypt / argon2 / scrypt / crypt / Django / MySQL)按前缀判定,不混进长度分支
- 候选按可能性分高、中、低三档,用颜色标出
- 明说“长度相同的算法无法区分”,避免被当成结论
- 可选择只列算法名,或连判定依据一起显示
- 每行可单独复制,也可复制全部
使用方法
- 一行粘入一个哈希值(可多行)
- 结果里给出长度、字符集与候选算法
- 需要核对依据就保持“显示判定依据”勾选
- 只看名字就切换到“只列可能的算法名”
常见问题
- 它能确定告诉我这是 MD5 吗?
- 不能,没有任何工具能 —— 只要长度与字符集相同,MD5、NTLM、MD4、LM 的输出形式就是一模一样的,肉眼和程序都无法从字符串本身区分。所以这里给的是候选列表并按可能性排序。唯一能确定的是带前缀的格式(bcrypt、argon2、crypt、Django、MySQL 4.1)。
- 怎么才能真的确定是哪种算法?
- 两条路:一是看它的来源(数据库字段名、导出文件的说明、代码里调用的是哪个函数);二是拿原始明文用各种算法各算一遍,看哪一个与这串值相等 —— 这才是唯一可靠的判定。
- 为什么纯数字的串也会被当成哈希?
- 因为纯数字且长度为偶数的字符串,既是合法的十六进制(对应某些摘要长度),也是 Cisco type 7 密码的形状。所以两者都会列出来 —— 又一次说明“形状相同就无法区分”。
- 哈希会被上传吗?
- 不会。识别完全在浏览器里按字符串长度与字符集做,不查询任何数据库、不请求任何接口。
相关工具
哈希计算
编码算出文本的 MD5、SHA-1、SHA-256 或 SHA-512 摘要,也可算老系统用的 MD4 与 MD2,中文按 UTF-8 字节计算。全部在本地完成。
SHA-3 / Keccak
编码计算 SHA-3、SHAKE 与以太坊用的原版 Keccak 摘要,十个变体一次覆盖,SHAKE 的输出长度可以自己定。
MD5 反查
编码用常见密码表与数字、字母穷举反查 MD5 摘要,全部在本机完成、不上传、不查在线库,并如实说明覆盖范围。
URL 解析
网络在线 URL 解析:拆出协议、主机、端口、路径、查询参数与锚点,参数逐个解码并与原始值对照,缺协议自动补 https://。全部在浏览器本地完成。
UA 解析
网络在线 User-Agent 解析:识别浏览器、版本、操作系统、设备类型与渲染引擎,并列出命中的匹配规则。结果基于模式匹配,仅供参考。全部在浏览器本地完成。
HTTP 状态码
网络HTTP 状态码查询与速查:输入编号查含义、1xx 到 5xx 分类、常见场景与排查提示,也能用关键词反查编号。全部在浏览器本地完成。