Autenticación en dos factores
¿Qué es TOTP? Cómo funcionan los códigos del autenticador — y cómo usar nuestro generador
29 de julio de 2026 · 12 min de lectura
Si alguna vez abriste Google Authenticator, Authy, 1Password o Contraseñas de Apple y escribiste un código de seis dígitos que cambia cada 30 segundos, usaste TOTP — Time-based One-Time Password.
TOTP es la forma más común de 2FA por app. Es más fuerte que el SMS ante muchas amenazas cotidianas, más débil que las passkeys frente al phishing en tiempo real, y sigue siendo el segundo factor por defecto en innumerables servicios.
Esta guía explica qué es realmente el TOTP, cómo se calculan los códigos, cómo usar el Generador TOTP y probador QR de passwords.lu, y en qué situaciones concretas ayuda un kit del lado del cliente — sin convertirse en un gestor de contraseñas ni en una bóveda de autenticador.
¿Qué es TOTP?
TOTP significa Time-based One-Time Password. Es un estándar abierto (RFC 6238) basado en HOTP (RFC 4226).
En pocas palabras: tú y un sitio compartís un secreto. Ambos lados lo combinan con la hora actual para producir un código numérico corto. Si coinciden, el servicio sabe que poseés el secreto — normalmente en tu app autenticadora o un token hardware.
A diferencia de una contraseña fija, cada código TOTP solo vale un rato (suelen ser 30 segundos). A diferencia del SMS, el código se genera en tu dispositivo; no viaja por la red telefónica.
Cómo se calculan los códigos TOTP
Por debajo, el flujo es así:
- 1
Alta
El servicio crea un secreto aleatorio (a menudo Base32) y lo muestra como QR con una URI otpauth://totp.
- 2
Escanear en la app
Escaneás el QR; la app autenticadora guarda el secreto en local en tu dispositivo.
- 3
Obtener el contador
Al iniciar sesión, la app lee la hora Unix, la divide por el periodo (suele ser 30 s) y obtiene un contador.
- 4
Calcular el código
Calcula HMAC (a menudo SHA-1, cada vez más SHA-256) sobre secreto y contador, y trunca a 6 u 8 dígitos.
- 5
El servidor verifica
El servidor repite el cálculo. Si coincide — a veces también t−1/t+1 por deriva de reloj — entrás.
Por eso importa la sincronización del reloj. Y por eso dos apps con el mismo secreto muestran siempre los mismos dígitos.
¿Qué hay dentro de un QR de configuración?
Normalmente una URI otpauth://totp con:
- El secreto compartido (Base32)
- Un emisor (p. ej. GitHub, AWS)
- Un nombre de cuenta (correo o usuario)
- Algoritmo opcional (SHA-1, SHA-256, SHA-512)
- Dígitos opcionales (6 u 8)
- Periodo opcional (a menudo 30 segundos)
Quien fotografíe ese QR puede generar los mismos códigos. Trátalo como una contraseña.
Importante: la exportación multi-cuenta de Google Authenticator usa otpauth-migration://. Los QR otpauth://totp de alta son el caso normal.
TOTP vs SMS vs passkeys
No todos los segundos factores son iguales.
- OTP por SMS: cómodo, pero vulnerable a SIM swap e interceptación.
- TOTP (apps): offline, muy extendido, pero phisheable en tiempo real.
- Passkeys / FIDO2 / claves hardware: pensadas para resistir phishing al ligarse al origen real del sitio.
Consejo: gestor o passkeys en el día a día; TOTP donde se ofrezca; códigos de recuperación offline; nunca solo SMS en cuentas críticas.
Qué es (y no es) la herramienta TOTP de passwords.lu
Un kit privacy-first en el cliente: generar secretos, crear QR, decodificar imágenes y verificar códigos en el navegador.
Nada se sube. Usa Web Crypto.
No es un gestor ni un sustituto de Authy/Google Authenticator/1Password. Sirve para copia en papel, flujos solo escritorio, pruebas de desarrollo, deriva de reloj e inspección de QR offline.
Cómo usar el generador TOTP paso a paso
Abrí la herramienta en passwords.lu y elegí uno de los tres modos.
1. Generar — crear un secreto y un QR
Cuando creás vos mismo una configuración TOTP (lab, self-hosted, cuenta de prueba).
- 1
Ingresá emisor y etiqueta de cuenta.
- 2
Elegí longitud del secreto, algoritmo, dígitos y periodo. Para lo nuevo, SHA-256; para máxima compatibilidad, SHA-1.
- 3
Generá un secreto nuevo: aparecen QR, Base32, URI y código en vivo.
- 4
Opcional: imprimir hoja, copiar, abrir otpauth:// o compartir una vez con PrivateNote.
- 5
Borrá todo al terminar.
Si el sitio ya muestra su QR de alta, preferí Decodificar en lugar de inventar otro secreto.
2. Decodificar — inspeccionar un QR existente
Cuando el servicio ya mostró el QR y querés entenderlo o respaldarlo.
- 1
Subí captura, pegá imagen o usá la cámara — local.
- 2
Revisá emisor, cuenta, algoritmo, dígitos, periodo y secreto.
- 3
Imprimí hoja o guardá el Base32 en frío.
- 4
Opcional: enviá a Probar.
Mejor orden en servicios de «escaneá una sola vez»: primero decodificar y respaldar, luego enrolar el teléfono.
3. Probar — verificar códigos y deriva de reloj
Con un secreto Base32 o URI otpauth://.
- 1
Pegá el secreto o la URI completa.
- 2
Observá códigos actual, anterior (t−1) y siguiente (t+1).
- 3
Escribí el del teléfono. Si encaja en t−1 o t+1, hay desfase de reloj.
- 4
Ajustá la ventana de verificación si hace falta.
La mayoría de «código inválido» son problemas de reloj.
Casos de uso en detalle
Cuándo un kit TOTP local vale la pena.
Cuando el QR de alta aparece solo una vez
Cuentas críticas suelen mostrar el QR una sola vez; muchas apps ocultan luego el secreto.
Antes de enrolar el teléfono: en passwords.lu abrí Decodificar, cargá el QR, imprimí una hoja o guardá Base32 en frío — luego escaneá.
Conservá también los códigos de recuperación oficiales del servicio.
Activar 2FA cuando no hay teléfono a mano
No siempre hay un teléfono a mano.
Captura → Decodificar → secreto → códigos en vivo con Probar en el mismo escritorio.
Probar parámetros TOTP custom en staging
Probar 8 dígitos, SHA-256, periodos de 60 s y resets de BD re-enrolando un teléfono es lento.
Generá semillas temporales, copiá otpauth://, probá t−1/t+1, borrá al final.
Diagnosticar códigos rechazados que aún parecen correctos
A menudo los dígitos están bien y el reloj no.
Pegá el secreto en Probar e introducí el del teléfono. t−1/t+1 = deriva; sin match = secreto, algoritmo o longitud incorrectos.
Entender un QR antes de migrar de autenticador
Migrar a ciegas puede dejarte fuera a mitad de camino.
Decodificá QR de alta offline. otpauth://totp individuales soportados; exports multi-cuenta de Google Authenticator detectados pero aún no desempaquetados.
Buenas prácticas de seguridad
- Preferí passkeys o claves hardware en cuentas importantes.
- Respaldá como una contraseña: cofre cifrado o papel offline.
- No fotografíes QR de alta en público.
- Usá decodificadores del lado del cliente.
- Vaciá el portapapeles tras copiar.
- TOTP no detiene el phishing en tiempo real.
FAQ
¿TOTP es lo mismo que 2FA?
TOTP es un método de 2FA. SMS, push y passkeys son otros.
¿Dos apps pueden usar el mismo secreto?
Sí. Útil como redundancia, pero cada copia amplía la superficie de ataque.
¿Por qué SHA-256 en secretos nuevos?
Opción moderna para lo nuevo. Muchos servicios aún esperan SHA-1; si la URI omite el algoritmo, la convención sigue siendo SHA-1.
¿passwords.lu guarda mis secretos?
No. Todo queda en el navegador.
¿Reemplaza a mi autenticador?
No en el día a día. Sí para respaldo, inspección, solo escritorio, pruebas y diagnóstico.
Ideas clave
- TOTP = secreto compartido + tiempo → código corto.
- El QR de alta contiene el secreto.
- Passkeys > TOTP contra phishing; TOTP > SMS.
- passwords.lu trabaja en local — no es una bóveda.
- Mejores usos: respaldo offline, solo escritorio, QA, deriva de reloj, inspección de QR.
Conclusión
Los códigos del autenticador dejan de ser magia cuando entendés la verdad simple: un secreto más el reloj, hasheados y recortados.
En el día a día, usá un autenticador o gestor. Para crear, inspeccionar o verificar en privado, el Generador TOTP de passwords.lu — sin subir nada a un servidor.
Lecturas relacionadas
Probar el kit TOTP local
Generá secretos, decodificá QR de autenticador y verificá códigos de un solo uso en el navegador — nada se sube.
Abrir generador TOTP