Cómo se mantiene privado
El archivo no tiene adónde ir.
Decir que un archivo se “procesa en local” no cuesta nada. Esta página muestra el mecanismo, las comprobaciones que puedes hacer tú mismo y el punto exacto en el que la promesa termina.
Un PerformanceObserver siempre activo sube este número si la página carga algo de otro origen.
Content-Security-Policy: … connect-src 'none'
Esta directiva está en la cabecera HTTP Content-Security-Policy de cada página. Le dice al navegador que rechace las conexiones fetch, XHR, WebSocket y beacon de la herramienta.
Qué pasa cuando eliges un archivo
- El navegador le da a esta pestaña una referencia temporal al archivo que elegiste. Elegirlo no lo sube.
- Los píxeles de las imágenes se decodifican con las funciones del navegador. Los objetos PDF los lee una biblioteca servida desde este mismo dominio.
- El resultado se construye en memoria y se expone con una dirección local
blob:, que solo existe en esta sesión del navegador. - Descargar escribe los bytes nuevos en tu dispositivo. Recargar la página vacía la memoria de trabajo.
Tres formas de comprobarlo tú mismo
| Comprobación | Qué hacer | Qué deberías ver |
|---|---|---|
| Panel de red | Abre las herramientas para desarrolladores del navegador, elige Red y procesa un archivo. | Ninguna solicitud que lleve el archivo, su nombre o el resultado. |
| Prueba sin conexión | Abre una herramienta una vez, desconéctate de internet y úsala. | La herramienta ya visitada sigue funcionando desde la caché del service worker. |
| Cabecera de seguridad | Examina la respuesta del documento en las herramientas para desarrolladores. | connect-src 'none', que bloquea las conexiones fetch, XHR, WebSocket y beacon. |
El límite, dicho con precisión
El sitio tiene que llegar igualmente a tu navegador, así que Cloudflare sirve el HTML, los scripts, los estilos y las fuentes, y puede guardar los registros de seguridad habituales, como la dirección IP y la hora. El archivo que eliges, su nombre, sus píxeles y el resultado no viajan con esas solicitudes.
Hay una excepción que conviene nombrar. La caché sin conexión la gestiona un service worker, y un worker sigue la política que se sirve con su propio script: por eso /sw.js se sirve sin el connect-src del documento y puede pedir a este dominio las páginas y los archivos que guarda para usarlos sin conexión. Nunca toca el archivo que elegiste, que la página lee de tu disco y que nunca se convierte en una solicitud.
En esta versión del sitio no hay ninguna red publicitaria activa. Ninguna página de herramienta contacta automáticamente con otra empresa.
Código de terceros, servido desde aquí
El motor PDF usa pdf-lib, y los dos conversores de PDF a imagen dibujan las páginas con pdf.js, cuya licencia Apache 2.0 se publica con el sitio. El conversor HEIC usa el decodificador heic-to, con licencia LGPL-3.0: esa licencia también se publica con el sitio. Estos scripts se copian en el sitio y se sirven desde NoUpload: abrir una herramienta nunca le pide código a un CDN de paquetes ni a sus autores.