En pocas palabras
- Sin transmisión: el archivo se lee y se repara en el navegador. Su contenido nunca llega a un servidor, ni siquiera al mío.
- Sin almacenamiento: los datos solo viven en la memoria de la pestaña del navegador. Al cerrar la pestaña desaparecen.
- Sin cuenta ni base de datos: no existe ningún punto de subida que pueda aceptar archivos.
- Servidores en la UE: el sitio web está alojado por Hetzner Online GmbH en un centro de datos en Finlandia.
- Sin terceros: sin analítica, sin anuncios, sin Google Fonts, sin CDN.
- Garantizado técnicamente: una Content Security Policy impide que el navegador se conecte a otros servidores.
Cómo funciona el procesamiento
- Al abrir el sitio, tu navegador carga desde mojibuster.com la página, la hoja de estilos, las fuentes y un programa JavaScript, como en cualquier sitio web.
- Cuando eliges un archivo, el navegador lo lee de tu dispositivo a la memoria mediante la File API. No se envía nada.
- Un web worker, un proceso en segundo plano dentro de la misma pestaña, detecta la codificación y repara los caracteres dañados.
- El navegador convierte el resultado en una descarga o lo copia al portapapeles. Eso también ocurre en local.
Por eso Mojibuster se parece más a un programa que se ejecuta en el navegador que a un servicio online: el servidor solo entrega el código. Así se pueden reparar listas de clientes sin subirlas, y lo mismo vale para los volcados de bases de datos. Solo tu propio dispositivo trabaja con tus datos.
Compruébalo tú mismo: la pestaña de red
No tienes que fiarte de mi palabra. Las herramientas para desarrolladores del navegador muestran todas las conexiones que realiza una página:
- Abre esta página en Chrome, Edge o Firefox y pulsa
F12(Mac:Cmd+Option+I). - Cambia a la pestaña Red (Network) y vacía la lista con el icono del círculo tachado.
- Suelta un archivo de prueba en el recuadro de arriba y descarga el resultado.
- Mira la lista: aparece como máximo una entrada que empieza por
fileotext, el contador anónimo de la siguiente sección. Si debajo del resultado pulsas «Sí» o «No», se añade una entradafeedback, de nuevo solo con cifras. No existe ninguna petición con el contenido de tu archivo, salvo que tras «No» envíes a propósito un aviso de error con un fragmento (report).
Haz clic en una entrada y abre Payload (Carga útil) para ver qué se envió realmente: en el caso del contador, solo las cifras descritas más abajo, ningún contenido.
La única petición automática: un contador anónimo
Tras una reparación, el navegador envía una petición a /count/file o /count/text. Tras pulsar «Sí» o «No, sigue roto» sigue una petición a /count/feedback con las mismas cifras y la respuesta. Su dirección lleva solo unas pocas cifras: el idioma de la página, el tipo de archivo, el tamaño, la codificación detectada, el tipo de error y el número de puntos reparados; ningún contenido del archivo, ningún nombre de archivo y ningún identificador. El servidor anota estas cifras junto con la fecha y el país (determinado a partir de la dirección IP acortada) en un archivo de contador aparte: sin dirección IP, sin hora del día, sin navegador. Así sé con qué frecuencia y para qué se usa la herramienta. Los detalles están en la política de privacidad. Un aviso de error con un fragmento de texto solo sale cuando alguien lo envía a propósito; se entrega como correo electrónico y no se guarda (véase política de privacidad).
Compruébalo tú mismo: la prueba sin conexión
Existe una prueba aún más clara que funciona sin internet, porque Mojibuster también funciona sin conexión:
- Abre esta página una vez con conexión. El navegador guarda el código del programa en su caché.
- Desconéctate: apaga el wifi, desenchufa el cable o pon la limitación de la pestaña Red de las herramientas para desarrolladores en Sin conexión (Offline).
- Recarga la página y repara un archivo. Funciona: sin conexión no se puede transmitir nada.
Desde el menú del navegador (Instalar aplicación o Añadir a la pantalla de inicio) también puedes instalar Mojibuster como una aplicación.
Bloqueo técnico: Content Security Policy
Además, el servidor envía con cada página una Content Security Policy (CSP) estricta. Esta cabecera define a qué puede conectarse una página. La aplica el navegador, no mi código. Ni siquiera un script defectuoso o manipulado podría enviar datos a un servidor ajeno.
connect-src 'self': los scripts solo pueden hablar con mojibuster.com, con ningún otro servidor.script-src 'self'más hashes: solo se ejecuta el JavaScript propio del sitio, ningún código cargado de fuera.default-src 'self',form-action 'none',frame-ancestors 'none': ni imágenes, ni fuentes, ni marcos, ni destinos de formulario externos.
Encontrarás la cabecera en las herramientas para desarrolladores, en Red → primera entrada (el documento) → Cabeceras de respuesta → Content-Security-Policy.
Proveedores de servicios
Mojibuster no integra nada de otros proveedores: ni Google Fonts, ni CDN, ni servicios de analítica o publicidad, ni plugins de redes sociales. Las fuentes y los iconos se sirven desde el propio servidor del sitio.
- Alojamiento: Hetzner Online GmbH, Industriestr. 25, 91710 Gunzenhausen. El servidor está en Finlandia (UE).
- Registro de accesos: como cualquier servidor web, registra las peticiones, con direcciones IP acortadas, que se borran a los 30 días. El contenido de los archivos nunca aparece en él, porque nunca sale del navegador.
- Almacenamiento del navegador: tu elección de tema e idioma y el código del programa para el uso sin conexión. Solo se instala una cookie si eliges tú mismo un idioma.
¿Necesitamos un contrato de encargado del tratamiento?
En mi valoración, no. Un contrato de encargado del tratamiento según el art. 28 del RGPD es necesario cuando un proveedor trata datos personales por cuenta de tu organización. Con Mojibuster, tu organización procesa el archivo por sí misma, en su propio dispositivo. El contenido nunca me llega: ni puedo verlo ni guardarlo. Mojibuster solo proporciona el código del programa, de forma similar a un software que descargas y ejecutas en local.
Abrir el propio sitio web genera datos técnicos de acceso, como en cualquier página. De ellos soy el responsable del tratamiento; se describen en la política de privacidad.
Importante: esto no es asesoramiento jurídico. Consulta el uso con tu delegado de protección de datos; esta página está pensada para facilitar esa revisión.
Límites que conviene conocer
- Las extensiones del navegador pueden leer en cualquier sitio web, también en este. Para datos confidenciales, usa un perfil de navegador sin extensiones.
- El archivo reparado acaba en tu carpeta de descargas. Se le aplican las mismas normas internas que al original.
- El código puede cambiar, por ejemplo con las actualizaciones. Por eso las pruebas de red y sin conexión se pueden repetir en cualquier momento.
Preguntas frecuentes
¿Se suben mis archivos?
No. El archivo se lee y se repara en el navegador. Su contenido no se envía a ningún servidor, tampoco al de Mojibuster.
¿Se guarda algo?
Ningún contenido. Los datos solo viven en la memoria de la pestaña abierta. El navegador solo guarda tu elección de tema e idioma y el código del programa para el uso sin conexión.
¿Cómo compruebo que no se transmiten datos?
Abre las herramientas para desarrolladores (F12), pestaña Red, y repara un archivo. Aparte de una petición del contador sin contenido, no hay ninguna. O haz la prueba sin conexión: la herramienta funciona sin internet.
¿Podemos reparar datos de clientes con Mojibuster?
Técnicamente, los datos no salen de tu dispositivo. Si eso encaja con vuestras políticas internas lo decide vuestro delegado de protección de datos; los detalles de esta página ayudan en la revisión.
¿Dónde está el servidor?
En un centro de datos de Hetzner Online GmbH en Finlandia (UE). Solo contiene los archivos del sitio web, nunca tus datos.
¿Se puede comprobar qué se cambió en los datos?
Sí. «¿Qué ha cambiado?» muestra cada línea modificada y «Revisar a fondo» enumera cada tipo de cambio con su cantidad. Antes de guardar puedes desactivar reparaciones sueltas. Todo ocurre en el navegador y los datos no salen del dispositivo.