2FA: ¿Por qué no usar frases de diccionario en lugar de números?

10

Esta pregunta está inspirada en esta: ¿Cuánto tiempo deben durar los códigos de autenticación de 2 factores?

Básicamente, existe un límite práctico inferior y superior de longitud de código 2FA. No puede ser tan breve como para que un atacante con todas las contraseñas pueda imponer un porcentaje significativo de cuentas. Pero tampoco puede ser demasiado largo, por lo que es difícil comprometerse con la memoria a corto plazo.

Entonces, ¿por qué no usar una frase dictionary / diceware? Algo como puppy banana galapagos moose es tan fácil de recordar como 327229 , pero ofrece mucha más entropía.

La única desventaja puede ser que el proceso de escritura sea más lento, pero con los teclados móviles con autocompletar, solo tomaría uno o dos segundos más, al mismo tiempo que se reduce drásticamente el porcentaje de cuentas que podrían forzarse con la fuerza bruta.

    
pregunta 21.08.2017 - 22:20
fuente

3 respuestas

11

Sí, está aumentando la entropía pero está disminuyendo la facilidad de uso.

Primero necesitas obtener un buen diccionario. Las cosas en las que debe pensar son la accesibilidad (¿qué tan legible es? ¿Hay b, d o q, p o cl, d o I, l confusiones? No puede hacer clic y hacer clic en el diccionario). hechizo de la memoria? No puedo escribir 2/4 de las palabras que usaste y tengo un BSc. No puede tener ninguno que sea demasiado técnico o culturalmente insensible (por ejemplo, Taiwán)

En segundo lugar, usted dice sobre el teclado móvil con autocorrección. La autocorrección sale mal, debe comprobar que cada palabra en su diccionario estará en ellos durante mucho tiempo (si los plátanos se extinguen mañana, ¿la palabra aún estará en autocorrección en 30 años?) Y lo está haciendo más difícil para aquellos con plena tamaño de teclados duros

En tercer lugar, está eliminando a todos los que no hablan el idioma, los números funcionan en todos los idiomas. Hay muy pocos otros sistemas numéricos utilizados fuera de los 123 números.

Cuarto, ¿cómo los vas a mostrar? Un número de 6 dígitos puede estar en una pantalla de 6 dígitos de 7 segmentos, 4 palabras necesitan al menos una pantalla compleja de 20 dígitos o más. "Pero pueden estar en un teléfono", le oigo decir, pero hay lugares donde no puede tener un teléfono porque no se permiten dispositivos inalámbricos (es un infierno en la tierra, nunca funciona en un lugar como este) y eso se fragmentaría. el mercado para aquellos con dispositivos móviles y aquellos sin los cuales conduce a

Por último se fragmentaría el mercado. Para tecnología como esta, la fragmentación es mala, confiamos en ella porque ha sido probada muchísimas. A menos que lo viejo se rompa o lo nuevo sea 1,000,000% mejor que el original, nunca tomará la ruta. Como es, todavía tenemos métodos de cifrado rotos porque podrían romper algo peor si se eliminan y los bancos que aún usan algo que saben y algo que saben (2 contraseñas)

La mejora que podrían hacer a los dispositivos 2fa es poder establecer cuánto tiempo está el código en la pantalla hasta 60 segundos como máximo (10 segundos por número por razones de accesibilidad) y tener el cuadro en el que lo escribes etiquetado como un número para que los teclados virtuales muestren la fila numérica o mejor un teclado numérico.

    
respondido por el Topher Brink 22.08.2017 - 03:26
fuente
3

Para agregar a @ topher-brink awnser.

2fa se utilizan en más situaciones que las comunicaciones hombre-máquina.  hay implementaciones de usar un 2fa en algunos dispositivos de hardware (usan Algo así como las mochilas).

Estos dispositivos no pueden funcionar con cadenas de caracteres (y en qué esquema de codificación podrían estar), pero para los números no existen tales problemas.

Como un caso de uso para tal sistema, piense en un dispositivo médico que necesita comunicarse con un servicio, pero que también garantice la intención y la confidencialidad. (por lo tanto, utiliza un certificado del lado del cliente y un mecanismo 2fa). El dispositivo puede presentar al cliente un diálogo de rechazo de aceptación, pero no un número o una cadena de texto para su 2fa.     

respondido por el LvB 22.08.2017 - 10:20
fuente
0

Esta respuesta ya ha expresado los problemas de usabilidad con su esquema.

Otro problema que vale la pena mencionar, es la implementación. La mayoría de los esquemas OTP actuales están utilizando los algoritmos HOPT / TOTP especificados por el IETF. Esos son muy fáciles de implementar y solo ocupan poco espacio de código, lo que los hace adecuados para dispositivos integrados pequeños (como tokens OTP). Si desea traducir la contraseña numérica calculada a una lista de palabras, el código debería incluir una lista larga (probablemente de 2 dígitos de tamaño de kilobytes) de palabras predefinidas. Además de hacer las cosas más complicadas, eso podría ser una prueba de un tope para dispositivos restringidos.

    
respondido por el mat 28.08.2017 - 15:29
fuente

Lea otras preguntas en las etiquetas