Guías
Seguridad de los códigos temporales y los QR de un Pase
El código de seis caracteres identifica una sesión temporal y el QR codifica el enlace para entrar. Ambos deben tratarse como invitaciones de acceso mientras el Pase está abierto.
Actualizada el 2026-08-07 · aproximadamente 732 palabras
Qué es el código y qué no es
Un Pase usa seis caracteres presentados en dos grupos, por ejemplo ABC-234. El código permite que el segundo navegador llegue al estado de conexión asociado al primero. No es una cuenta, una contraseña reutilizable, una dirección permanente ni un identificador de archivo. Cuando el Pase termina, el código no permite recuperar lo que se envió porque no existe un buzón de contenidos.
Debe tratarse como una invitación temporal. Quien lo reciba durante su ventana útil puede intentar unirse. El Pase admite al propietario y a un segundo participante; si ya hay otro participante pendiente o conectado, el servidor rechaza nuevas entradas. Aun así, compartir el código en una sala pública o una captura abierta aumenta un riesgo evitable.
Cómo se genera
El alfabeto contiene letras mayúsculas y cifras seleccionadas, 31 símbolos en total. Excluye I, L, O, 0 y 1 para reducir errores de lectura. El Worker usa crypto.getRandomValues cuando está disponible y aplica muestreo con rechazo: descarta los bytes que producirían una distribución desigual antes de convertir cada valor en un símbolo.
Ese mecanismo evita patrones obvios y sesgos simples, pero un código corto sigue estando pensado para una sesión breve, no para proteger un archivo durante meses. La defensa combina aleatoriedad, ventana temporal, límite de dos participantes y controles de frecuencia en los endpoints de creación y entrada. No conviene ampliar artificialmente su función llamándolo contraseña de cifrado.
Qué contiene el QR
El QR representa la URL de entrada construida por la aplicación, con el código en el parámetro code. Escanearlo ahorra teclear, pero no crea una capa de seguridad diferente. Una foto del QR equivale, durante la vida útil del Pase, a una copia del enlace. Por eso no debería aparecer en una retransmisión, una videollamada grabada o una captura pública.
Antes de abrir un QR recibido fuera de la pantalla propia, comprueba que el host sea mandamele.com y que el navegador use HTTPS en producción. Un QR puede dirigir a cualquier dirección; la forma visual no demuestra que sea legítimo. La aplicación valida el formato del código, pero el usuario sigue siendo responsable de revisar el destino que abre.
Caducidad y cierre
Un Pase anónimo recién creado da diez minutos para establecer la conexión. Si no entra otro navegador, el estado expira. Después de conectar, la sesión anónima se cierra tras treinta minutos sin actividad. El cliente envía pings periódicos mientras está conectado, y enviar señalización también actualiza la actividad técnica.
Cerrar la pestaña, pulsar cerrar o perder la conexión puede terminar el Pase para el otro navegador. La caducidad limita la utilidad futura del código, pero no borra una captura del QR ni una descarga que el receptor ya haya guardado. Los plazos protegen el estado de sesión; no son una herramienta de borrado remoto.
Aprobación y participante correcto
El protocolo compartido soporta solicitud, aprobación y rechazo de participantes. Durante este pase de QA, la configuración REQUIRE_PASE_APPROVAL está desactivada: el navegador propietario aprueba automáticamente una solicitud válida para mantener el flujo actual sin una pantalla adicional. Por ello es especialmente importante compartir el código solo con la persona o dispositivo previsto.
Una vez conectados, los eventos WebRTC solo se reenvían entre los dos identificadores aprobados por el estado del Pase. Los mensajes con destinos no válidos se rechazan. Esta comprobación protege el enrutamiento del control, pero no sustituye una confirmación humana de identidad. Si necesitas certeza fuerte sobre quién está al otro lado, verifica por un segundo canal antes de enviar.
Hábitos seguros al compartir
Crea el Pase cuando ambos dispositivos estén listos, enseña el QR directamente o envía el código por un canal privado y cierra la sesión al terminar. Evita reutilizar capturas antiguas, aunque probablemente hayan caducado, porque pueden revelar hábitos o conversaciones alrededor del envío. Si aparece una conexión inesperada, cierra el Pase y genera uno nuevo en vez de seguir usándolo.
Para archivos sensibles, confirma el nombre del receptor, revisa que no haya duplicados conectados y considera cifrar el archivo previamente. Después, verifica la copia descargada y elimina las que sobren. La seguridad útil no depende solo del código: incluye el estado del dispositivo, la privacidad del canal usado para compartirlo y el tratamiento posterior del archivo.
- El QR contiene el enlace de entrada; protégelo igual que el código.
- La aprobación manual está desactivada en el flujo actual.
- La caducidad no elimina archivos ya descargados.