// documentation

Cómo funciona todo.

La referencia de las partes móviles de BurnPony. Para tutoriales paso a paso, consulta las guías; para la especificación exacta a nivel de bytes, el protocolo v1.

Las notas y el envelope

Una nota tiene hasta 50.000 caracteres de texto. En tu dispositivo, la nota y su ajuste de ocultar automáticamente se envuelven en una pequeña carga JSON y luego se cifran con AES-256-GCM. Lo que se sube es un envelope que contiene solo una versión de formato, un indicador de si se requiere frase de contraseña, la sal aleatoria, el nonce y el texto cifrado — menos de 512 KiB e ilegible sin la clave.

El enlace y la clave del fragmento

Crear una nota devuelve un enlace de la forma burnpony.app/n/<id de 22 car.>#<clave de 43 car.>. La parte antes del # identifica la nota; la parte posterior es la clave de fragmento de 32 bytes codificada en base64url. Los navegadores nunca transmiten los fragmentos, así que la clave llega al navegador del destinatario solo por el enlace y el servidor nunca la ve. La clave de cifrado real se deriva de la clave del fragmento y la sal con HKDF-SHA256.

Frases de contraseña

Una frase de contraseña opcional añade un segundo factor: se normaliza, se refuerza con PBKDF2-HMAC-SHA256 a 600.000 iteraciones y se integra en la derivación de la clave. Se le pide al destinatario en el visor; los intentos ocurren enteramente en su navegador y no consumen vistas. Comparte la frase por un canal distinto al del enlace. Consulta añadir una frase de contraseña.

Vistas, caducidad y ocultar automáticamente

Cada nota lleva un límite de vistas de 1 a 100 — la última vista permitida elimina el texto cifrado en la misma transacción de base de datos — y una caducidad de 1 hora a 30 días, aplicada por un barrido cada cinco minutos. El límite que llegue primero quema la nota. También puedes fijar una cuenta atrás de ocultar automáticamente (10 a 120 segundos) que vuelve a ocultar el texto revelado en el visor; ese ajuste viaja cifrado dentro de la nota, así que ni siquiera el servidor lo conoce. Consulta elegir vistas y caducidad.

Acuses de lectura

Los acuses están desactivados por defecto. Activados, el visor le dice al destinatario que se notificará al remitente antes de revelar la nota, se registra la hora de apertura y tu teléfono recibe una notificación genérica — «Se abrió una nota.» — que lleva solo el ID de la nota. Hasta cinco de tus dispositivos pueden registrarse para los acuses de una nota. Consulta usar acuses de lectura.

La pestaña Enviados y el quemado anticipado

Cada nota que creas aparece en Enviados con estado en vivo: vistas usadas, caducidad, horas de acuse si están activadas. Solo el ID de la nota, un token de gestión y tus ajustes elegidos se guardan en tu dispositivo — nunca el texto de la nota. Quemar elimina el texto cifrado del servidor de inmediato; después el enlace se comporta como cualquier otro enlace muerto. Consulta quemar una nota antes.

El visor

La página que abren los destinatarios es un único archivo autónomo: sin frameworks, sin cookies, sin peticiones externas, una Content-Security-Policy estricta y una política sin referer para que el enlace no se filtre. Advierte que la nota se autodestruye antes de que el destinatario la revele, descifra con el WebCrypto del navegador y está localizada en 9 idiomas. Ver código fuente lo muestra todo.

El servidor

El relevo en burnpony.app almacena envelopes sellados y un registro mínimo — IDs, marcas de tiempo, recuentos de vistas, indicadores de acuse, un token de gestión hasheado — y elimina el texto cifrado en la última vista, al caducar o al quemar antes. Las notas quemadas, caducadas e inexistentes son indistinguibles desde fuera. La creación está limitada por tasa usando hashes de IP salados de vida corta en lugar de registros de direcciones. Detalle completo en la página de seguridad.

Autoalojamiento

Los Ajustes aceptan una URL de servidor propia, y cada nota recuerda en qué servidor vive — así que las notas creadas contra tu propio relevo siguen funcionando si vuelves. El código del servidor de relevo está planeado para publicación; hasta que salga, el autoalojamiento es una capacidad que la app admite y no algo que hoy puedas desplegar desde un repo público. La hoja de ruta lo refleja con honestidad.

Límites de un vistazo

Tamaño de nota: 50.000 caracteres. Tamaño de envelope: 512 KiB. Vistas: 1–100. Caducidad: 1 hora, 8 horas, 1 día, 3 días, 7 días o 30 días. Ocultar automáticamente: desactivado, 10, 30, 60 o 120 segundos. Creación: limitada por tasa por hora por dirección (hasheada).