HideFile cifra tus archivos en el navegador con una clave creada a partir de tu contraseña, y luego guarda el resultado cifrado dentro de una foto, un PDF o un video común. Tus archivos y tu contraseña no se nos envían. Esta página nombra los algoritmos y los parámetros, enumera exactamente qué envía la app y es franca sobre los límites, incluidos los que un lector atento nos reprochará.
Dos ideas ayudan a seguir el resto de la página. El cifrado es la capa de seguridad: sin la contraseña, el contenido es ilegible. El archivo de portada es camuflaje: cambia cómo se ven los bytes cifrados para quien navega por tus archivos, y no los vuelve invisibles para quien los examina.
Tu contraseña se convierte en una clave en tu dispositivo
Cuando creas un archivo bloqueado, HideFile convierte tu contraseña en una clave con Argon2id (versión 1.3), una función de derivación de claves que consume mucha memoria. Que consuma mucha memoria significa que cada intento cuesta un bloque de memoria además de tiempo, así que adivinar sigue siendo lento incluso en hardware hecho para adivinar.
El costo depende de dónde se crea el archivo. En un navegador de escritorio, Argon2id usa 64 MiB de memoria y 3 iteraciones en un solo carril. Un navegador que se identifica como celular o tableta, o que reporta 4 GB de memoria o menos, recibe 19 MiB, 2 iteraciones y un solo carril, porque un navegador de celular no puede gastar de forma confiable 64 MiB en cada desbloqueo sin fallar. Ese ajuste más bajo cumple la recomendación mínima de OWASP para Argon2id. Los parámetros se guardan dentro del archivo bloqueado, así que un archivo creado en una computadora de escritorio conserva su costo de 64 MiB cuando lo abres en un celular.
Cada archivo bloqueado recibe una sal aleatoria de 16 bytes, guardada junto con él. Dos personas que elijan la misma contraseña terminan con claves distintas, así que nadie puede precalcular una tabla de intentos y usarla contra todos los archivos.
Tus archivos se sellan con XChaCha20-Poly1305
La clave derivada de tu contraseña no cifra directamente tus archivos. Cada archivo bloqueado tiene su propia clave de archivo aleatoria de 256 bits, generada en tu dispositivo. La clave de la contraseña envuelve esa clave de archivo, y la clave de archivo sella tus archivos.
El sellado usa XChaCha20-Poly1305, un cifrado autenticado: mantiene el contenido privado y detecta manipulaciones. Los archivos se guardan como registros, cada uno con su propio nonce aleatorio de 192 bits y una etiqueta de autenticación Poly1305. Si un registro se altera, ya sea por una copia dañada o a propósito, el desbloqueo falla con un error en lugar de devolver en silencio contenido incorrecto.
Ambos algoritmos provienen de las bibliotecas de código abierto RustCrypto (los crates argon2 y chacha20poly1305). Nuestro propio núcleo, escrito en Rust, las usa y se ejecuta en tu navegador compilado a WebAssembly. El mismo núcleo funciona en todos los lugares donde funciona HideFile, así que hay una sola implementación que examinar y no una por plataforma.

Nada de lo que bloqueas se sube
Bloquear, desbloquear y guardar ocurren en la pestaña del navegador. Tus archivos, sus nombres, tu contraseña y las claves no se envían a ningún servidor de HideFile, y no existe ningún servidor de HideFile que guarde archivos bloqueados. La única excepción es una función que activas tú mismo: si conectas tu propio bucket compatible con S3, como Cloudflare R2, la app envía bytes cifrados desde tu dispositivo directamente a ese bucket, no a nosotros.
La app sí guarda algunas cosas en el navegador de tu dispositivo. Para que reabrir sea rápido, guarda una copia del último archivo bloqueado que abriste, todavía cifrado, hasta por un día y hasta 100 MB. Los archivos que guardas para reutilizar y la copia de trabajo de un archivo abierto viven en el almacenamiento de archivos privado del navegador. También recuerda ajustes como el tema y la vista, y el nombre, el tamaño y la hora de las últimas diez portadas que abriste, nunca la contraseña. Borrar los datos del sitio elimina todo eso. En una computadora compartida o prestada, hazlo cuando termines.
Las analíticas que enviamos no llevan datos de archivos
Usamos PostHog para contar el uso, con la captura automática desactivada, así que no se registran los clics ni el contenido de las páginas. Esto es lo que se envía:
- Vistas de página: la ruta de la página y la URL de referencia, tu navegador y tipo de dispositivo, y el tamaño de pantalla.
- Un país aproximado, que PostHog deduce de tu dirección IP cuando llega la solicitud.
- Un identificador aleatorio anónimo guardado en tu navegador, para contar visitas repetidas.
- Tres eventos,
locked_file_created,locked_file_openedylocked_file_saved, cada uno con solo el tipo de portada (png, jpeg, mp4 o pdf) y la plataforma (web o nativa).
No se envían nombres de archivo, tamaños, cantidades, rutas, contraseñas, claves, contenidos ni mensajes de error. Un bloqueador de contenido como uBlock Origin bloquea las analíticas y la app funciona igual. Puedes comprobarlo tú mismo: abre las herramientas de desarrollo de tu navegador, mira la pestaña Network mientras bloqueas y guardas un archivo, y busca cualquier solicitud que lleve tus archivos. La política de privacidad es la versión vinculante de esta lista.
El modelo de amenazas, explicado por personas
| Quién | Resultado | Por qué |
|---|---|---|
| Alguien que revisa tu celular, tu laptop o tu nube | Detenido | Ve una foto, un PDF o un video común, y nada con nombre de bóveda |
| Alguien que conoce el código de tu celular | Detenido | La portada tiene su propia contraseña, distinta del bloqueo del dispositivo |
| Cualquiera con una copia de la portada pero sin la contraseña | Detenido | El contenido sigue cifrado |
| Un examinador forense, o cualquiera que conozca HideFile y revise de cerca | No queda oculto | Puede saber que se agregaron datos; el contenido sigue cifrado |
| Alguien que pueda obligarte a entregar la contraseña | No se detiene | Ningún software resuelve esto |
| Malware, grabación de pantalla o alguien mirando un dispositivo desbloqueado | No se detiene | Mientras los archivos están abiertos, ven lo que tú ves |
Una herramienta forense puede saber que se agregaron datos
HideFile no intenta ocultar a una revisión forense que hay datos presentes, y no afirma hacerlo. Tus registros cifrados están dentro de la propia estructura de archivo de la portada, donde un visor normal los ignora. Una herramienta hecha para eso, o un examinador que sepa qué buscar, puede identificar que se agregaron registros. El tamaño del archivo es un indicio más simple: una foto corta de vacaciones que pese varios gigabytes es inusual, y comparar la portada con el original intacto muestra la diferencia de inmediato.
Lo que obtiene el examinador es el hecho de que hay algo ahí, no el contenido. Sin la contraseña, los registros siguen sellados. Ese es el límite honesto: a simple vista responde a una persona curiosa y a una búsqueda ordinaria, no a un examinador decidido con tu dispositivo en la mano. Es la herramienta equivocada para revisiones en la frontera, examinadores expertos o presión legal.
La detección de manipulaciones cubre los registros sellados, no cada byte de la portada. Una app que vuelve a guardar la portada, le quita metadatos o la recomprime puede cambiar la imagen sin ninguna alarma del cifrado, y puede eliminar los registros por completo, lo que destruye los archivos de adentro. Conserva la portada como archivo.
No hay recuperación de contraseña
No guardamos tu contraseña y no podemos derivarla de un archivo bloqueado. No hay enlace de restablecimiento, ni código de recuperación, ni proceso de soporte que pueda abrir un archivo. Si pierdes la contraseña, los archivos de adentro se pierden. Es una propiedad del diseño, y la razón por la que quien tenga una copia de tu portada no puede simplemente pedirnos que la abramos.
Qué no es de código abierto y no está auditado
El código fuente de HideFile no es público, y ninguna firma independiente lo ha auditado. Los algoritmos son estándar, las bibliotecas que los implementan son de código abierto, y esta página y la página de seguridad de la app dan los parámetros, pero nuestro código que los invoca no lo pueden leer personas ajenas hoy.
Eso importa. Un comentarista de Hacker News, al reaccionar a otra herramienta cerrada que oculta datos en una foto, lo resumió en cuatro palabras: "no source code == no security" (sin código fuente no hay seguridad). Otros en esa comunidad señalan que una app web se entrega nueva desde el servidor en cada visita, así que incluso el código fuente publicado necesitaría una forma de confirmar que el código que ejecutas coincide con él. Ambos puntos son válidos, y para un lector con ese estándar, HideFile todavía no lo cumple. Preferimos decirlo a discutirlo. Si encuentras una falla, escribe a support@hidefile.app con los pasos para reproducirla y danos un tiempo razonable para publicar una corrección antes de divulgarla.
Fuentes
- HideFile: How HideFile protects you
- HideFile: Privacy Policy
- OWASP: Password Storage Cheat Sheet
- RFC 9106: Argon2 Memory-Hard Function for Password Hashing and Proof-of-Work Applications
- RustCrypto: argon2 crate y chacha20poly1305 crate
- Hacker News: Show HN: a hardware-bound local password vault hidden in a photo, comentario 49509561
- Hacker News: comment on browser delivery of encrypted apps