goo*_*ing 0 c cryptography cryptanalysis
据说DES是不安全的.我想这是因为密钥是55位长,所以使用暴力会花费最多2 ^ 55次迭代来找出现在不多的密钥.但是如果我们迭代2 ^ 55,我们何时知道何时停止?
这是2 56而不是2 55.
如何知道何时停止有两种选择.一个是您正在进行已知的纯文本攻击 - 即,您知道特定消息的实际文本,使用它来学习密钥,然后使用它来读取其他消息.在很多情况下,你不会知道的完整文本,但无论如何可能知道一些作品-例如,你可能知道一些事与你计较,或类型的所有邮件使用的地址块,如果一个文件已被即使实际内容未知,加密也可能具有可识别的标题.
如果你不知道(任何)任何消息的文本,你通常依赖于自然语言通常是相当多余的事实 - 对它们的结构有很多了解.举几个例子,用英语,你知道空格通常是最常见的字符,e是最常见的字母,几乎没有单词连续两个以上相同的字母,几乎所有单词都包含至少一个元音等.在典型情况下,您可以进行几种不同级别的统计分析 - 非常简单,可以非常快速地排除大多数可能性.对于那些通过该测试的人,你做了第二次分析,很快就排除了其余的绝大多数.
当您完成,这是可能的,你可能需要人为判断几种可能性之间进行选择-但在所有诚实,这是相当不寻常的.统计分析通常是完全足够的.
我应该补充一点,有些人发现统计分析有问题,他们试图阻止它,例如通过像霍夫曼压缩这样的算法压缩数据,以最大化压缩数据中的熵.