当我有IV,纯文本和加密文本时,获取AES CBC密钥

时间:2012-07-28 16:55:56

标签: encryption cryptography aes

我正在寻找一种从这组信息中获取密钥的方法,我知道我们正在使用带有CBC的16字节块,并且我有第一个16字节明文和加密,以及使用过的IV。

目前我可以通过比较输出来测试一个键是否正确,但是由于显而易见的原因我不能强行使用16个字符键,阅读其他帖子我的理解是拥有我拥有的数据可能有可能获得键。

任何提示?

2 个答案:

答案 0 :(得分:7)

你要做的事情被称为“已知明文atack”,你同时拥有密文和明文,你所缺乏的只是使用的密钥。不幸的是,所有现代的密码都是为抵御这种攻击而设计的。除非你拥有极其复杂的数学技能,否则你将无法以这种方式找到钥匙。 AES可以抵抗已知的明文攻击。

您必须尝试其他方法来确定密钥。主人是否将它写在某张纸上?

答案 1 :(得分:1)

请注意,如果已应用AES,则无法找到密钥。但是,根据stackoverflow上的错误实现量来判断,密钥也可能是密码或字符串的简单SHA-256。如果您可以获得有关如何生成/应用或存储密钥的信息,您甚至可以绕过AES-256。

否则你的唯一攻击向量是破坏AES或暴力强制密钥。在这种情况下,我祝你好运,因为即使使用量子计算机,强行使用256位密钥也是完全不可能的。除非发现漏洞,否则AES毕竟不是 可证明是安全的。 可能是一个漏洞。