Cryptography 2010年及以后的密码破解

Cryptography 2010年及以后的密码破解,cryptography,passwords,aes,Cryptography,Passwords,Aes,在过去的几天里,我已经研究了一些密码学和相关的问题,现在我很困惑。我有一个关于密码强度的问题,希望有人能通过分享他们对以下问题的看法来澄清我的困惑。我开始沉迷于这些事情,但我需要把时间花在其他方面:-) 让我们假设我们有一个八位数的密码,它由大写字母、小写字母、数字和常用符号组成。这意味着我们有96^8~=72亿个不同的密码 据我所知,至少有两种方法可以破解此密码。一种是尝试暴力攻击,我们尝试猜测每个可能的角色组合。现代处理器(如2010年的Core i7 Extreme)每秒可以猜出多少个密码

在过去的几天里,我已经研究了一些密码学和相关的问题,现在我很困惑。我有一个关于密码强度的问题,希望有人能通过分享他们对以下问题的看法来澄清我的困惑。我开始沉迷于这些事情,但我需要把时间花在其他方面:-)

让我们假设我们有一个八位数的密码,它由大写字母、小写字母、数字和常用符号组成。这意味着我们有96^8~=72亿个不同的密码

据我所知,至少有两种方法可以破解此密码。一种是尝试暴力攻击,我们尝试猜测每个可能的角色组合。现代处理器(如2010年的Core i7 Extreme)每秒可以猜出多少个密码(单个密码猜出需要多少条指令,为什么)?我的猜测是,破解这样一个密码需要几年时间的现代处理器

另一种方法是获取操作系统存储的密码散列,然后搜索冲突。根据使用的散列类型,我们可能会比通过暴力力量攻击更快地获取密码。关于这方面的一些问题:

  • 上面句子中的断言正确吗
  • 我如何考虑为MD4、MD5等哈希查找冲突所需的时间 最后,不管使用AES-128/256进行文件加密的强度如何,薄弱环节仍然是我使用的en/解密密码。即使破解加密文本的时间比宇宙的生命周期还要长,对我的反加密/加密密码(猜测密码,然后尝试解密文件,尝试下一个密码…)的暴力攻击也可能比宇宙的结束早很多。对吗

    如果人们能够怜悯我,帮助我思考这些可能很简单的问题,让我能够回去工作,我将非常感激

  • 我不知道你的“断言”是什么意思?当然,它“可能”更快。 但是,一般来说,你不必担心使用哈希方法作为攻击向量。从理论上来说,找到这些冲突应该是非常困难的(阅读:不切实际),但是如果有一种算法可以快速确定冲突,那么相应的哈希算法就很简单,并且容易被破坏,依赖它的所有应用程序都必须将其替换为另一个

  • 你没有。你应该坚持使用那些不被破坏的算法。例如,MD5和SHA1被视为已损坏。虽然目前似乎还没有一个真正有效的应用程序可以用于实际发现碰撞,但研究人员相信它可能就在眼前。目前,f.ex。MD5上最著名的前映像攻击的复杂度为2到大于100的幂。考虑到这超过了宇宙中原子的数量,但已经被认为是不安全的,你甚至不必担心那些被认为是安全的算法

  • 不知道

  • 是的,就蛮力攻击而言,我还是考虑猜测,再猜一猜最实用的方法。< /P>


    为了让你的头脑清醒一点,考虑一下:你想安全地存储信息多长时间?大多数情况下,一年或两年的时间就是所需要的时间,在这种情况下,一个正常的AES-256应该可以正常工作。如果您需要更长的安全性,那么您应该尽可能使用最大的密钥,并希望使用最好的密钥,但这无法保证。即使是臭名昭著的一次性键盘也不能让你免于这个问题。

    密码更大的问题是它们很少是真正随机的。许多人会在密码中使用全部或部分单词,这意味着使用字典的攻击会大大减少搜索可能密码的空间。即使密码是由人“随机”生成的(不使用机械辅助,如伪随机发生器),我们也会有无意识的偏见,影响我们如何尝试使某些东西“随机”,攻击者可以利用这些偏见


    另一个问题是,人们经常会对许多不同的登录使用相同的密码。并非所有登录都是加密安全的;事实上,仍有一些应用程序以明文形式传输密码。它们也容易被键盘记录者捕获,而键盘记录者通常可以通过看似无害的载体(如USB拇指驱动器)进行传输。

    这是我迄今为止在这个问题上的最新进展

    当然,单个密码猜测+解密周期所需的处理器指令数取决于硬件和解密算法。我不知道如何正确地思考这个问题,但我猜测一个这样的循环可能需要大约1000条指令。现在,如果我们采用一个能够实现150000 MIPS的Intel Core i7 Extreme CPU,那么这将为我们提供每秒15000000次的访问,这是一台您今天可以轻松购买的PC可以实现的

    因此,对于问题中描述的密码(例如AES256加密文件的密码),暴力破解密码的尝试可能在556天内成功

    如果一个猜测解密周期1000条指令的假设是正确的,那么您今天可以购买的一台标准PC就可以在不到两年的时间内破解AES256加密文件的密码。呸,谜语解开了


    我的结论是,对于大多数实际用途而言,八位字母数字+符号字符仍然足够。两年后,我们都必须学会记住更长的密码:-)

    我不能回答定量问题,但是:

    计算8个字符密码的可能性时,假设所有组合都是可能的,包括很难识别的组合