Skip to content

CrackPackage是一个用Java开发的压缩文件密码破解工具,支持多种压缩格式(ZIP、RAR、7Z、TAR、GZ、BZ2、XZ等)的密码破解。该工具采用多种破解策略,包括字典攻击和暴力破解方法。

Notifications You must be signed in to change notification settings

shenhuanjie/skyner-zip-crack-ackage

Repository files navigation

CrackPackage - 压缩文件密码破解工具

项目概述

CrackPackage是一个用Java开发的压缩文件密码破解工具,支持多种压缩格式(ZIP、RAR、7Z、TAR、GZ、BZ2、XZ等)的密码破解。该工具采用多种破解策略,包括字典攻击和暴力破解方法。

功能特性

1. 文件支持

  • 支持多种压缩格式:
    • ZIP文件
    • RAR文件
    • 7Z文件
    • TAR文件
    • GZ文件
    • BZ2文件
    • XZ文件

2. 破解策略

  1. 字典破解

    • 常用密码字典
    • 数字密码字典
    • 模式密码字典
    • 历史成功密码记录
  2. 智能暴力破解

    • 可配置密码长度范围
    • 支持多字符集(字母、数字、特殊字符)
    • 优化的破解算法

3. 性能优化

  • 失败密码缓存机制
  • 批量处理密码尝试
  • 进度显示和状态报告

4. 用户界面

  • 交互式命令行界面
  • 文件选择菜单
  • 实时进度显示
  • 清晰的错误提示

密码复杂度说明

本工具支持3-30位密码破解,使用的字符集包括:

  • 26个小写字母 (a-z)
  • 26个大写字母 (A-Z)
  • 10个数字 (0-9)
  • 10个特殊字符 (!@#$%^&*())

总字符集大小:72个字符

密码组合数量示例:

  • 3位密码:373,248 种组合
  • 4位密码:26,873,856 种组合
  • 5位密码:1,934,917,632 种组合
  • 6位密码:139,314,069,504 种组合
  • ...
  • 30位密码:约 2.37 × 10^55 种组合

破解时间估算(假设每秒尝试1000个密码):

  • 3位密码:约6分钟
  • 4位密码:约7.5小时
  • 5位密码:约22.4天
  • 6位密码:约4.4年
  • 更长的密码将需要更多时间

为了提高破解效率,本工具采用了以下优化策略:

  1. 优先使用常用密码字典
  2. 记录并跳过已尝试失败的密码
  3. 使用模式匹配减少无效尝试
  4. 智能排序可能性较高的密码组合

系统架构

1. 核心组件

  • Application: 主程序入口
  • CrackUtil: 密码破解核心逻辑
  • CompressUtil: 压缩文件处理
  • DictionaryService: 密码字典服务
  • FileHashUtil: 文件哈希和密码记录
  • FileUtil: 文件操作工具
  • LogUtil: 日志和输出管理

2. 目录结构

CrackPackage/
├── dictionary/           # 密码字典文件
├── failed_passwords/     # 失败密码记录
├── zip_files/           # 待破解的压缩文件
├── output/              # 解压输出目录
└── src/                 # 源代码

工作流程

  1. 初始化

    • 创建必要的工作目录
    • 加载密码字典
    • 初始化缓存系统
  2. 文件处理

    • 扫描压缩文件目录
    • 用户选择目标文件
    • 设置密码长度范围
  3. 破解过程

    • 常用密码字典尝试
    • 数字密码字典尝试
    • 模式密码字典尝试
    • 智能暴力破解
    • 记录失败密码
    • 更新成功密码库
  4. 结果处理

    • 解压成功文件
    • 显示破解结果
    • 更新密码数据库

技术栈

1. 核心依赖

  • Java 8+
  • zip4j:ZIP文件处理
  • junrar:RAR文件处理
  • commons-compress:通用压缩格式支持
  • commons-io:IO操作工具

2. 构建工具

  • Maven:项目管理和构建

使用说明

  1. 将需要破解的压缩文件放入zip_files目录
  2. 运行程序,选择要破解的文件
  3. 输入密码长度范围
  4. 等待破解完成
  5. 成功破解后文件将被解压到output目录

注意事项

  1. 仅供学习和研究使用
  2. 不支持加密算法过于复杂的压缩文件
  3. 破解时间取决于密码复杂度和计算机性能
  4. 建议定期清理失败密码缓存以节省存储空间

未来改进计划

  1. 支持更多压缩格式
  2. 优化破解算法效率
  3. 添加图形用户界面
  4. 支持断点续传
  5. 添加更多密码字典
  6. 实现分布式破解功能

贡献指南

欢迎提交 Pull Requests 来改进这个项目。在提交之前,请确保:

  1. 代码符合项目的编码规范
  2. 添加了适当的测试
  3. 更新了相关文档
  4. 提交信息清晰明了

许可证

本项目采用 MIT 许可证。详见 LICENSE 文件。

联系方式

如有问题或建议,请通过以下方式联系:

致谢

感谢所有为这个项目做出贡献的开发者。

About

CrackPackage是一个用Java开发的压缩文件密码破解工具,支持多种压缩格式(ZIP、RAR、7Z、TAR、GZ、BZ2、XZ等)的密码破解。该工具采用多种破解策略,包括字典攻击和暴力破解方法。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages