¿Debo variar la longitud de mis contraseñas completamente aleatorias para la mejor seguridad?

3

Uso LastPass de manera integral, y para cada nuevo sitio / contraseña casi siempre tengo que generar una contraseña aleatoria con el mismo número de caracteres, permitiendo letras, números y símbolos (excepto cuando se lo impiden los formularios de contraseña que no permiten esa longitud o ciertos símbolos). Hoy, se me ocurrió que usar la misma longitud de contraseña en todas partes podría ser un problema.

Supongamos que un agente malintencionado posee un sitio en el que me he registrado y que ha mantenido la contraseña original. El solo hecho de ver la contraseña dejaría en claro que probablemente esté usando una aleatoria. Pero si ese sitio maliciosamente deseaba apuntar a otras cuentas que yo posea, y él cree que generalmente usé contraseñas de la misma longitud, podría tener una ventaja en cuanto a mi contraseña en otros sitios. Por lo tanto, ¿mi uso de una variedad de longitudes proporcionaría una seguridad apreciablemente mayor que la utilización de una sola longitud?

Es conveniente no cambiar la cantidad de caracteres que genera LastPass. Y la mayoría de los sitios tienen un límite en el número de caracteres que es más bajo de lo que me gustaría. Tampoco quiero simplemente agregar más caracteres sin motivo, porque ocasionalmente tengo que escribir una de estas contraseñas en mi teléfono móvil. El otro día, cuando un sitio dijo que el límite de longitud de la contraseña era 60, intrigado, creé una contraseña aleatoria de 60 caracteres. Pero más tarde, tuve que escribir esta contraseña en mi teléfono y, aunque lo hice correctamente en el primer intento, fue Un proceso largo y doloroso.

Se me ocurre que solo agregar un número de caracteres a mi longitud típica probablemente proporcionará toda la entropía extra necesaria para eliminar cualquier debilidad de un atacante sabiendo que uso la misma longitud en cualquier lugar. Pero me gustaría que algunas personas bien informadas comenten esto.

¿Cuántos dígitos adicionales debo usar para que mis contraseñas sean tan seguras como usar un número variable de caracteres? Por ejemplo, si utilizara 15 caracteres todo el tiempo, ¿cuántos más tendré que agregar para tener la misma entropía que si usara de manera aleatoria 10-15 caracteres? Sin embargo, la seguridad de 10 caracteres se siente demasiado baja en primer lugar, y siempre usar 15 parece más seguro. Así que estoy en conflicto.

¿Cuál es una manera razonable de ver esto? Debería:

  1. Use diferentes longitudes en diferentes sitios
  2. Aumentar mis caracteres (no uso 15, pero algún otro número)
  3. ¿O simplemente no se preocupe por eso mientras mi longitud sea suficiente (y qué longitud diría que es suficiente para ser teóricamente indiscutible * para los próximos 20 años)?

Para lo que vale el juego de caracteres completo que utiliza LastPass es de 70 caracteres: A-Za-z0-9!#^&$@*% .

Re: irreconocible : Me doy cuenta de que la capacidad de craqueo de un sitio no solo depende de la contraseña en sí, sino también de las prácticas de seguridad del sitio, como los medios de almacenamiento, si mantiene la contraseña original o un hash, el algoritmo de hash particular y su número de bits, si el atacante ha obtenido acceso al hash, si el hash está salado y el atacante conoce la sal, si los límites de velocidad del sitio o las cuentas de bloqueos después de experimentar un comportamiento de ataque aparentemente hostil , y así sucesivamente, incluyendo la vigilancia y el conocimiento de sus empleados para resistir la ingeniería social y todo el resto de ese jazz. Esta pregunta, en cambio, es simplemente sobre el escenario donde el único vector de ataque es probar todas las contraseñas posibles y ver si el sitio lo acepta.

    
pregunta ErikE 05.08.2017 - 01:35
fuente

4 respuestas

4

No me molestaría en variar la longitud. 15 caracteres de un espacio de 95 caracteres es probablemente más que suficiente, y variar la longitud no te va a comprar tanto como simplemente aumentar la longitud un poco.

Utilizando incluso un conjunto de caracteres simplificado C (el conjunto de caracteres alfanuméricos) = 62 caracteres), H (velocidad de hash del atacante) = 100TH / s, e Y (el tiempo que desea que la contraseña resista la fuerza bruta) = 100 años:

ceil (logC (H * Y * 31556926 [seg / año]))

... la longitud que no reconoce la ley de Moore que se ajustaría a ese modelo de riesgo es 14 caracteres .

Teniendo en cuenta la ley de Moore, utilizando la calculadora de anrieff.net , dicha contraseña resistirá la fuerza bruta durante 16 años 2 meses. Al aumentar el juego de caracteres al espacio ASCII imprimible y usar 20 caracteres, el tiempo que reconoce la ley de Moore salta a 79 años (en caso de que quiera que su contraseña le sobreviva). (Tenga en cuenta que este es el momento en que se agote el espacio. Dado que la mitad de esas contraseñas se adivinarían en la mitad de ese tiempo, tendría que dimensionarlas según su modelo de amenaza).

    
respondido por el Royce Williams 05.08.2017 - 01:57
fuente
8
  

Por lo tanto, ¿mi uso de una variedad de longitudes proporcionaría una seguridad apreciablemente mayor que la utilización de una sola longitud?

No, lo único que logrará es hacer que los más cortos sean más débiles.

Para saber por qué no importa la longitud de la contraseña, vea esta pregunta (exención de responsabilidad, la respuesta aceptada es mía):

Qué tan crítico es ¿Es para mantener en secreto la longitud de la contraseña?

Experimento mental: ¿por cuánto tiempo una contraseña es físicamente ilegible? Bueno, el sol contiene aproximadamente 1.2x10 44 Julios de combustible nuclear . Asumamos que teníamos un registro mágico de bits que requería solo 1 eV para voltear un bit (1 electrón voltio = 1.602 × 10 −19 julios). Resulta que con un registro de 208 bits, contar de 0 a 2 208 requeriría que consumieras la energía equivalente al sol. Entonces, asumiendo que está creando contraseñas usando los 95 caracteres ASCII imprimibles, entonces consumir el sol le rompería un 208 bit ~ = contraseña de 32 caracteres .

¿Qué tan "mágico" es este registro? Bien de acuerdo con la Tabla 1 (p. 6) de este documento:

Un modelo preciso de consumo de energía a nivel de instrucción para Procesadores RISC integrados

una instrucción de ensamblaje ARM (ADD, SUB, XOR, ...) consume aproximadamente 300 pJ ~ = 3.0x10 -10 Joules ~ = 1.8x10 9 eV por instrucción en un dispositivo integrado de baja potencia . Dada esta eficiencia, consumir el sol te rompería una contraseña de 28 caracteres .

Si estás usando contraseñas generadas aleatoriamente, entonces no veo ninguna razón por la que alguien deba usar más de 32 caracteres, pero es probable que te salgas con mucho menos contra los atacantes que no tienen sol. para gastar descifrando tu contraseña.

    
respondido por el Mike Ounsworth 05.08.2017 - 02:10
fuente
1

Un ataque de fuerza bruta se vuelve mucho más difícil de descifrar una vez que usas más personajes. Sin embargo, podría ser un riesgo de seguridad, el riesgo es tan bajo en comparación con el tiempo real que lleva, por ejemplo, descifrar una contraseña de 20 caracteres. Piensa en cuántas opciones tienes para eso ...

Tiene 26 letras en el alfabeto, 10 dígitos y le permite usar 20 caracteres especiales para este ejemplo. Eso significa que tiene 56 caracteres para elegir, lo que le da 56 ^ 20 contraseñas diferentes posibles. Es tan difícil de descifrar que, incluso sabiendo la cantidad de caracteres, debería ser realmente seguro mantenerlos. Recuerde que la mayoría de los sitios web comunes han incorporado protección para detener los ataques de fuerza bruta también.

Entonces, sí, podría haber un ligero riesgo de seguridad pero no un impacto significativo.

    
respondido por el Kevin Voorn 05.08.2017 - 01:58
fuente
1

La estrategia de generación de contraseñas óptima es elegir contraseñas al azar con la misma probabilidad (distribución uniforme) de un conjunto prohibitivamente grande (una que el atacante no puede buscar de manera razonable) cantidad de tiempo). No importa si algunos miembros de ese conjunto grande son más largos o más cortos que otros. Tampoco importa si son todos de la misma longitud, si ha definido la selección uniforme y el conjunto prohibitivamente grande de los que no tiene que preocuparse. Algo más. (Excepto la usabilidad, pero eso es una historia para otro día).

En la práctica, usar una longitud fija n es más simple, porque puede dividir el problema de generación de contraseña en la opción aleatoria uniforme independiente de n caracteres. Si desea seleccionar contraseñas de longitud variable de manera uniforme y aleatoria con una longitud de hasta n , eso es más complicado, porque en ese caso debe diseñar su algoritmo para que no esté predispuesto a elegir contraseñas de ninguna longitud en particular. Debe tener cuidado de que si las contraseñas de longitud i <= n son p fracción del espacio total de la contraseña, elija una contraseña de longitud i con exactamente p de probabilidad. Este no es un problema súper difícil de ninguna manera, pero usted no obtiene nada de lo que no podría simplemente al elegir un espacio de contraseña de longitud fija un poco más largo.

Las contraseñas de 15 caracteres de un conjunto de 95 caracteres, elegidas uniformemente al azar, tienen aproximadamente una fuerza de seguridad de 99 bits (aproximadamente 6,6 bits / carácter). Eso es bastante sólido para la autenticación en sitios web cuyo código base y medidas de seguridad no controlas. Incluso bajando a 12 sonidos bien (79 bits).

    
respondido por el Luis Casillas 08.08.2017 - 02:45
fuente

Lea otras preguntas en las etiquetas