如何获得Blowfish加密密钥

时间:2011-01-07 05:50:34

标签: cryptography key encryption blowfish

我使用Blowfish使用相同的密钥以加密和解密的形式发送了大量邮件。有没有办法从这些消息中获取key

对任何算法或工具的引用都将受到高度赞赏。 我只掌握密码学的基本知识,所以如果问题太广泛而且不够具体,请纠正我。

3 个答案:

答案 0 :(得分:6)

不,密码术使用数学/二进制函数来创建(或更确切地说,transform)原始数据为加密信息。如果它将密钥存储在消息中,那么它将变得无用。

以下是Blowfish算法如何工作的参考:Link

以下是对称密钥加密的参考资料,其中Blowfish是(作为对称分组密码)的一部分:Link

答案 1 :(得分:6)

获得密钥的机会并不多。我看到的唯一攻击是:

  • 利用加密实施中的漏洞。 Blowfish是一种分组密码,因此它只加密固定大小的块。要加密可变长度文件,您需要mode of operationpadding scheme。在你的帖子中,你不知道哪些文件被用于你的文件,但是一些针对密码学的成功攻击会利用错误的选择或实施这些文件。

  • 如果密钥来自密码,您可以尝试猜密码。除上述内容外,您还需要了解the algorithm that was used to derive the password。您还可以在Internet上找到几个dictionaries,它们基本上是可能密码的长列表。通过一些工作,您可以编写一个程序,每秒检查几个密码。我的经验表明,如果你很幸运并且密码在字典中,你可能会在几天内找到它。

为了完整起见,trying all the possible keys需要的不仅仅是宇宙的生命。

答案 2 :(得分:1)

如果这些消息存储在文件中并且文件已加密,则可以编写脚本以对这些文件执行基于字典的攻击。当然,我假设这些文本存储在文件中并且文件已加密。

样品:

$echo "Super secret" >> secret.txt; openssl enc -aes-128-cbc -in secret.txt -out secret.enc -k password

你可以通过弄清楚它来扭转这个过程