Quando as pessoas digitam, cometem erros, chamados "erros de digitação". Normalmente as pessoas veem seus erros e os corrigem. Para entrada de senha, geralmente você não pode ver o que digitou e, portanto, não pode corrigir seus erros de digitação. Você comete erros sem perceber, envia sua senha e ela volta como "senha inválida". Então você tenta novamente. Então você tenta novamente.
Você pode pensar nisso como "três pequenos erros de digitação e então você é indistinguível de um ataque de força bruta". Como os sistemas se defendem contra ataques de força bruta? Uma resposta explícita " Muitas tentativas, vá embora, você não será capaz de fazer login, mesmo que faça isso corretamente "? Aumento exponencial de atrasos na entrada de senha, causando o tempo limite do navegador quando o atraso é muito longo, tornando impossível tentar efetuar login novamente? As abordagens variam, mas sempre há uma consequência em um sistema bem projetado.
Você pode pensar nisso como "três pequenos erros de digitação e então obtém algum tipo de negação de serviço".
À medida que o comprimento da senha aumenta, aumenta o risco de erros de digitação (e, portanto, o risco de negar o acesso de uma pessoa autorizada). Qualquer coisa com mais de 20 caracteres será digitada incorretamente com frequência (a menos que o usuário seja esperto / preguiçoso e armazene sua senha em algum lugar para que possa "copiar e colar" sem se preocupar com erros de digitação, como um bom arquivo de texto simples em sua área de trabalho chamado " senhas .txt ").