我正在为一个密码解决方案进行代码审查,该解决方案用一个常量IV重复使用相同的密钥。我想证明,通过计算密钥和解密他们所有的测试数据,这不是正确的方法。
破坏这个系统的高级伪代码或进程是什么?
发布于 2013-11-21 18:55:47
如果最后16个字节的密文是填充,那么您实际上有简单的ECB (电子CodeBook)模式。欧洲央行是安全的,只要你所有的公开声明都有一个街区长,而且永远不会重复。
发布于 2013-11-22 00:39:12
你没有提到密码的任何认证。如果您可以更改IV (听起来非常不可能),那么您可以对明文(好像是 )进行相当精确的更改。
理想情况下,从您的角度来看,可能会有一个填充甲骨文攻击 (我不理解,所以这里不会描述)。
如果您可以更改第一个密文块并找出它们使用的填充方案,那么您可以导致解密输出一个大于16个字节的明文,其中前16个字节被混淆,其余的输出由您选择。如果您可以更改两个密文块,并了解这些明文解密到哪些明文,并找出它们正在使用的填充方案,那么您可以使解密输出一个大于16个字节的明文,在这个明文中,您对明文的前16个字节有很小的控制,其余的明文则由您选择。
如果您更改了第一个密文块并找出了它们使用的填充方案,并且当最终块解密为全零时,它们的解填充将不会被拒绝,那么对于每一个密文,都有一个小于16个字节的明文,您可以将其解密输出。
https://crypto.stackexchange.com/questions/11849
复制相似问题