网络安全 频道

安全教程:教你编写正确安全的密码策略

  让人们选择使用强密码是一件非常困难的事情。特别是人们开始怀疑使用强密码是否有效的时间,我们就真的有麻烦了;不过,也还是有办法进行揭露的。

  关于如何提供有效密码最简单也是最常见的建议大概就是使用强密码了。从理论上来说,一个真正强大的密码应该尽可能多得使用键盘上的字符,至少应该包括下面三个不同的方面:

  1、密码的字符串长度,需要尽可能多的按键

  2、密码中应该包含很多不同类型的字符(小写、大写、数字键特殊字符、空白字符等),需要遍布键盘的各个区域。

  3、密码中应该随意选取尽量多的不同字符,而不是按照可预测的重复模式选择。

  如果密码足够强大的话,依靠目前的技术水平恶意黑客应该永远无法破解。当然,技术也是处于不断发展的状态中,因此你也应该作好在未来对密码策略进行升级必要的准备。

  不幸的是,在我们选择使用强密码的安全之路上,有相当的人会遭到阻碍,就象密码安全最坏的敌人。一些机构在密码安全策略方面,进行了令人难以置信的限制,这导致我们在提高安全方面,陷入了无事可做的状态。实际上,关于这种行为最近的一个例子就是美国运通客户服务电子邮件的说明。类似这样的例子荒到简直令人难以置信,我们所能做的一切就是惊叹这是洋葱网站编造的,而不是事实。但这确实就是令人害怕的现实。

  根据探客网专栏作者斯特林·卡姆登在文章中提出的一种理论,出现这一问题的原因是人们害怕SQL注入攻击带来的结果。由于不了解攻击的实际原理,他们就采取避免密码导致任何问题的方式来回避这一问题,但却并不知道这样做可能造成更严重的漏洞和问题。当然,如果密码只是在经过哈希加密处理后以纯文本格式保存在数据库中的话,特殊字符甚至不会为SQL注入攻击提供帮助,因为经过哈希加密处理的一般是十六进制字符串,也就意味着不是其它的字符,仅仅是字母和数字而已。

  一般来说,一个优秀的密码验证系统无论如何都应该通过哈希加密处理来进行对比。有人可能会问,为什么密码要以纯文本的方式存储在数据库中,这是从安全角度来考虑的,包含特殊字符的密码是被严格禁止的。

  因此我们仅仅宣传应该使用强密码可以说是远远不足够的,因为无论说了多少次,总是有人没有听到。很明显,了解强密码重要性的人总是宽容不知道这一点的其它人,但在我们使用一些人编写的软件时,却出现了与强密码发生了冲突的情况。

0
相关文章