当使用正确的密码几乎是即时的时,为什么计算机需要这么长时间才能响应“无效密码”?

The*_*tix 10 windows linux passwords

当您输入密码并且正确时,响应几乎是即时的(即登录过程)。

但是,当您输入错误的密码(意外、忘记等)时,它需要一段时间(10-30 秒)才会响应密码不正确。

为什么说“密码不正确”需要这么长时间(相对)?

这一直困扰着我在 Windows 和 linux(真实和虚拟机)上输入错误的密码;我不确定 mac OSX,因为我不记得它是否相同,自从我上次使用 mac 以来已经有一段时间了。

编辑:为了重复,我在用户登录到物理计算机上的系统而不是通过 ssh 的上下文中询问,这可能会使用一些不同的机制来登录/验证凭据。

use*_*ser 17

为什么说“密码不正确”需要这么长时间(相对)?

它没有。或者更确切地说,与正确的密码相比,计算机不再需要确定您的密码不正确。理想情况下,计算机所涉及的工作完全相同。(根据密码正确与否而花费不同时间的任何密码验证方案都可以被利用来在比其他情况更短的时间内获得密码知识,无论密码多小。)

延迟是人为的延迟,即使您知道密码可能是什么并且自动帐户锁定被禁用(在大多数情况下应该是这样,否则它会允许对任意帐户进行微不足道的拒绝服务)。

这种行为的通用术语是tarpitting。虽然维基百科文章更多地讨论了网络服务缓送,但这个概念是通用的。The Old New Thing也不是官方消息来源,但为什么拒绝无效密码比接受有效密码需要更长的时间?确实在文章末尾谈到了这一点。


归档时间:

查看次数:

1169 次

最近记录:

10 年,5 月 前