Puedo ver un par de problemas potenciales con una solución como esta:
- Si se compromete la contraseña de un usuario (antigua), se puede usar un intento de iniciar sesión para confirmar que el usuario existe y tiene una cuenta, probablemente no sea un gran problema en el Contexto de FB, donde la mayoría de las cuentas se pueden buscar de todos modos, pero sigo pensando que el principio se mantiene en general.
- Si alguien sospecha que tiene su contraseña, se puede usar para al menos confirmar que el usuario tiene una contraseña específica previamente . Para los usuarios promedio, es muy probable que esa misma contraseña se utilice también para cualquier otro número de servicios.
Esos dos se mantienen incluso si un usuario tiene una buena contraseña (es decir, una larga cadena de caracteres difíciles de adivinar). Como el usuario promedio de FB probablemente use el nombre de su gato / perro / niño / hámster / novio / novia / lo que sea, el hecho de poder confirmar el uso anterior de una contraseña determinada puede proporcionar una perspectiva que puede ayudar a alguien a adivinar una nueva contraseña también.
Como ejemplo concreto, conozco a alguien que durante mucho tiempo usó el siguiente esquema basado en los nombres de sus hijos (nombres cambiados, obviamente):
- Primer hijo: Mark
- Segundo hijo: Emma
- Tercer hijo: Carl
Según estos, el usuario cambiaría entre contraseñas como esta:
- MarkEmmaCarl
- MaEmCa
- MarEmmCar
- ... y así sucesivamente.
Claro, adivinar una próxima contraseña basada en algún esquema cuasialeatorio como este puede requerir una cantidad significativa de trabajo, pero una gran cantidad de esta puede ser automatizada, y en cualquier caso será mucho más fácil que para una cadena aleatoria .
Sin embargo, si puede establecer un patrón confirmando la existencia de una o dos contraseñas anteriores como esta, tiene un incentivo bastante fuerte para seguir intentando ...