Si alguna vez has utilizado un token de hardware para aprobar transacciones bancarias digitales o has pulsado en una YubiKey para generar un código de inicio de sesión, has utilizado la tecnología de contraseñas de un solo uso basadas en HMAC (HOTP). Para ayudarte a entender cómo puedes utilizar HOTP para proteger tus cuentas, exploraremos cómo funciona HOTP, sus ventajas y limitaciones, y lo compararemos con otros métodos de OTP.
¿Qué es HOTP?
HOTP significa contraseña de un solo uso basada en HMAC. Es un método de autenticación de dos factores (2FA) que genera códigos de inicio de sesión de un solo uso bajo demanda.
HMAC, o Código de Autenticación de Mensajes basado en Hash, es una técnica criptográfica que utiliza una clave secreta y una función hash para producir un valor seguro y resistente a manipulaciones. HOTP aplica HMAC junto con un contador para garantizar que cada código de autenticación sea único y solo se pueda utilizar una vez.
Debido a que los códigos HOTP siguen siendo válidos hasta que se utilizan o se reemplazan, son ideales para el trabajo remoto y otros entornos donde no es posible una sincronización horaria fiable o una conectividad constante.
¿Cómo funciona HOTP?
La autenticación HOTP se basa en dos componentes compartidos: una clave secreta y un contador. Tanto el dispositivo del usuario como el servidor de autenticación almacenan estos valores y los utilizan para generar de forma independiente el mismo código de un solo uso.
Configuración: cuando se configura un token de hardware, se comparte una clave secreta entre el dispositivo y el servidor de la aplicación, y se almacena de forma segura en ambos lados.
Generación de un código: el dispositivo utiliza una función hash criptográfica llamada HMAC para combinar la clave secreta con el valor actual del contador. El resultado es una contraseña de un solo uso corta e impredecible.
Autenticación: cuando ingresas el código HOTP, el servidor realiza el mismo cálculo utilizando su propia copia de la clave secreta y el contador. Si los códigos coinciden, se concede el acceso.
Explicación del sistema de contador HOTP
HOTP se basa en un sistema de contador único compartido entre tu dispositivo y el servidor de autenticación. Cada vez que generas un nuevo código, el contador se incrementa. Después de iniciar sesión correctamente, el servidor también actualiza su contador. Mientras los contadores del dispositivo y del servidor permanezcan sincronizados, los códigos coincidirán y te concederán acceso.
Piensa en HOTP como en un talonario de vales numerados que vas arrancando y utilizando en orden. Un vale ya usado no se puede volver a utilizar, y debes usar el siguiente. El sistema de contador de HOTP funciona de manera similar.
Autenticación HOTP frente a otras OTP
HOTP frente a OTP
Contraseñas de un solo uso (OTP) es un término amplio para las diversas contraseñas de un solo uso que utilizamos para el 2FA. HOTP es un tipo específico de OTP que se basa en un sistema de contador para generar sus códigos.
HOTP frente a TOTP
Las contraseñas de un solo uso basadas en el tiempo (TOTP) generan automáticamente un nuevo código cada 30 o 60 segundos. El ejemplo más común de TOTP son los códigos generados por las aplicaciones de autenticación. Por el contrario, HOTP genera un nuevo código solo cuando se solicita, utilizando un contador en lugar de un temporizador.
Esta diferencia afecta a la seguridad de cada método OTP. La rápida expiración de TOTP ofrece a los atacantes un margen de oportunidad muy pequeño. Por el contrario, los códigos HOTP podrían seguir siendo válidos durante días e incluso semanas.
Sin embargo, HOTP es más fiable en situaciones en las que los dispositivos tienen relojes poco precisos. Por ejemplo, equipos en ubicaciones remotas con conexiones a internet débiles.
HOTP frente a códigos SMS y de correo electrónico
Los códigos OTP enviados a través de SMS y correo electrónico son susceptibles de ser interceptados porque deben viajar a través de redes móviles y de internet. HOTP genera códigos en el dispositivo, lo que lo hace más seguro al tiempo que proporciona un acceso constante incluso durante interrupciones de la red.
¿Cuáles son los beneficios y las limitaciones de HOTP?
Los beneficios de la autenticación HOTP
Utilizar HOTP como tu método OTP preferido tiene varias ventajas:
- Funciona sin conexión: HOTP puede funcionar sin conexión, lo que lo hace ideal para ubicaciones con acceso restringido a internet.
- Sin presión de tiempo: los códigos HOTP no expiran automáticamente, por lo que puedes tomarte tu tiempo para ingresar el código.
- Algoritmo reconocido: HOTP está definido por RFC 4226(ventana nueva), lo que garantiza la compatibilidad entre proveedores de software y tokens de hardware de varios fabricantes.
- Menos dependencias: el sistema basado en contador de HOTP no depende de relojes precisos ni de una conectividad continua, lo que puede hacerlo más predecible en ciertos entornos.
Las limitaciones de la autenticación HOTP
Como ocurre con todas las tecnologías, HOTP conlleva algunas consideraciones importantes:
- Validez indefinida: los códigos HOTP pueden permanecer activos indefinidamente si no se generan códigos nuevos. Esto da a los atacantes más tiempo para explotar códigos robados.
- Sincronización del contador: si generas códigos sin usarlos, los contadores de tu dispositivo y del servidor pueden desincronizarse, lo que provocará fallos de autenticación.
- Administración manual: dado que los códigos no expiran automáticamente, debes acordarte de generar nuevos códigos después de cada uso.
Da un paso hacia una seguridad de contraseñas más sólida
Aunque puede que HOTP no ofrezca el beneficio de seguridad de la expiración automática ni la comodidad de los códigos SMS, su sistema basado en contador ofrece ventajas únicas. Es un sistema 2FA probado con un acceso fiable sin conexión, y la ausencia de presión de tiempo podría hacer que algunos lo prefieran.
Para administrar fácilmente tus contraseñas y códigos 2FA en una única ubicación cifrada, considera usar Proton Pass. Nuestro gestor de contraseñas seguro con un autenticador 2FA integrado mantiene protegidas todas tus credenciales y códigos 2FA con un cifrado de extremo a extremo completo. Mantener tu vida digital segura y cómoda nunca ha sido tan sencillo.






