您是否曾经想过将密码放入网站上的该框会发生什么情况?您需要密码的安全性如何,以及如何使用互联网来提高安全性?
您信任的网站经常成为越来越复杂的网络犯罪分子的攻击目标,并且某些网站对用户的个人数据不小心。但是,您可以采取一些简单的步骤来使配置文件更安全。
当前,大多数公司不会以您在登录框中键入的格式存储密码或用户名,即明文或明文。如果是这种情况,那么任何暴露此信息的黑客都将意味着黑客可以立即访问帐户。尽管某些网站已报告了一些错误,这些错误导致内部系统无意中获得了纯文本用户信息,但这种情况越来越少了,大多数网站都会使用密码哈希算法将您的密码与存储版本进行比较。
密码散列算法(或简称为散列算法)是一种采用纯文本的函数,并以一种算法的方式将其混合以产生指定长度的字母和数字字符串。这些算法的设计方式是,在输入(即密码)中进行很小的更改几乎可以肯定导致在输出(哈希值)中进行较大的更改。例如,SHA-256是使用最广泛的哈希函数之一,它接受输入并产生256位输出。使用两个最常用的密码(password和Password),即使只更改输入的一个字符,也可以看到输出的显着不同。
明文→哈希
密码 →5e884898da28047151d0e56f8dc6292773603d0d6aabbdd62a11ef721d1542d8
密码 →e7cf3ef4f17c3999a94f2c6f612e8a888e5b1026878e4e19398b23bd38ec221a
因此,为了确定密码对于给定的用户名是否正确(此过程称为密码验证),公司仅需要对照存储的密码哈希值检查输入的哈希函数结果。
但是,这并不意味着您的信息是安全的,特别是如果您使用的是较常见的密码之一。如果包含哈希密码信息的表被泄露,例如在LinkedIn的2012年hack中,黑客可以将这些哈希值与普通密码的哈希值进行比较。这样,即使他们在任何时候都无法访问纯文本密码,匹配也可能使黑客能够确定此密码。因此,用户重用密码存在特别的危险,因为任何来源的数据泄露都可能使黑客使用相同的帐户详细信息来访问其他服务。
尽管企业可以做更多的工作来保护此信息(例如,在应用哈希功能之前使用称为“ 加盐”的过程),但仍然最好为每个服务使用不同的复杂密码。2019年,英国国家网络安全中心(NCSC)整理了数据泄露中常见的前100,000个密码,其中包括2300万次被发现的密码123456 。当前,关于是否最好的做法是在一定时间后强迫用户更改密码,这一点也存在争议。CESG(现已成为NCSC的一部分)发现,强迫用户频繁更改密码会导致密码安全性较差。
用户可能会重复使用他们已经从其他服务记住的密码(由于上述原因这是不安全的),或者可能改编旧密码。例如,如果在这种违规情况下,黑客发现用户密码的哈希值与123456的哈希值匹配,但是该密码不再起作用,那么下一次更改密码的合理猜测可能是1234567。
因此,对于用户和企业而言,意识到对强壮,唯一密码的需求非常重要。
最好的密码是长而复杂的,并且不包含个人信息。特别是,使用简短的简单密码会使帐户容易受到暴力攻击。在暴力攻击中,攻击者会尝试许多不同的可能的密码,以希望其中之一是正确的。常见的暴力攻击将包括猜测最常见的密码组合(例如,CESG编译的列表),以及字典搜索。编写一个可以循环浏览英语词典中单词的程序相对简单,甚至尝试使用可能的字母数字替换:例如Password和Pa55w0rd。应对此类攻击的两种方法是增加长度和增加熵。
现在,许多网站都强迫用户使用超过最小长度的密码。这是因为密码越长,暴力攻击所花费的时间就越长。例如,选择六个不同的小写字母的方式为230,230。如果将所选字符串的长度增加到十个字母,则选择十个不同字母的方式数为5,311,735。通过简单地增加密码的长度,就可以增加可能的暴力攻击的大小。一旦攻击的大小增加到一定程度(即,密码猜测列表变得太长),暴力攻击就变得不可行了。
增加密码安全性的另一种方法是增加熵或复杂性。可以通过扩展使用的字符类型来做到这一点。例如,使用长度为六个字符的密码,如上所述。如果现在允许使用大写字母和数字,则有61,474,519种方法可以选择六个不同的字符。现在,许多网站都强迫用户使用标点符号以及大小写字母混合的特殊字符。这是试图迫使用户增加其密码的复杂性。但是,经常发生这样的错误:用户仍然可以通过进行常见的更改(例如上面的字母数字替换或简单地添加!)来给密码提供可猜测的结构。最后满足最低要求。
设置具有高度复杂性的长密码的问题在于,通常很难记住它们。而且,如上所述,重要的是不要在许多不同的服务中重用密码。El4Rfv5F7 $ WOXR?I是一个强密码示例,但是即使正确键入此密码也可能是一个挑战!一种答案是使用密码管理器。这些工具可让您为不同的帐户生成和存储唯一的密码,而只需创建并记住主密码即可访问这些密码。创建安全的主密码当然很重要,因为这将提供对密码管理器中存储的所有帐户的访问权限,但是用户可能会发现创建和记住一个安全的密码更容易,而不是为每个使用的在线服务创建一个密码。
存在许多免费的密码管理器。他们也越来越多地提供跨平台支持,从而允许用户使用移动设备上的应用程序访问其帐户。密码管理器的一个常见功能是浏览器扩展,它允许用户生成长而复杂的密码,并在需要时自动填充此信息。此外,高级功能在提高数据安全性方面特别有用。