密码分析:两个明文文件的异或



我有一个文件,其中包含两个xor明文文件的结果。我如何攻击这个文件,以便解密明文文件中的任何一个?我找了很多,但没有找到任何答案。谢谢!

编辑:

嗯,我也有两个密文,它们被XOR来得到两个明文的XOR。我问这个问题的原因是,根据Bruce Schneier在1996年出版的《应用密码学》(Applied Cryptography)第198页所说的"……她可以将它们放在一起异或,并获得两个相互异或的明文消息。这很容易破解,然后她可以将其中一份明文与密文进行异或,以获得密钥流。"(这与一个简单的流密码有关)但除此之外,他没有提供任何解释。所以我才问你。请原谅我的无知。

使用的算法也很简单,使用长度为3的对称密钥

进一步编辑:

我忘了补充:我假设一个简单的流密码被用于加密。

我不是密码分析师,但如果您对文件的特征有所了解,您可能会有机会。

例如,让我们假设您知道两个原始明文:

  • 包含纯ASCII英文文本
  • 是关于体育(或其他)的文章

给定这两条信息,您可能采取的一种方法是使用您可能会在其中出现的单词扫描密文"解密",例如"足球","球员","得分"等。在密文的第0位使用"football"执行解密,然后在第1位,然后在第2位,依此类推。

如果解密字节序列的结果是一个单词或单词片段,那么您很有可能从两个文件中找到了明文。这可能会给您一些关于周围明文的线索,您可以看到这是否会导致合理的解密。等等。

对于您可能希望在明文中出现的其他单词/短语/片段重复此过程。


回应你的问题编辑:Schneier所说的是,如果有人有两个密文,使用相同的密钥进行异或加密,XORing这些密文将"取消"密钥流,因为:

(A ^ k) - ciphertext of A
(B ^ k) - ciphertext of B
(A ^ k) ^ (B ^ k) - the two ciphertexts XOR'ed together which simplifies to:
A ^ B ^ k ^ k - which continues to simplify to
A ^ B ^ 0
A ^ B

所以现在,攻击者有了一个新的密文,它只由两个明文组成。如果攻击者知道其中一个明文(假设攻击者可以合法访问A,但不能访问B),则可以使用它来恢复另一个明文:

A ^ (A ^ B)
(A ^ A) ^ B
0 ^ B
B

现在攻击者有了b的明文。

实际上比这更糟——如果攻击者有A和A的密文,那么他已经可以恢复密钥流了。

但是,我上面给出的猜测方法是上述方法的一种变体,攻击者使用(希望是好的)猜测而不是已知的明文。显然,这并不容易,但这是相同的概念,并且无需从已知的明文开始即可完成。现在,攻击者有了一个密文,当他正确地猜测了一些明文时,它会"告诉"他(因为它会从解密中得到其他明文)。因此,即使在原始异或操作中使用的密钥是随机乱码,攻击者也可以在进行有根据的猜测时,使用"删除"了随机乱码的文件来获取信息。

您需要利用这两个文件都是纯文本的事实。从这个事实可以推导出很多含义。假设两个文本都是英语文本,你可以使用一些字母比其他字母更受欢迎的事实。请看这篇文章

另一个提示是注意正确的英语文本的结构。例如,每当一个语句结束,下一个语句开始时,都有一个(点,空格,大写字母)序列。

请注意,在ASCII码中,空格是二进制的"0010 0000",在字母中改变该位将改变字母的大小写(从低到高,反之亦然)。如果两个文件都是纯文本,那么将会有很多XORing占用空间,对吗?分析本页的可打印字符表

另外,在结尾你可以使用拼写检查器。

我知道我没有为你的问题提供解决方案。我只是给了你一些提示。玩得开心,请分享你的发现。这真是一项有趣的任务。

这很有趣。施奈尔的书确实说过,打破这一点很容易。然后他把它挂在那里。我猜你必须把一些练习留给读者!

有一篇由Dawson和Nielson撰写的文章,显然描述了文本文件这项任务的自动化过程。买一件东西有点贵。然而,第二篇论文题为"自动密码分析的自然语言方法"《Two-time Pads》参考了Dawson和Nielsen的工作,并描述了他们所做的一些假设(主要是文本限制在27个字符)。但第二篇论文似乎是免费提供的,并描述了他们自己的系统。我不确定它是不是免费的,但它在约翰霍普金斯大学的服务器上是公开的。

那篇论文大约有10页长,看起来很有趣。我现在没有时间读它,但以后可能会。我觉得很有趣(也很能说明问题),用10页的论文来描述一个被另一位密码学家描述为"简单"的任务。

在不了解这两个文件的结构之前,我认为你做不到。

除非您有其中一个明文文件,否则您无法获得另一个文件的原始信息。在数学上表示:

p1 XOR p2 = en

你有一个方程和两个未知数,你不可能从中得到有意义的东西

最新更新