S8C88/HashLookup
GitHub: S8C88/HashLookup
一个基于模式匹配的哈希类型识别工具,可自动判定哈希格式并聚合查询多个在线数据库以还原明文。
Stars: 0 | Forks: 0
# HashLookup
哈希识别与在线查询工具。根据格式模式识别哈希类型,并查询在线数据库(crackstation、hashes.com)。
## 工作原理
```
flowchart LR
A[Hash String] --> B[Pattern Matching]
B --> C{Match found?}
C -->|Yes| D[Hash Type Identified]
C -->|No| E[Unknown Format]
D --> F[Online Lookup]
F --> G{Cracked?}
G -->|Yes| H[Plaintext]
G -->|No| I[Not Found]
D --> J[Hashcat Mode]
```
## 快速开始
```
# 识别 hash
python3 hashlookup.py -i d41d8cd98f00b204e9800998ecf8427e
# 计算 hashes
python3 hashlookup.py -c "hello" -a md5
# 在线查找(需要 requests)
python3 hashlookup.py -l -i 5d41402abc4b2a76b9719d911017c592
# Hashcat 模式编号
python3 hashlookup.py -i '$2b$12$LJ3m4ys3Lk' --hashcat-mode
# 从文件读取 hash
python3 hashlookup.py -f hash.txt -i
# 保存结果
python3 hashlookup.py -i myhash -o results.json
```
## 支持的哈希类型
| 类型 | 长度 | 模式 |
|------|--------|---------|
| MD5 | 32 hex | `[a-f0-9]{32}` |
| SHA1 | 40 hex | `[a-f0-9]{40}` |
| SHA256 | 64 hex | `[a-f0-9]{64}` |
| SHA512 | 128 hex | `[a-f0-9]{128}` |
| bcrypt | 60 字符 | `$2[aby]$...` |
| NTLM | 32 hex | 与 MD5 相同(存在歧义) |
| MySQL3 | 16 hex | `[a-f0-9]{16}` |
| SHA256-Crypt | 可变 | `$5$...` |
| SHA512-Crypt | 可变 | `$6$...` |
## 项目结构
```
HashLookup/
├── hashlookup.py
├── README.md
├── LICENSE
├── requirements.txt
├── tests/
│ └── test_hashlookup.py
└── docs/
└── engineering-report.md
```
## 许可证
MIT
标签:Python, 哈希识别, 密码学, 手动系统调用, 无后门, 逆向工具