【问题标题】:Time required to check all possible keys (cryptography)检查所有可能的密钥所需的时间(密码学)
【发布时间】:2014-08-25 09:11:44
【问题描述】:

我发现,要确定检查加密密钥(例如 3DES)的所有可能密钥所需的时间,它是密钥长度乘以计算机尝试一个密钥所需的时间。平均而言,在尝试了一半的键后可以猜到,所以结果应该乘以一半。

现在我的问题是:我如何确定计算机尝试一个键需要多长时间(使用最快的计算机)?

【问题讨论】:

  • 这个问题似乎离题了,因为它与编程无关。我相信这些问题已经在crypto.stackexchange.com 上讨论过
  • @EugeneMayevski'EldoSCorp 感谢您的回复。不幸的是,我无法在那里找到对我的问题的答复。
  • 这被称为蛮力。使用 2 ^ (n - 1) 其中 n 是密钥中 有效 位的数量。当然,通常有比蛮力更快的方法。捷径越少,密码越好。

标签: encryption cryptography key


【解决方案1】:

编写一些尝试 1,000 个键的代码并运行它。如果它在几秒钟内运行,则增加键的数量直到几分钟(或几小时,如果你有耐心的话)。例如,10,000 个键、100,000 个键等。

尝试什么键并不重要——您可以一次又一次地尝试相同的全零键。您正在做的是在合理的时间内对大量键进行计时,从中可以推断出尝试每个可能的键所需的时间。

【讨论】:

    猜你喜欢
    • 2015-09-03
    • 1970-01-01
    • 2021-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多