想知道一个密码到底要试多久?下面把「暴力破解、字典攻击、掩码攻击」三种方式的原理讲清楚,再说明为什么不同文件格式难度差那么多,以及显卡和 CPU 的算力差距。
| 对比项 | 自己下载破解软件 | 交给我们 |
|---|---|---|
| 算力 | 一台家用电脑,多数情况下还只有集成显卡 | 多台 GPU 解密机同时跑同一个任务 |
| 密码字典 | 网上随便找的几十万条,重复和无效的一大堆 | 多年积累并清洗过的字典,按使用习惯分档 |
| 破解策略 | 只会从头到尾一个个硬试 | 先字典、再掩码、再全量,多档策略逐层推进 |
| 能不能一直跑 | 电脑得一直开着,关机或重启就前功尽弃 | 7×24 在服务器上跑,你把电脑关了也不受影响 |
| 解开的可能性 | 全靠运气,密码稍长一点基本没戏 | 先覆盖可能性最高的组合,短密码常常几十分钟内就有结果 |
| 上手成本 | 装驱动、配命令行、报错没人管 | 上传文件就行,出结果会通知你 |
密码找回的本质,是在所有可能的组合里不断尝试,直到命中正确的那一个。试得越快、组合越少,成功的概率就越高;反过来,组合越多、每试一次的成本越高,找回的希望就越渺茫。本计算器就是把「要试多少次」和「每次要多久」量化出来,让你对自己文件的安全性有个直观判断,也明白为什么有些文件几分钟能开、有些文件跑断电脑也开不了。
暴力破解(Brute Force)不依赖任何先验知识,直接按字符集和长度穷举每一种可能:8 位纯数字只有一亿种组合,而大小写字母+数字+符号的 8 位密码则超过 6×10¹⁴ 种。它会从 aaaaaaaa 一路试到最后一个组合,特点是「最笨也最稳」——只要时间足够,理论上一定能试出来。代价是组合数随长度和字符集指数级膨胀,稍微长一点的密码,单机几辈子都试不完。
绝大多数人不会用随机乱码当密码,而是用生日、姓名、键盘序列(qwerty)或常见单词。字典攻击把这些高频密码整理成词表,优先挨个尝试,往往几分钟就能命中弱口令。它的效率远高于纯暴力,但前提是密码真的在词表里;遇到强随机密码就束手无策。我们积累并清洗过多年的密码字典,正是为了提高这一步的命中率。
掩码(Mask)攻击是暴力破解的聪明版:如果你记得「密码 8 位、开头大写、结尾是 2024」,就可以把这些条件告诉破解程序,让它只生成满足条件的组合。原本 6×10¹⁴ 种的全集,可能一下子缩到几亿种,耗时从「宇宙寿命」变成「几小时」。这也是为什么提交任务时多填一点你记得的线索,成功率会明显上升。
文件并不是直接比对密码,而是比对密码算出的「哈希值」。每试一个密码,程序都要先做一次哈希运算,迭代次数越多就越慢。老格式几乎不加防护:Office 97 用 MD5 / RC4,显卡每秒能试上千万次;而 Office 2013 起做了约十万次 PBKDF2 迭代,每秒只能试一千次上下,慢了一万倍。PDF 的 RC4 很弱、AES 稍强;RAR5 约三万次迭代、比 RAR3 慢几十倍;7z 高达五十多万次迭代,是常见格式里最难的一类。同一个密码,在别人机器上几十分钟解开、你自己跑几天没动静,根因就在这里。
哈希运算是典型的「大量重复、彼此独立」的计算,正好适合显卡的并行架构:一张主流游戏显卡有几千个核心,能同时算几百万个哈希,速度是 CPU 的几十到上百倍。普通电脑要么只有集成显卡、要么让 CPU 硬扛,自然慢得可怜。我们的解密集群是多台 GPU 服务器并行跑同一个任务,再加上字典和掩码策略层层缩小范围,这正是「自己在家跑几个月」和「交给我们几十分钟出结果」的差距所在。
所以,密码长度每增加一位、字符集每扩大一档,找回难度都会成倍上升;而选用更快的文件格式、记得更多密码线索,则能大幅缩短时间。上面的计算器已经把这些因素量化好了——输入你的文件类型和密码范围,就能看到自己电脑和我们集群分别要多久。如果结果让你绝望,不妨直接把文件交给我们试试。
取决于密码长度、字符集和文件加密方式。8 位纯数字约一亿种组合,普通电脑几小时到几天可试完;含大小写字母、数字和符号的 12 位密码,组合数超过 10 的 24 次方,可能需要上千年。用本页计算器输入参数即可立即估算。
暴力破解不依赖先验知识,穷举所有组合;字典攻击优先尝试常见弱口令词表,效率更高;掩码攻击在暴力破解基础上加入已知线索(如 8 位、开头大写),只生成符合条件的组合,大幅缩小范围。
因为不同格式的哈希迭代次数差别巨大。Office 97 用较弱的 MD5/RC4,显卡每秒可试上千万次;Office 2013 起约十万次迭代,每秒仅约一千次,慢约一万倍;7z 迭代超五十万次,是常见格式里最难的一类。
把文件交给我们,先跑跑可能性最高的那批组合,比你自己在家跑几天更有意义。