¿Qué tan grande es la ventana segura y práctica con TOTP?

1

Estamos utilizando un algoritmo de contraseña de un solo uso basado en el tiempo (Google Authenticator) en nuestro sistema. Dado que actualmente no permitimos ninguna ventana de tiempo y la validez del código es de solo 30 segundos, estamos constantemente teniendo problemas con la desincronización de tiempo en los dispositivos, que generan códigos TOTP. Eso significa que los usuarios no pueden iniciar sesión porque ingresan códigos vencidos o con anticipación.

Parece que es una práctica general permitir "ventanas", por lo que el sistema permitiría códigos que son válidos a la vez, lo que está cerca de la hora actual precisa. La pregunta es: ¿cuánto tiempo deberían tener esas ventanas? ¿Hay alguna práctica en toda la industria? Estoy considerando un valor generalmente aceptado, que es práctico, dado lo preciso que suele ser el tiempo en la mayoría de los teléfonos con Google Authenticator y también es lo suficientemente seguro. ¿Es 1 o 5 minutos o algo más?

    
pregunta Konstantin 09.02.2016 - 09:12
fuente

1 respuesta

2

No hay un estándar de la industria en esto que yo sepa. Depende de su implementación y desincronización esperada. Un minuto puede tener problemas de sincronización.

Si lo configura en 5 minutos (en cada dirección) es un total de 20 OTP válidas en un momento dado (suponiendo una caducidad de 30 segundos). Esto significa que una suposición tendría una probabilidad de 1 en 50000 de ser correcta, o promediar alrededor de 25000 intentos antes de un éxito. Sería muy fácil detectar cuando alguien está tratando de adivinar. Debido a esto, siempre que tenga un sistema de contraseña adecuado con límite de velocidad, 5 minutos deberían funcionar bien para su caso.

    
respondido por el Daffy 09.02.2016 - 09:37
fuente

Lea otras preguntas en las etiquetas