lenny044/pass-cracker
GitHub: lenny044/pass-cracker
基于 Python 的密码安全教学工具,集成密码强度分析、哈希识别、泄露检测与破解演示,帮助用户直观理解弱密码风险。
Stars: 0 | Forks: 0
# 密码破解与哈希分析器
一款基于 Python 的密码安全工具,用于分析密码强度、识别哈希类型、检查密码是否存在于泄露数据库中,并出于教育目的执行字典攻击和暴力破解攻击。
## 解决的实际问题
弱密码和重复使用的密码是导致账户泄露的首要原因。该工具通过展示弱密码能被多快破解,直观地说明了为什么强密码至关重要。
## 功能
- 密码强度分析器,附带改进建议
- 哈希生成器 (MD5, SHA1, SHA256, SHA512)
- 哈希类型识别器
- 集成 HaveIBeenPwned API —— 检查密码是否曾出现在真实数据泄露事件中
- 使用字典列表进行字典攻击
- 可配置字符集和长度的暴力破解攻击
## 技术栈
- Python 3.11
- hashlib (内置) —— 哈希生成
- itertools (内置) —— 暴力破解组合
- requests —— HaveIBeenPwned API 调用
- colorama —— 彩色终端输出
- argparse (内置) —— CLI 界面
## 安装
```
git clone https://github.com/lenny044/password-cracker.git
cd password-cracker
python -m venv venv
venv\Scripts\activate
pip install -r requirements.txt
```
## 使用方法
```
# 分析密码强度 + 检查违规泄露
python cracker.py analyze MyPassword123!
# 生成 hash
python cracker.py generate mypassword -a sha256
# 识别 hash 类型
python cracker.py identify 482c811da5d5b4bc6d497ffa98491e38
# Dictionary attack
python cracker.py dict wordlist.txt -a md5
# Brute force attack
python cracker.py brute -a md5 -l 4 -c lowercase
```
## 演示结果
- `password123` —— 发现存在于 **2,254,650 起数据泄露事件**中
- 3 字符密码 —— 在 **0.00 秒**内被破解
- 5 字符密码 —— 在 **12 秒**内被破解
- 字典攻击 —— 瞬间破解常见密码
## 道德声明
本工具仅供**教育目的和授权测试使用**。
切勿将其用于您不拥有的账户或系统。
标签:Python, SysWhispers, 密码分析, 密码字典, 密码安全, 无后门