我在 @知乎 回答了【关于RAR文件的密码破解?】:难度挺大的。暴力破解要多久取决于用什么设备。比如 Radeon R9 295X2 虽然比较贵,一块大概要 7000 元,但物有所值,比一般 CPU 快的多,用这个破解 10 位的 RAR 密码大概只要 6000 年。
早上我转发了tk老师在2014年12月8日回答的知乎问题的微博
我有时喜欢让思绪玩“跳房子”游戏。以tk老师这条知乎回答为例,可以跳出很多花样。没有AI的时候,只能全手动检索和计算,或是按照已有知识去估算和猜想。现在有AI辅助的话,虽说有点偷懒,但坚持手工验证也其乐无穷。对让多少有点“不干正事”的意味,但恰好今天的“正事”都干完了,感兴趣的朋友可以跟着我一起“跳房子”。
检索一下 Radeon R9 295X2 这款显卡的 SPEC 和当时的新闻,大概能了解到这算是当时的“卡皇”,有着两颗 Hawaii XT 核心。理论算力是 11.5 TFLOPS。
跳到2014年的 RAR,可以知道当时的版本是 WinRAR 5.0,支持 BLAKE2。
接下来考虑10位 RAR 密码加上这块显卡怎么才算出 6000 年,就可以推测当时隐含的条件。因为 RAR5 使用的是 PBKDF2-HMAC-SHA256 算法,不管是查 Hashcat 历史数据还是用现在流行显卡的算力去推算,哈希速率都落在 20kH/s 的级别。
20kH/s 的哈希速率需要约 6000 年,那么尝试次数就落在 3.78 x 10^15的位置。
如果隐含密码的字符集是 ASCII 码中的 95 个可显示字符,那么尝试次数应该在 5.9 x 10^19 ,得几百万年才能算出来。而密码的字符集限制在“小写字母+数字”的话,36^10 是 3.65 x 10^15,基本吻合。
所以可以猜测当时计算耗时的前置条件可能是:20kH/s哈希速率,RAR5(PBKDF2),base36字符集,10位密码。
接下来思绪跳到“2025年的7000元方案要算多久?”,7000元不考虑二手,大概能买到一张七彩虹的 RTX 4080。哈希速率估计能到 200 kH/s,有10倍的提升。也就是说2025年花7000元买显卡,还是原来的压缩包,大概需要600年。
那如果在现在“个人不计成本”呢?设想一下我斥巨资组建4090千卡集群,单张4090比4080快60%,那么千卡并行的话还需要约4.5个月才能解开这个压缩包。
然后想一下,谷歌把Gemini3下线一段时间,这部分算力全拿来破解这个压缩包,需要多久?这个估算就会比较粗略了,我假设谷歌给Gemini3部署的算力大概是5万张H100量级,考虑到H100不擅长哈希计算,所以单卡哈希速率我按 150 kH/s 来算。那么为了破解这个压缩包,我们可能会有5.6天的时间用不了Gemini。
然后还可以继续往下想,每提出一个假设,我就需要去搜集和了解对应的知识。比如还可以想下2014年底的7000元相当于现在多少钱。