Algunos principios básicos de seguridad de contraseña:
-
Hash y usa una sal
-
Las personas que almacenan la contraseña nunca deben poder ver cuál es la contraseña, solo el hash
-
Este hash debería ser difícil de romper
Suponiendo que nos estamos registrando en un sitio que implementa una buena contraseña de seguridad. ¿Qué pasaría si tomáramos una contraseña fácil de memorizar (no necesariamente tiene que ser una contraseña débil) y realizamos los pasos que un sitio web haría con la contraseña y usaría el resultado como nuestra contraseña real? Las ventajas (y corríjame si me equivoco) son:
-
Si el cracker no está apuntando a este individuo específico, sino que se trata de un formulario de inicio de sesión de fuerza bruta, la contraseña no debería ser más fácil de crackear
-
Obtendrá automáticamente una contraseña segura. El usuario solo tiene que recordar la contraseña "débil" (piense en las frases de paso para las claves SSH). Si el usuario decide usar una contraseña "segura" como semilla, y escríbala, simule que guarda el papel en una caja fuerte con seguro y protegido por seguridad armada o algo así.
-
Si el cracker determina que este es el método que se usa, tomaría mucho más tiempo porque el hash en sí mismo toma tiempo de CPU, y tendrían que determinar el método de hashing utilizado. Además de eso, tendrían que aplicar la fuerza bruta a la semilla correcta ...
Sé que esto es inseguro y defectuoso de alguna manera, pero me gustaría una explicación.