La reutilización de la contraseña es mala por muchas razones. Los sistemas más seguros requieren cambiar una contraseña regularmente para evitar su reutilización.
Una posible solución para esto es un esquema de generación de contraseña. Imagine una contraseña base y un algoritmo simple para modificarlo con base en una contraseña muy simple o corta que se compone cada vez. La versión más simple es agregar la contraseña corta a la contraseña base.
En cuanto a la versión más sencilla, tengo una contraseña base foo
y para cada sitio web se me ocurre alguna palabra fácil de recordar, no demasiado segura, para modificarla. Así que mi contraseña para gitlab se convierte en fooGit
y mi contraseña para facebook es fooFace
, etc. Para lugares que requieren cambiar las contraseñas cada mes, podría ser tan simple como fooOne
, fooTwo
, fooThree
etc, algo fácil para recordar modificaciones cada mes.
Suponiendo que foo
es en realidad una contraseña relativamente segura, ¿qué tan seguro sería un enfoque como este?
Si el algoritmo que mencioné fuera tan trivial como lo que mencioné, sería fácil para alguien que obtiene su contraseña anterior adivinar una nueva contraseña. Sin embargo, alguien tendría que tener acceso a al menos dos contraseñas alternativas para averiguar si está usando un algoritmo como este, e incluso entonces tendrían que adivinar el valor que se le atribuye. Carecerían de las tablas de arco iris para su algoritmo de contraseña, por lo que, a menos que puedan adivinar cuál es su próxima contraseña, tienen medios limitados para atacar su contraseña, supongo.
Mi opinión es que este enfoque llevaría a un enfoque relativamente seguro, a pesar del potencial para adivinar las contraseñas una vez que alguien descubra el algoritmo. Mi razonamiento es básicamente que nadie está buscando este algoritmo y, por lo tanto, es probable que pase desapercibido. ¿Es eso cierto, o los atacantes son conscientes de que las personas intentan algo como esto e intentan explotarlo activamente?
Si el algoritmo fuera un poco más complejo que 'simplemente agregue los dos valores ", pero aún lo suficientemente simple como para hacerlo rápidamente en la cabeza, ¿eso haría algo para aumentar su seguridad?