Contraseña compleja para cada sitio que es fácil de recordar

Se han escrito muchos artículos sobre el tema de las contraseñas tanto en Habré como en Internet. Sorprendentemente, hasta ahora nadie ha descrito otra forma que yo uso, lo que parecería obvio.





Inmediatamente me gustaría señalar que no utilizo un teléfono inteligente, por lo que no tengo disponibles todos los tipos de administradores de contraseñas en un teléfono de botón.





Inicialmente, como la mayoría de los usuarios, tenía 1-2 contraseñas que insertaba para todos los sitios. No tiene sentido escribir sobre las deficiencias de este método, hay muchas. Con el tiempo, quedó claro que este enfoque debería cambiarse. Es inconveniente utilizar generadores de contraseñas complejas en sitios de terceros, porque después de la generación esta contraseña se olvida y después de la expiración de la sesión es necesario cambiarla. Por un lado, esto es bueno, porque nos obliga a cambiar constantemente las contraseñas, dificultando su búsqueda. Pero hay sitios donde la sesión termina en solo un día, y cambiarlos comienza a molestar.





¿Qué cualidades debe tener una contraseña para que se ajuste a nuestras condiciones y también satisfaga las condiciones de los sitios?





  • Sea único para cada sitio





  • Tener un conjunto de letras de diferentes mayúsculas y minúsculas, números y caracteres especiales.





  • Poder cumplir con la política del sitio, donde el cambio ocurre una vez cada N meses





Lo primero que me vino a la mente fue usar un hash de sitio y una regla personalizada. Tomé md5 como base, porque el generador md5 está disponible tanto en línea como como aplicación para dispositivos móviles.





A continuación, se elabora una regla básica para generar una contraseña, que se utiliza para todos los sitios.





La esencia de la regla es la siguiente: para generar una contraseña, tomamos la cadena login@site.com. A continuación, tomamos los primeros / últimos N caracteres dependiendo de la complejidad de la contraseña. Para la mayoría de los sitios, una contraseña de 10 caracteres es suficiente. Resulta una cadena que ya contiene un conjunto complejo de números y letras. La contraseña resultante ya es mucho más complicada que la habitual, pero aún es posible adivinarla. Además, la mayoría de los sitios requieren caracteres especiales y letras en diferentes casos para estar presentes en la contraseña. Para hacer esto, crearemos e introduciremos una regla que será común para todas las contraseñas.





, 2, 1 ( 10, 9 + 2 1, 9 + 1 0). , , . , , .





, :





noroots@habr.com = c05184b3af6965b29f15571556a4cccd
  10 ,  c05184b3af
    2,    1   c25284b3af
   ,     ,    C25284b3af#
      
      



C25284b3af#, .





, , , .





Ahora sobre las excepciones. A veces puede suceder que el hash contenga solo números, o solo una letra y no podamos satisfacer los requisitos para letras con diferentes casos. Para hacer esto, simplemente puede aumentar la longitud de la cadena de 10 a 15, o usar una regla más flexible que no tome N caracteres, sino una cadena que tenga más de N caracteres e incluya al menos 2 letras. Además, algunos sitios requieren cambios de contraseña periódicos (por ejemplo, sitios bancarios o google). La solución es simple: agregamos el año y el trimestre (mes, medio año, según la frecuencia del cambio) a la línea login@site.com, lo que nos permitirá, nuevamente, tener siempre una actualización contraseña y la capacidad de restaurarla en la memoria.








All Articles