AI News HubLIVE
站内改写2 分钟阅读

你能训练AI反转AES吗?

本文探讨了训练AI反转AES加密的可能性。将AES视为可满足性问题,分析不透明和降级编码,并讨论复杂性理论中的平均情况难度和相变现象。

来源Hacker News AI作者: juansebastianl

2026年7月4日——在当今数字世界中,AES加密无处不在:每一次HTTPS浏览器会话、每一段WPA2/3 WiFi连接、每一个硬件级设备加密模块,其核心都是AES算法。这使得反演AES——即找到私钥或明文——成为当今最危险也最有价值的算法问题之一。随着AI吞噬软件,作者认为AI有可能解决AES反演问题。这篇博文详细阐述了这一论点,并提供了GitHub仓库中的强化学习环境供实验。

为什么AES可能脆弱?要让模型解决AES,必须克服两个问题:奖励稀疏性和复杂性理论。显然,后者更为根本。即便超级智能也无法绕过数学和复杂性理论施加的约束。本文首先处理奖励稀疏问题,但重点放在复杂性理论上。

AES是一种代换-置换网络,它通过多轮相对简单的置换(由密钥参数化)来构建。反演AES涉及反演大量复合置换,因此是一个组合问题。作者首先将AES表述为可满足性问题(SAT)。他们选择了AES-XTS模式(全盘加密使用的模式),该模式使用两个独立的AES-256密钥:K1加密数据,K2派生每块调整值。解密时,我们观察到密文C和公共索引s、j,目标是恢复明文P(以及密钥)。

为了用求解器攻击,需要将密码写成具体对象。作者将XTS块的窗口编译成一个平面电路,包含三种记录:值(字节大小的量,包括输入、常量、内部导线)、操作(原语运算)和约束(断言)。关键的建模决策是暴露密码的粒度,有两种选择:不透明编码和降级编码。

在不透明编码中,整个块是单个整体操作,没有导线,约束只是预测密文等于目标。它紧凑但搜索空间是黑盒,局部搜索无从下手。在降级编码中,每个AES微步骤都有自己的操作和内部导线,每条导线带有一致性约束。目标是将反演铸造为未知量上的约束满足问题,约束分为三类:一致性(仅降级编码)、目标(密文匹配)和ASCII(平文字节为ASCII)。每个约束成为非负残差,通过汉明距离度量,当总残差为零时获得可行解。

一旦涉及复杂性理论,立即亮起红灯。SAT问题通常是NP-hard的。但作者指出,密码学相关的并非最坏情况复杂度,而是平均情况复杂度。Bogdanov和Trevisan(2005)以及Akavia等人的研究表明,平均情况复杂度并非来自NP的最坏情况。第二个事实关于SAT中的相变:子句与变量比率q存在一个中间点,问题从可满足变为不可满足,且变得极难。AES可能落在这个困难的中部区域。通过使用降级编码和ASCII约束,可以为AI提供中间奖励信号。尽管数学上的NP-hard性无法绕过,但平均情况下的实际难度可能允许AI突破。这一探索不仅具有理论价值,也可能对密码学产生深远影响。

此外,作者还提到了一个交互式可视化,展示了随机3-SAT中从容易到困难再到容易的相变,这与自旋玻璃模型中的挫败现象相似。在相变点附近,问题变得像自旋玻璃一样,能量景观破碎为许多竞争性的局部最小值。AES可能恰好处于这样的临界区域,使得AI有可能利用结构找到解。作者提供了一个强化学习环境,鼓励读者亲自尝试训练模型。总之,虽然挑战巨大,但AI反转AES并非天方夜谭。