¿Cuánto tiempo debe tener la contraseña?

58

La longitud mínima recomendada de la contraseña es de aproximadamente 8 caracteres, así que, ¿hay alguna longitud máxima estándar / recomendada de la contraseña?

    
pregunta Mohamed 12.11.2010 - 05:22
fuente

9 respuestas

18

Bruce Schneier tiene un par de artículos interesantes sobre políticas de contraseñas.

Contraseñas del mundo real : cubren la longitud, la complejidad y las contraseñas comunes de las contraseñas.

Consejo de contraseña : algunas recomendaciones y prohibiciones, incluidas:

  
  • use un administrador de contraseñas
  •   
  • Cambia las contraseñas con frecuencia. Cambio el mío cada seis meses ...
  •   
  • No reutilizar contraseñas antiguas.
  •   
  • NO use contraseñas que contengan palabras del diccionario, cumpleaños, nombres de familiares y mascotas, direcciones o cualquier otra información personal.
  •   
  • NO acceda a cuentas protegidas por contraseña a través de redes Wi-Fi abiertas, o cualquier otra red en la que no confíe, a menos que el sitio esté protegido a través de https.
  •   

y muchos más

Cambio de contraseñas : una discusión detallada sobre la frecuencia con la que debe cambiar según el uso y entorno de amenaza.

    
respondido por el Alexandru Luchian 12.11.2010 - 05:39
fuente
20

Buenas respuestas hasta ahora, pero me gustaría sugerir otra posibilidad: pass frases . Como sugiere el propio Jeff Atwood de StackOverflow , si no está prohibido por limitaciones técnicas, puede considerar permitir y sugerir frases de paso. Podría hacerlos cumplir, pero eso probablemente alienaría a algunos usuarios en la mayoría de los sitios. Debido a su longitud, pueden ser mucho más difíciles de descifrar, y también pueden ser más fáciles de recordar que una contraseña como "A1lUrB @ se!" o cosas así.

    
respondido por el Andy 12.11.2010 - 06:24
fuente
17

La respuesta a esta pregunta, como muchas preguntas en Seguridad, es "depende".

Hay varios factores a considerar cuando se mira la longitud de la contraseña. En primer lugar, algunas de las cosas contra las que se diseña una contraseña larga, que generalmente es un ataque de adivinación de contraseñas de fuerza bruta (en línea o fuera de línea).

Para adivinar la contraseña en línea, si tiene una política de bloqueo relativamente agresiva (por ejemplo, 3 intentos incorrectos y luego un bloqueo indefinido), es poco probable que los ataques contra una sola cuenta tengan éxito a menos que el atacante tenga una buena idea de qué la contraseña va a ser.

Si está buscando ataques contra una gran cantidad de usuarios con la misma política de bloqueo, donde el atacante puede averiguar los nombres de usuario (por ejemplo, los foros web), entonces el elemento más importante es probablemente que las contraseñas utilizadas no son cualquiera de los realmente comunes.

Como punto de partida, una cosa que hay que vigilar en el lado del bloqueo de cuenta, es que las políticas agresivas aquí para las aplicaciones en línea pueden hacer que un ataque de Denegación de servicio sea bastante fácil, sin contramedidas adicionales.

Si existe un riesgo de fuerza bruta sin conexión, entonces la seguridad de la contraseña se vuelve más importante. El problema aquí es que la potencia de procesamiento mejorada y los métodos de ataque hacen de este un objetivo móvil en términos de fuerza. De manera realista, diría que estarías viendo más de 10 caracteres y una aplicación sólida de que las contraseñas no están en las listas de diccionarios comunes (como @andy dice que las frases de contraseña son una buena opción aquí).

Otro factor a considerar aquí es su base de usuarios y cómo se utiliza la aplicación. En algunos casos, diría que los requisitos de contraseña muy fuertes pueden llevar a una aplicación menos segura. Si tiene una aplicación en la que los usuarios están en el mismo lugar (por ejemplo, muchas aplicaciones corporativas) y hace que la política de contraseñas sea muy "sólida" (tanto en términos de longitud de contraseña como de requisitos de rotación), es probable que los usuarios comiencen anotando sus contraseñas, lo que probablemente supera uno de los objetivos de seguridad de esa aplicación en primer lugar.

Una buena fuente de mucha más información sobre esto es un libro llamado Autenticación: de contraseñas a claves públicas

    
respondido por el Rоry McCune 12.11.2010 - 09:40
fuente
10

Si va a cambiar la contraseña, ¿por qué establecer un límite superior?

No es necesario que te preocupes por alcanzar el límite máximo de caracteres en los campos de texto, basados en la web o de otro tipo. Por lo tanto, podría simplemente establecer un máximo de unos pocos cientos de caracteres para limitar algunas condiciones de contorno de los campos de texto que esté usando.

Por supuesto, si estás hablando de generar una contraseña que tratarás de usar en múltiples sitios, entonces no importa; Nadie por ahí parece estar de acuerdo. Peor aún, he encontrado sitios que tienen límites de caracteres máximos diferentes en diferentes campos de entrada, así que para iniciar sesión primero debe escribirlo incorrectamente antes de que se le asigne un campo diferente que permita que haya más caracteres. Por supuesto, si cada sitio deja que sea la capacidad mínima esperada de un campo de texto típico sin intentar limitarlo artificialmente, entonces se permitirían alrededor de 2k caracteres, y no tendría que preocuparse por esto en absoluto.

Editado para agregar: algo mencionado al pasar aquí me hizo una pausa:

  

tiene que escalar el trabajo de hash a lo que esté disponible y sea razonable en sus servidores o dispositivos. Por ejemplo, tuvimos un error menor de denegación de servicio en Discourse, donde permitimos que las personas ingresen hasta 20,000 contraseñas de caracteres en el formulario de inicio de sesión

Por lo tanto, podría valer la pena poner un límite razonable tanto en la configuración como en el intento de las contraseñas si se tiene que hashear las cosas de una manera que debe ser lo más costoso computacionalmente posible. Unos pocos cientos de caracteres podrían evitar que las cosas exploten demasiado, mientras que siguen siendo mucho más de lo que un usuario podría intentar.

    
respondido por el Doug Kavendek 19.11.2010 - 18:13
fuente
5

No debe haber una longitud máxima de la contraseña: si el usuario acepta usar una contraseña muy larga, debe ser recomendado , no bloqueado .

Dado que el software es el que es, varios sistemas impondrán un límite en el tamaño de la contraseña, principalmente debido a un problema de la GUI, una programación deficiente o la compatibilidad con versiones anteriores de sistemas mucho más antiguos. Por ejemplo, los sistemas Unix antiguos utilizaban un proceso de hashing de contraseñas que utilizaba solo los primeros ocho caracteres y ignoraba por completo a todos los demás. Del mismo modo, los sistemas Windows antiguos tenían un límite interno de 14 caracteres. Por lo tanto, es mejor si la contraseña, cuando se trunca a sus primeros 14 caracteres, sigue siendo "segura".

Sin embargo, el único límite en el tamaño máximo de la contraseña debe ser la paciencia del usuario. No tiene sentido imponer nada aquí.

    
respondido por el Thomas Pornin 02.02.2013 - 16:01
fuente
3

16 caracteres.

Esto te da 96 bits de acuerdo con Wikipedia , que es mucho más que cualquier cosa que se pueda descifrar de acuerdo con ese artículo .

Personalmente uso un programa de contraseña para mi teléfono móvil, combinado con la función de contraseña maestra de Firefox. Mi contraseña maestra tiene más de 25 caracteres y está basada en Dice Ware, lo que lo hace bastante fácil de recordar. Casi todas mis contraseñas se vuelven a generar al azar, ya que Firefox las recuerda para mí de todos modos.

    
respondido por el Roger C S Wernersson 17.11.2010 - 08:45
fuente
3

Un mínimo común hoy en día es de 12 caracteres, que es apenas lo suficientemente grande como para evitar el craqueo de fuerza bruta por parte de una organización razonablemente bien financiada dentro de un período de tiempo razonable.

En cuanto a longitud máxima; aquí hay algunos pensamientos: una contraseña más larga que unos pocos cientos de bytes es casi seguramente maliciosa (por ejemplo, intento de inyección de SQL). También tenga en cuenta que si está usando su contraseña de hash (y si no lo está, debe comenzar de nuevo), entonces las contraseñas más largas que su salida de hash no agregan más entropía. Tenga en cuenta que con "más" me refiero al mismo número de bits en su espacio de teclas, no a la misma longitud de caracteres. Por lo tanto, si bien permitir las contraseñas más largas que la longitud del hash debería ser permitido como un punto de conveniencia, desde el punto de vista matemático no tendría sentido que una cosa así sea requerida .

Requerir mayúsculas y minúsculas duplica el tamaño de su alfabeto, lo que produce enormes rendimientos de complejidad y probablemente debería ser necesario. Requerir caracteres numéricos agrega quizás un 20% más a su alfabeto, lo cual no es tan importante, y requerir símbolos agrega un 16% a 40% más de eso (dependiendo de qué símbolos cuente), y nuevamente, no Un retorno tan importante, pero ciertamente no debería ser rechazado.

    
respondido por el tylerl 02.02.2013 - 17:14
fuente
2

Personalmente utilizaría un generador de contraseñas (como lastpass.com o 1password) para generar y usar contraseñas de un mínimo de 8 caracteres y un máximo de 32 caracteres (ya que no todos los sitios admiten la longitud de las contraseñas más de 10 o 15) y usar una contraseña maestra para la autenticación. (Esto también depende de su confianza en sitios como lastpass.com) o una utilidad de contraseña cifrada del lado del cliente para Mac y Windows).

No es recomendable utilizar un conjunto de contraseñas para todos los sitios. Los foros en particular me envían las contraseñas en texto simple. Algunos sitios tienen la función de enviar una contraseña simple en caso de que use la función "Olvidé mi contraseña".

Por lo general, las restricciones se configuran en el servidor (para sitios web). Debemos culpar a los servidores que usamos para no establecer restricciones en las contraseñas de los usuarios.

En resumen, use contraseñas diferentes cada vez. En caso de que tenga que recordar más de 10-15 contraseñas, es hora de comenzar a usar un administrador de contraseñas "seguro". (Para el registro, el administrador de contraseñas de Firefox no es seguro en absoluto)

    
respondido por el Sairam 12.11.2010 - 05:56
fuente
2

Estaba en un cliente donde el oficial de seguridad estaba loco. Quería usar cada política de complejidad de contraseña única posible. (Novell eDirectory tiene MUCHOS problemas de complejidad de contraseñas, ¡y quería usar un complemento adicional para agregar más!)

Hasta el punto, sería imposible generar una contraseña que pueda ser recordada. Esperaba que las masas sin lavar lo encontraran, y lo emborronaran y le pusieran plumas después de que se implementara.

En otras palabras, puedes llevarlo demasiado lejos.

    
respondido por el geoffc 19.11.2010 - 18:43
fuente

Lea otras preguntas en las etiquetas