Cryptography 2010年及以后的密码破解
在过去的几天里,我已经研究了一些密码学和相关的问题,现在我很困惑。我有一个关于密码强度的问题,希望有人能通过分享他们对以下问题的看法来澄清我的困惑。我开始沉迷于这些事情,但我需要把时间花在其他方面:-) 让我们假设我们有一个八位数的密码,它由大写字母、小写字母、数字和常用符号组成。这意味着我们有96^8~=72亿个不同的密码 据我所知,至少有两种方法可以破解此密码。一种是尝试暴力攻击,我们尝试猜测每个可能的角色组合。现代处理器(如2010年的Core i7 Extreme)每秒可以猜出多少个密码(单个密码猜出需要多少条指令,为什么)?我的猜测是,破解这样一个密码需要几年时间的现代处理器 另一种方法是获取操作系统存储的密码散列,然后搜索冲突。根据使用的散列类型,我们可能会比通过暴力力量攻击更快地获取密码。关于这方面的一些问题:Cryptography 2010年及以后的密码破解,cryptography,passwords,aes,Cryptography,Passwords,Aes,在过去的几天里,我已经研究了一些密码学和相关的问题,现在我很困惑。我有一个关于密码强度的问题,希望有人能通过分享他们对以下问题的看法来澄清我的困惑。我开始沉迷于这些事情,但我需要把时间花在其他方面:-) 让我们假设我们有一个八位数的密码,它由大写字母、小写字母、数字和常用符号组成。这意味着我们有96^8~=72亿个不同的密码 据我所知,至少有两种方法可以破解此密码。一种是尝试暴力攻击,我们尝试猜测每个可能的角色组合。现代处理器(如2010年的Core i7 Extreme)每秒可以猜出多少个密码
是的,就蛮力攻击而言,我还是考虑猜测,再猜一猜最实用的方法。< /P>
为了让你的头脑清醒一点,考虑一下:你想安全地存储信息多长时间?大多数情况下,一年或两年的时间就是所需要的时间,在这种情况下,一个正常的AES-256应该可以正常工作。如果您需要更长的安全性,那么您应该尽可能使用最大的密钥,并希望使用最好的密钥,但这无法保证。即使是臭名昭著的一次性键盘也不能让你免于这个问题。密码更大的问题是它们很少是真正随机的。许多人会在密码中使用全部或部分单词,这意味着使用字典的攻击会大大减少搜索可能密码的空间。即使密码是由人“随机”生成的(不使用机械辅助,如伪随机发生器),我们也会有无意识的偏见,影响我们如何尝试使某些东西“随机”,攻击者可以利用这些偏见
另一个问题是,人们经常会对许多不同的登录使用相同的密码。并非所有登录都是加密安全的;事实上,仍有一些应用程序以明文形式传输密码。它们也容易被键盘记录者捕获,而键盘记录者通常可以通过看似无害的载体(如USB拇指驱动器)进行传输。这是我迄今为止在这个问题上的最新进展 当然,单个密码猜测+解密周期所需的处理器指令数取决于硬件和解密算法。我不知道如何正确地思考这个问题,但我猜测一个这样的循环可能需要大约1000条指令。现在,如果我们采用一个能够实现150000 MIPS的Intel Core i7 Extreme CPU,那么这将为我们提供每秒15000000次的访问,这是一台您今天可以轻松购买的PC可以实现的 因此,对于问题中描述的密码(例如AES256加密文件的密码),暴力破解密码的尝试可能在556天内成功 如果一个猜测解密周期1000条指令的假设是正确的,那么您今天可以购买的一台标准PC就可以在不到两年的时间内破解AES256加密文件的密码。呸,谜语解开了
我的结论是,对于大多数实际用途而言,八位字母数字+符号字符仍然足够。两年后,我们都必须学会记住更长的密码:-)我不能回答定量问题,但是: 计算8个字符密码的可能性时,假设所有组合都是可能的,包括很难识别的组合