2014-09-29 210 views

回答

3

当然。这是很长的解释,它超过了我的卑微的能力,所以你需要阅读关于Entropy in Information Theory的概念。从Wikipedia一个简单的解释:

人类生成的口令

人们在获得足够的熵产生令人满意的密码出了名的失职。一些舞台魔术师以一种微小的方式利用这种无法娱乐的方式,通过对听众假设的随意选择(数字)进行预测。

因此,在超过300万8个字符的密码的一个分析,字母“e”被用于超过150万次,而字母“F”仅使用25万次。一个统一的分配会让每个角色使用大约90万次。最常用的数字是“1”,而最常见的字母是a,e,o和r。

用户很少会形成密码充分利用更大的字符集。例如,2006年从MySpace网络钓鱼计划获得的黑客攻击结果显示34,000个密码,其中只有8.3%使用了混合大小写,数字和符号。

注意,如果在该密码的每个字符从该组随机选择使用整个ASCII字符集(标号,大小写混合字母和特殊字符)相关联的全强度才能实现。大写一个字母并在密码中添加一个或两个数字和一个特殊字符不会达到同样的强度。如果以可预测的方式添加数字和特殊字符,比如说在密码的开始和结尾处,与相同长度的全部字母随机密码相比,它们甚至可以降低密码强度。 NIST特别出版物800-63

enter image description here

NIST特刊2004年6 800-63提出以下方案粗略估计人类产生的密码熵:2

The entropy of the first character is four bits; 
The entropy of the next seven characters are two bits per character; 
The ninth through the twentieth character has 1.5 bits of entropy per character; 
Characters 21 and above have one bit of entropy per character. 
A "bonus" of six bits is added if both upper case letters and non-alphabetic characters are used. 
A "bonus" of six bits is added for passwords of length 1 through 19 characters following an extensive dictionary check to ensure the password is not contained within a large dictionary. Passwords of 20 characters or more do not receive this bonus because it is assumed they are pass-phrases consisting of multiple dictionary words. 

使用此方案中,不包含大写字母和非字母字符的八字符人选密码估计具有18位熵。 NIST的出版物承认,在开发时,很少有关于密码真实世界选择的信息。

enter image description here

后来的研究为人类选择的密码熵利用新出现的现实世界的数据表明,NIST的方案不为人类提供选择的密码熵估计的有效指标。 可用性和执行方面的考虑

由于国家键盘实现各不相同,并非所有的94 ASCII可打印字符可以随处使用。这对于希望使用本地计算机上的键盘登录到远程系统的国际旅行者来说是个问题。请参阅键盘布局。许多手持设备(如平板电脑和智能手机)需要复杂的移位序列才能输入特殊字符。

验证程序会根据密码允许的字符而有所不同。有些不认识大小写差异(例如,大写“E”被认为等同于小写“e”),其他人则禁止其他一些符号。在过去的几十年中,系统允许在密码中使用更多的字符,但是限制依然存在。系统在允许的最大密码长度上也有所不同。


,或者通俗地说:为您添加了字母数字选项,每增加一个字节,你让密码更加复杂和难以打破。

更多信息here

+0

好说明 – 2014-10-10 04:54:45

2

1)如果你只使用字符和数字,你可能会使用一些词或数字,可以很容易地猜到了。黑客有重复和快速尝试所有已知单词的工具,并且在尝试使用特殊字符的密码之前尝试这些方法

2)如果您只使用字母和数字,则猜测任何位置的字符的概率为1/62有62种可能)。
如果您使用特殊字符(there are 32 of them),则概率降至1/94。
如果您键入例如8个字符,则可以组成的总数为 a)如果您不使用特殊字符:62 ** 8 = 2.1834E + 14
b)如果您确实使用特殊字符:94 ** 8 = 60.9569E + 14

因此,使用特殊字符的组合将会多出约30倍,这意味着使用特殊字符比使用特殊字符的密码要长约30倍一个使用密码中的8个字符

0

背后的主要技术原因是很难猜测,为了增加密码安全性,这是一个很好的做法。当任何人尝试利用时,起初他会尝试使用字典攻击来做到这一点,如果您使用特殊字符,则可以避免此问题。出于这个原因,很少有组织制定密码策略,其中包含此规则以提高安全性。

相关问题