TOTP y HOTP
Contraseñas de un solo uso basadas en el tiempo
TOTP y HOTP es una lección gratuita de Cyber Security Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Cyber Security Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Cyber Security Academy incluye 4 lecciones en total.
Contraseñas de un solo uso
Una contraseña de un solo uso (OTP) es un código válido para un único inicio de sesión o durante un intervalo breve.
Dos algoritmos estándar las generan: HOTP y TOTP.
El secreto compartido
Ambos algoritmos parten de un secreto compartido que solo conocen el servidor y su aplicación autenticadora.
Por lo general, se entrega como un código QR durante la configuración y se almacena en ambos lados.
HOTP: basado en contador
HOTP (OTP basado en HMAC) combina el secreto compartido con un contador mediante HMAC y luego trunca el resultado para obtener un código numérico corto.
El contador se incrementa en uno con cada código generado.
HOTP = Truncate( HMAC-SHA1(secret, counter) )TOTP: basado en tiempo
TOTP (OTP basado en tiempo) es HOTP con un contador que corresponde al tiempo actual dividido en intervalos fijos, normalmente de 30 segundos.
Como el tiempo siempre avanza, ambos lados permanecen sincronizados sin tener que llevar un contador manual.
T = floor( (current_unix_time) / 30 )
TOTP = Truncate( HMAC-SHA1(secret, T) )La ventana de 30 segundos
Un código TOTP normalmente cambia cada 30 segundos. Esta breve duración limita el tiempo durante el que resulta útil un código robado.
Por eso las aplicaciones autenticadoras muestran una barra de cuenta atrás.
Tolerancia al desfase del reloj
Los relojes de los dispositivos se desvían ligeramente. Para no rechazar códigos válidos, los servidores aceptan códigos de un paso antes y después de la ventana actual.
Una ventana demasiado amplia reduce la seguridad, por lo que se mantiene pequeña.
Sincronización de HOTP
HOTP puede desincronizarse si no se utiliza un código generado (el contador avanza en el dispositivo, pero no en el servidor).
Los servidores permiten una pequeña ventana de anticipación para resincronizarse, pero las brechas grandes requieren una resincronización manual.
The otpauth URI
Los códigos QR codifican un otpauth URI que describe el secreto y los parámetros.
otpauth://totp/Example:alice@example.com?secret=JBSWY3DPEHPK3PXP&issuer=Example&period=30Por qué se impuso TOTP
TOTP es mucho más habitual que HOTP porque:
- No hay ningún contador que pueda desincronizarse o deba resincronizarse.
- Los códigos caducan de forma natural.
- Funciona sin conexión; no se necesita red para generar un código.
Ventajas y limitaciones
TOTP supone una gran mejora frente al uso exclusivo de contraseñas, pero sigue siendo vulnerable al phishing: un sitio falso puede engañar a un usuario para que introduzca un código vigente.
Las llaves de seguridad de hardware, que se tratan en la próxima lección, resisten este tipo de ataque.
Copia de seguridad y recuperación
Perder el dispositivo que contiene el secreto puede impedirle acceder a su cuenta. Una buena práctica consiste en:
- Guardar los códigos de recuperación proporcionados durante la configuración.
- Realizar una copia de seguridad segura del secreto o registrar una segunda aplicación autenticadora.
Comprobación rápida
¿Cuál es la diferencia clave entre HOTP y TOTP?
Resumen
Ha aprendido cómo funcionan los algoritmos OTP.
- Ambos se basan en un secreto compartido y HMAC.
- HOTP usa un contador; TOTP usa el tiempo.
- Los códigos TOTP caducan cada ~30 segundos, pero siguen siendo vulnerables al phishing.
- Conserve los códigos de recuperación.
A continuación, exploraremos las aprobaciones push y las llaves de hardware.
Aprende Cyber Security Academy con un tutor de IA — gratis
Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.
- Cursos
- 76
- Lecciones
- 303
Preguntas frecuentes
¿La lección «TOTP y HOTP» es gratis?
Sí — el texto completo de «TOTP y HOTP» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Cyber Security Academy, actualiza a CoddyKit PRO. El curso de Cyber Security Academy incluye 4 lecciones en total.
¿Qué aprenderé en «TOTP y HOTP»?
Contraseñas de un solo uso basadas en el tiempo Practicas Cyber Security Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Cyber Security Academy?
No se requiere experiencia previa. Cyber Security Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.
¿Cuánto tiempo toma la lección «TOTP y HOTP»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Cyber Security Academy?
Sí. Cada lección de Cyber Security Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.