Resincronización TOTP

4

Teniendo en cuenta los tokens de hardware que implementan OATH TOTP (c.f. RFC6238 ), es de conocimiento general que el reloj de estos tokens se mueve. Es probable que un token que no se usa con mucha frecuencia se desvíe más allá de la ventana de sincronización que usa un servidor de autenticación, por lo que puede ser necesaria la resincronización.

Una forma simple de resincronización es simplemente ampliar la ventana de búsqueda, y esto probablemente funcione en la mayoría de los casos. Pero si la ventana de búsqueda es demasiado grande, existe un pequeño riesgo de que el token se sincronice incorrectamente (suponiendo que se repita una OTP). No he hecho los cálculos, pero esto es probablemente raro.

He escuchado sobre los métodos de resincronización que toman una secuencia de OTP para volver a sincronizar. Esto daría una resincronización precisa, por supuesto, pero a costa de que el usuario espere dos o tres PTO.

Sé que algunos proveedores de servicios de token y autenticación han implementado un método donde el usuario puede obtener información parcial sobre el reloj en la pantalla, de modo que la información de tiempo + OTP se usa como entrada para la resincronización proceso.

No he visto ninguno de los RFC de OATH que dan una recomendación concreta sobre cómo volver a sincronizar. Me pregunto si alguien en este foro conoce métodos comúnmente utilizados en la industria; en particular, ¿cuál es su opinión sobre la última variante que describo?

    
pregunta Emil 24.09.2015 - 09:02
fuente

2 respuestas

0

Ya mencionó la versión que conozco durante 5 o 6 años y que también se implementa en privacyIDEA para sincronizar los tokens TOTP.

Estamos utilizando dos valores TOTP para buscar esas OTP en una ventana más grande de un lado a otro (el reloj del token de hardware podría ir más y más lento) Cuando busque hacia atrás, por supuesto, no debe buscar valores anteriores a los que ya se usaron para la autenticación.

Al observar la especificación de HOTP, puede deducir este comportamiento, ya que TOTP es solo un HOTP con otro tipo de contador: es se recomienda utilizar una secuencia de valores OTP .

Además del ajuste de desviación de tiempo normal en uno o dos minutos (2 o 3 segmentos de tiempo), puede realizar una resincronización automática. Si el valor OTP no coincide durante la autenticación, puede guardar este valor. Si el usuario intenta iniciar sesión nuevamente (con el siguiente valor), puede usar el valor OTP antiguo y el valor OTP actual para realizar una sincronización en la ventana de tiempo más grande. De esta manera, puedes usar TOTP incluso para usuarios raros de 2FA.

    
respondido por el cornelinux 09.10.2015 - 15:51
fuente
2

Por lo general, el servidor TOTP está configurado con un servidor NTP para una hora precisa. Cada vez que el token se autentica en el servidor, el servidor se ajusta a la deriva del token. Como mencionó si un token no se usa con frecuencia, la cantidad de desviación puede superar la ventana de sincronización.

Para resolver este problema la mayor parte del tiempo, los servidores TOTP ofrecen una opción de re-sincronización. Por ejemplo, usar un software del proveedor de servicios TOTP instalado en la máquina del usuario puede permitir que el token obtenga la hora del servidor y vuelva a sincronizar su reloj.

Aquí hay algunos enlaces para ver ejemplos de la opción de sincronización

enlace

enlace

Otro proveedor de servicios TOTP lo hará manualmente a través de un servicio de asistencia como enlace

Por supuesto, hay algunos otros métodos, pero en general, todos ellos permiten, de una forma u otra, que el token conozca el reloj del servidor.

    
respondido por el Ubaidah 24.09.2015 - 10:07
fuente

Lea otras preguntas en las etiquetas