Volver al blog

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. 1

    Alta

    El servicio crea un secreto aleatorio (a menudo Base32) y lo muestra como QR con una URI otpauth://totp.

  2. 2

    Escanear en la app

    Escaneás el QR; la app autenticadora guarda el secreto en local en tu dispositivo.

  3. 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. 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. 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. 1

    Ingresá emisor y etiqueta de cuenta.

  2. 2

    Elegí longitud del secreto, algoritmo, dígitos y periodo. Para lo nuevo, SHA-256; para máxima compatibilidad, SHA-1.

  3. 3

    Generá un secreto nuevo: aparecen QR, Base32, URI y código en vivo.

  4. 4

    Opcional: imprimir hoja, copiar, abrir otpauth:// o compartir una vez con PrivateNote.

  5. 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. 1

    Subí captura, pegá imagen o usá la cámara — local.

  2. 2

    Revisá emisor, cuenta, algoritmo, dígitos, periodo y secreto.

  3. 3

    Imprimí hoja o guardá el Base32 en frío.

  4. 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. 1

    Pegá el secreto o la URI completa.

  2. 2

    Observá códigos actual, anterior (t−1) y siguiente (t+1).

  3. 3

    Escribí el del teléfono. Si encaja en t−1 o t+1, hay desfase de reloj.

  4. 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