1.口令机制
口令是指在计算机系统中,由用户自己设定的一段字符串,用于验证用户身份合法性的一种方式。通过口令验证,可以有效增强计算机系统的安全性。常见的口令包括密码、PIN码。
口令系统是指基于口令验证技术的计算机安全系统。它通过要求用户输入正确的口令来验证用户的身份,从而允许或拒绝用户对计算机系统中资源的访问,口令系统是计算机安全的重要组成部分。
2.公式及含义
在口令机制的强度中P=LR/S公式中:
密码最大存活期L:lifetime
登录尝试率R: login attempt rate
密码空间大小S:size of space
猜测攻击概率:P=LR/S
常见的增强口令和口令系统方法,可以有效的增加攻击者成本。常见方法不难想到、查到,方法如下:
双重验证。现在Google,Github都以手机端APP验证为首选的口令认证方式,这确实是避免了很多的安全问题。
缩短密码最大存活期L:密码的存活期越长,攻击者越有机会进行猜测攻击。因此,缩短密码的存活期可以有效减少攻击者的机会,提高攻击成本。
限制登录尝试次数R:限制用户在一定时间内可以进行的登录尝试次数,例如智慧安大密码输入错误最大次数为15次,安徽大学教务系统为5次。限制登录尝试次数可以阻止攻击者对口令进行暴力破解,增加攻击者成本。
增大密码空间大小S:增大密码空间大小可以使攻击者在猜测密码时需要更多的时间和计算资源,从而增加攻击者成本。我们可以通过使用更复杂的密码组合,如数字、字母、符号等,来增大密码空间大小。也可以通过避免使用常见密码。
2.4.2 Hash+salt安全性分析
Hash+salt是一种常用的密码存储方法,其中,Hash函数用于将明文密码转化为一段固定长度的哈希值,而salt则是一段随机字符串,用于增加哈希值的随机性和独立性。当用户注册时,系统将将原始密码与salt值组合,并通过Hash函数生成哈希值,并将salt和哈希值一起保存到数据库中。当用户进行登录时,系统使用相同的salt值和哈希函数来处理输入的密码,并将结果与保存的哈希值进行比较。如果结果一致,则证明用户提供的密码是正确的。
这样的密码存储方式虽然不能避免暴力破解,但可以防御彩虹表攻击和重放攻击。
2.4.3防御
单台设备破解,每秒尝试100次——错误达到10次后,每5min才能尝试一次
控制僵尸网络破解——统计,加入黑名单;多因素身份验证。