如何向非技术人员描述 RC4 的“偏见”

信息安全 rc4
2021-08-28 05:22:32

我正在寻找在 RC4 弱点的上下文中使用的 'bias' 的'plain English' 版本。

我知道 RC4 在例如 http(s) 流量上生成一串伪随机位。如果你用它加密大部分相同的数据,你加密的内容几乎没有变化,这允许你的输出有相似之处。所以,你的部分字符串看起来是一样的,甚至可能重复你以前看到的。

在这种情况下,我可以使用“输出中的相似性”或“重复自身的字符串部分”作为“偏见”的翻译,还是有更好的解释?

1个回答

我认为向非技术受众解释 RC4 的弱点与向类似受众解释加密中随机性的作用非常相似。

假设我希望我的军队在黎明时进攻,所以我将“黎明进攻”消息加密,生成密文 c_0,并将其发送给我的军队,然后军队在黎明时攻击我的敌人。伟大的。

下周,我要在黎明再次进攻。所以我使用不同的密钥并再次加密我的消息“黎明攻击”,以生成密文 c_1,然后我对我的军队说。想象一下,我这样做 n 次以产生 n 个密文。

如果我的敌人可以阅读我发送的消息,他会在我的军队在黎明时分发动攻击之前在我发送的消息中寻找模式(偏见)。如果所有这些消息都有相似之处(例如,它们都以“?”字符开头),我的敌人可能会猜到任何以“?”开头的消息。对应“黎明攻击”。但是,如果您在密文中找不到任何模式,那么敌人就不会了解您的通信。

RC4 的弱点在于,使用不同密钥加密的同一消息会产生具有共同模式(统计偏差)的密文。这些通常比以相同的字符开头要微妙得多,但要点是相同的。