3

注意:这与编程没有明确的关系,但我希望这可以从程序员的角度来解释。

关于当前的“密码强度等级”,我根本不了解两件事。这一切都与蛮力进入有关。(如果这些“密码强度等级”与除使用常用/流行密码之外的任何其他类型的违规行为有关,请告诉我)。

1) 只要密码系统允许使用它们,我是否包含数字/符号/大写字母又有什么关系?

例如,让我们说:

a) 系统接受的字符是 az、AZ、0-9,以及它们的“移位值”'!' 到 ')',所以有 72 个可能的符号。

b) 我使用长度为 10 的密码,因此有 72^10 种可能性。

c) 我的密码不在前 10,000 个最常用/最流行的密码之列。所以剩下 72^10 - 10,000 种可能性。

像“sndkehtlyo”这样的全小写密码是否与“kJd$56H3di”具有相同的强度,因为它们都具有包含附加字符的相同可能性?无论我是否使用它们,蛮力算法是否都必须包含这些数字/符号/大写字母?似乎这些评级系统认为暴力尝试将首先尝试所有 26^n 小写密码,然后尝试所有 52^n 密码,然后是所有 62^n 密码,依此类推。

2)为什么这很重要?我还没有遇到任何密码系统在经过少量固定尝试(通常是 5 次)后不会将您锁定。如今,蛮力方法怎么可能奏效?

我觉得我在这里遗漏了一些基本的东西。

4

3 回答 3

7

1)破解密码不需要一次性发生。一个实施良好的蛮力破解可能首先迭代小范围的字符,然后进入大写字母和数字。首先从最简单的范围开始(可能只是小写的 az)会找到那些不幸构建密码的密码。它们也可能首先从字典攻击或最常用密码攻击开始,因为它们花费的时间很少。

2) 破解者不会通过某些在线服务的登录提示进行暴力破解。任何真正想要访问帐户的人都会检索用户密码的哈希并在他们自己的机器上破解它,而不是通过互联网。虽然实际上有无限种方法来散列密码,但有一些非常常见的方法可以通过诸如散列字符长度等属性来识别。您可以在此 Wikipedia 文章中阅读有关常见哈希算法的更多信息。

于 2013-01-11T22:40:06.370 回答
2

1) 所有人造密码都不是完全随机的。换句话说,考虑到人为因素(例如记忆性),密码空间的概率分布是不均匀的。

2)尝试次数限制用于身份验证,这是一种访问控制的手段。它与密码强度无关。它是系统级控制方法,通常是可配置的。当然,它是对抗暴力攻击的有效武器,但是没有这种访问控制方法仍然可以设计一个系统。此外,黑客可能不会直接破解系统,但他们可以从网络中截获包含加密密码或其他任何内容的用户数据,并使用暴力或其他方式破解它。因此,高强度密码方案、高安全性密码方法和精心设计的访问系统可以共同构成一个强大的安全系统。

于 2013-01-11T23:44:14.770 回答
1

一般来说,使用蛮力系统,你是正确的。但是,许多自动密码破解者通过尝试常见的英语单词及其组合来开始搜索。例如:运动队、州、日期等……因此,通过拥有这些特殊字符,它立即消除了很多这些可能性。一般来说,如果你担心暴力破解,长得多的密码比带有特殊字符的短密码更安全。

于 2013-01-11T22:35:17.423 回答