【发布时间】:2010-03-06 09:52:30
【问题描述】:
与 RC4 (RC4_PRNG+XOR) 类似,使用另一个 CSPRNG(加密安全伪随机数生成器)[Isaac、BlumBlumShub 等)代替 RC4 并使用生成的密钥流对数据进行 XOR 是否安全?
【问题讨论】:
标签: encryption xor prng
与 RC4 (RC4_PRNG+XOR) 类似,使用另一个 CSPRNG(加密安全伪随机数生成器)[Isaac、BlumBlumShub 等)代替 RC4 并使用生成的密钥流对数据进行 XOR 是否安全?
【问题讨论】:
标签: encryption xor prng
本质上,这只是使用 Blum Blum Shub(或任何 PRNG)作为流密码。这不是它们的设计用途,它们可能对在流密码上下文中有意义但在 CSPRNG 上下文中没有意义的攻击(例如相关密钥攻击)很弱。
如果这是您想要的,最好只使用现代流密码。比如DJB的Salsa20就很受好评。
【讨论】:
好吧,这取决于。
大多数加密算法比 XOR 做得更多。但那是因为密钥比明文短。如果密钥和明文一样大,并且真正随机,那么破解它是不可能的(称为One Time Pad)。
所以,你需要解释更多。
但我猜你的密钥长度与输入长度不一样,即使是这样,几乎可以肯定你使用的随机数服务不是真正的 安全,所以我建议不要使用您的方法(此外,不言而喻(也许)OTP 的问题是密钥交换)。
【讨论】:
在该方案中替换 CSPRNG 可能同样安全,并且具有完全相同的一组假设、弱点和实际问题。
【讨论】: