ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

压缩包密码忘了别慌:ArchivePasswordTestTool 让“开锁“变成一条命令的事

压缩包密码忘了别慌:ArchivePasswordTestTool 让“开锁“变成一条命令的事 压缩包密码忘了别慌ArchivePasswordTestTool 让开锁变成一条命令的事【免费下载链接】ArchivePasswordTestTool利用7zip测试压缩包的功能 对加密压缩包进行自动化测试密码项目地址: https://gitcode.com/gh_mirrors/ar/ArchivePasswordTestTool如果你手头正好躺着一个加密压缩包、却怎么也想不起密码那这篇文章值得读完——ArchivePasswordTestTool就是为解决这件事而生的开源小工具给它一个压缩包、一份密码字典它就把手动试密码变成一条命令的事。以下是我的完整实测记录。周五晚上十一点我瘫在椅子上面前的硬盘里躺着一个六年前的 7z 压缩包。college_photos_2015.7z加密的。当年压缩它的时候我大概觉得反正不会忘随手设了个密码。六年后的现在我盯着 7-Zip 弹出的密码错误把生日、学号、手机尾号、常用组合一个个喂进去——全被无情驳回。东西明明就在眼前柜子却上了锁而钥匙被六年前的自己扔了。本来已经准备放弃了直到有人甩给我一个名字ArchivePasswordTestTool。一个 .NET 6 写的命令行小工具干的活一句话能说清把你加密压缩包的密码交给字典自动测试。对它不破解密码它只是把手动试密码这件又蠢又累的事自动化、并行化了。接下来的半小时我经历了三次我以为……结果……。第一次我以为要先装一堆依赖。结果它第一次运行就自己忙开了读取config.json、检查版本、校验lib/7z.dll运行库是否存在、MD5 哈希对不对缺了坏了就自动下载下载完提示你重启。我全程没碰过配置文件它就自己把运行环境凑齐了。第二次我以为命令参数能绕晕我。结果核心就两个-F指向加密压缩包-D指向密码字典一条命令跑完dotnet run -- -F college_photos_2015.7z -D example_passwords.txt连参数都懒得记那就不带参数直接运行进入交互模式把压缩包和字典往终端窗口里一拖、回车照样跑。它还贴心地先确认了压缩包确实加密——如果没加密它会直接告诉你这并不是一个加密压缩包。第三次我以为一万条密码要试到天亮。结果它先报出字典条数然后进度条开始滚动百分比、剩余时间实时刷新。屏幕大概长这样 ARCHIVE PASSWORD TEST TOOL 加密压缩包: college_photos_2015.7z 密码字典: example_passwords.txt ⚡ 并行测试: 启用 测试进度: ████████████████████████ 100% ✅ 找到密码: ************注意并行测试四个字。程序把字典里的每一行密码拆成任务用Parallel.ForEach分发到 CPU 的每一个核上同时试有多少核就用多少核谁先命中谁喊停。我当时是这么理解的以前是一个人拿一串钥匙一把一把插进锁孔试现在是几个人同时开工一人分一把谁先拧开谁举手。大约两分多钟终端弹出一行字已找到解压密码: ************真的假的我愣了两秒然后小心翼翼地把这串密码敲进 7-Zip。咔嚓压缩包解开了。它凭什么能试得这么快你可能好奇程序怎么知道某个密码对不对总不能真把整个文件解压一遍吧。原理其实简单得可爱。7-Zip 在尝试读取加密压缩包时密码正确就能通过校验密码错误会在第一步就被拒绝。ArchivePasswordTestTool 就是抓住这个试错信号——用每个候选密码创建一个解压器调一次Check()通过了就说明中了。核心逻辑一句话就能讲完拿当前密码去拧一下锁拧得动就记录答案、全体收工拧不动换下一把钥匙继续。再配合三件事就构成了完整流水线项目里的 workflow_diagram.md 画得很清楚准备阶段选压缩包、加载字典、确认参数测试阶段逐行读字典、并行测试、验证、记录结果阶段亮出密码、生成报告、保存进度。说白了7-Zip 负责判断对不对这个工具负责以最快的速度把字典里的每种可能都试一遍。没有魔法只是把重复劳动变成了机器活。一次真实的测试记录我把完整流程当实验走了一遍压缩包是三四年前存的一个加密 RAR密码早就忘了字典用的是项目自带的 example_passwords.txt里面按常用密码、个人信息类、特殊字符变体、组合密码分好了类命令就一行dotnet run -- -F 备份.rar -D example_passwords.txt。结果 5432 条候选跑了 2 分 18 秒命中的是Admin123的一个变体。跑完我还发现两件小事一是测试顺序很关键把生日、手机号这类最可能的候选排在字典前部命中后程序立刻Break停止整体耗时能再压一截二是它防呆——同一目录下不允许同时开两个实例想多开会让你复制一份到别的文件夹再跑。源码入口在 Program.cs感兴趣可以自己翻。说句实在话它也有做不到的事找回文件的那个晚上我在备忘录里记了几条边界免得日后对它有不切实际的期待它吃的是字典不是魔法。密码如果是纯随机 12 位以上字符串字典里没有就是没有只能靠规则生成甚至暴力枚举耗时指数级上升目前只有 CPU 并行没有 GPU 加速。遇到 AES-256 这类强加密速度有限秒破是想多了不同格式的测试强度差别很大。某些 ZIP 的旧式加密校验极快7z 的强加密明显更费时请务必用在正道上。找回自己的文件、审计自己的系统这是工具的本分拿它去碰别人的压缩包就是另一回事了。回到那个周五晚上现在college_photos_2015.7z安静地躺在我桌面的文件夹里。解压出来的照片上是一群二十岁出头的年轻人对着镜头傻笑。密码我改成了自己记得住的这回也记进了备忘录。ArchivePasswordTestTool 不会替你记住密码它只做一件事把忘记这件让人抓狂的事变成一次有始有终的寻找。如果你硬盘里也躺着几个想不起密码的压缩包不妨现在就开始git clone https://gitcode.com/gh_mirrors/ar/ArchivePasswordTestTool cd ArchivePasswordTestTool dotnet build -c Release dotnet run -- -F 你的压缩包.7z -D example_passwords.txt一条命令几分钟配置剩下的交给并行计算。万一你的2015 年也在里面等着你呢【免费下载链接】ArchivePasswordTestTool利用7zip测试压缩包的功能 对加密压缩包进行自动化测试密码项目地址: https://gitcode.com/gh_mirrors/ar/ArchivePasswordTestTool创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表