¿Cuánto tiempo debe ser la contraseña de mi sistema?

1

En las primeras versiones de Mac OS X, solo se usaban los primeros 8 caracteres de cualquier contraseña. Más tarde Apple aumentó ese número.

Un sistema de contraseña correcto almacena un hash no la contraseña real. En ese caso, una contraseña / frase de contraseña más larga generalmente es mejor para aumentar la posibilidad de que se genere un valor de hash que no se haya calculado previamente. Supongo que Apple está utilizando esta técnica hash para autenticar a los usuarios que inician sesión en el sistema.

Mavericks, ¿cuál es el número máximo de caracteres en una frase de contraseña utilizada por el inicio de sesión de la cuenta de usuario de Apple?

    
pregunta Basil Bourque 15.01.2014 - 04:34

3 respuestas

3

Probé contraseñas de hasta 480 caracteres (en OS X versión 10.8.5) y las usé todas; Alrededor de 480, el comando passwd tuvo algunos problemas para configurar las contraseñas, pero fue un poco inconsistente, por lo que no estoy seguro de si ese es un límite real. No probé con la interfaz de preferencias del sistema, porque no permite pegar contraseñas, y no hay forma de que escriba algo tan largo (¡dos veces!). Básicamente, utilizará todo lo que pueda escribir.

    
respondido por el Gordon Davisson 15.01.2014 - 08:22
2

El hash (con sal y estirado) de la contraseña de inicio de sesión se almacena en /var/db/dslocal/nodes/Default/users/username.plist en 10.7 y versiones posteriores. Si le preocupa que alguien pueda leer el hash (por ejemplo, iniciando en modo de usuario único) y luego use una herramienta de craqueo como DaveGrohl para calcular fuera de la contraseña, OS X ha usado PBKDF2 desde 10.8, lo que limita las herramientas de craqueo a aproximadamente diez conjeturas por segundo por núcleo.

Tomó aproximadamente diez minutos adivinar una contraseña aleatoria de tres caracteres en mi iMac:

$ sudo dave -u $USER
-- Loaded PBKDF2 (Salted SHA512) hash...
-- Starting attack

-- Found password : 'y8d'
-- (incremental attack)

Finished in 879.274 seconds / 31,385 guesses...
35 guesses per second.

A menos que realice un ataque distribuido, actualmente no es práctico descifrar incluso una contraseña aleatoria de ocho caracteres que consta de letras ASCII en minúsculas y números ASCII. A 40 conjeturas por segundo, tomaría aproximadamente 36 ^ 8/40 / (86400 * 365) ≈ 2000 años para probar todas las opciones.

    
respondido por el user495470 15.01.2014 - 20:32
1

En realidad, almacenar hashes es una forma TERRIBLE de almacenar "de forma segura" las contraseñas. Por naturaleza, los hashes son imposibles de "revertir", pero eso no impide que uno genere una tabla grande (llamada tabla de arco iris ) que almacena pares de texto simple-hash. Con esta tabla es posible buscar un hash y ver su (s) contraseña (es) asociada (s) en texto simple.

La forma aceptada de almacenar contraseñas es el método hash y salt. Una salt es una cadena grande y aleatoria que se combina con la contraseña antes de calcular un hash. Esto hace que la entrada del hash sea demasiado grande para que sea factible pre-calculada en una tabla de arco iris. Al final, las únicas cosas almacenadas en una base de datos de contraseñas adecuadas son hashes y sales (las sales pueden almacenarse en texto sin formato, ya que no son del todo útiles para invertir los hashes).

Básicamente, no es necesario que tengas una contraseña larga para protegerte de los ataques de la tabla del arco iris, ya que las sales lo hacen por ti.

Computerphile hizo un gran YouTube Video sobre el almacenamiento de contraseñas.

En lo que respecta a la creación de contraseñas seguras, uno de los mejores métodos es utilizar 4-6 palabras REALES no relacionadas, de longitud media (sin la necesidad de símbolos / números). Esto garantiza una contraseña suficientemente larga, que no es fácil de adivinar, y es más importante que sea memorable (por lo que nunca tendrá la tentación de escribirla en una nota adhesiva).

TL; DR:

    
respondido por el Alexander 15.01.2014 - 06:41

Lea otras preguntas en las etiquetas