【发布时间】:2009-07-31 13:21:59
【问题描述】:
如果存在加密文件并且有人想要解密它,可以尝试几种方法。 例如,如果您选择暴力攻击,这很容易:只需尝试所有可能的密钥,您就会找到正确的密钥。对于这个问题,这可能需要太长时间并不重要。 但是尝试密钥意味着以下步骤:
- 选择键
- 使用密钥解密数据
- 检查解密是否成功
除了您需要知道用于加密的算法的问题之外,我无法想象#3 会怎么做。
原因如下:解密数据后,我得到了一些“其他”数据。如果是我可以理解的语言的加密纯文本文件,我现在可以检查结果是否是该语言的文本。 如果它是已知的文件类型,我可以检查特定的文件头。
但是由于人们试图解密一些秘密,所以很可能不知道如果正确解密会得到什么样的信息。
如果不知道要查找什么,如何检查解密结果是否正确?
【问题讨论】:
-
我认为您的最后一个假设至少在某些时候是不正确的。根据传输数据的上下文,您可以提前了解信息的类型。例如,如果您正在解密电子邮件,则数据只有几种合理的格式。加密不是一种独立存在的技术。您需要防止各种攻击,其中许多攻击不是基于破坏加密方案。
-
@jprete:我同意,如果您能出于某种原因猜出文件格式,那么您将处于一个更好的位置。我的想法更笼统,例如“这是一个文件,不知道从哪里来,不知道内容是什么,但它可能是加密的”。
-
叫我愤世嫉俗,但如果你不知道内容是有意义的,何必呢?必须有一些关于内容的基础知识,才能激发破解它的欲望。