Cuando ingreso mi contraseña para privilegios de superusuario o para iniciar sesión en mi caja Linux, si la ingreso correctamente, se devuelve inmediatamente, lo que me otorga acceso. Sin embargo, si hago algún error tipográfico, hay una larga espera antes de que me diga que mi contraseña es incorrecta. Por lo general, me doy cuenta de que me equivoqué mucho antes de que la computadora lo haga.¿Por qué `sudo` es lento cuando la contraseña es incorrecta?
¿Por qué es este el caso? Según entiendo, las contraseñas de los usuarios se cifran y almacenan en /etc/shadow
, por lo que parece que mi entrada solo debe cifrarse y compararse con lo que está en ese archivo para mi nombre de usuario --- lo que tomaría más o menos el mismo tiempo si ingresé el correcto contraseña o no ¿Hay alguna razón algorítmica, como que tiene que comprobar en un montón de lugares adicionales antes de que pueda confirmar que es incorrecta? O tal vez el sistema sabe que es una contraseña incorrecta rápidamente, pero tiene que hacer un montón de trabajo para realizar un seguimiento de los intentos de inicio de sesión incorrectos. O tal vez solo está tratando de castigarme por arruinarme.
Espero que esta pregunta sea apropiada para SO. Sé que no está estrictamente relacionado con la programación, pero esperaba aprender algo sobre los algoritmos de cifrado o las mejores prácticas de seguridad. –
Probablemente sea a propósito para desacelerar las conjeturas automatizadas .. –
Me he dado cuenta de que hace unos meses, pero no era lo suficientemente curioso como para preguntar. Espero que se pueda dar una respuesta! –