Cómo se protegen técnicamente los datos en Sidekick y dónde se procesa físicamente lo que sale del teléfono. Esta es una descripción a nivel de ingeniería para quienes quieren saber "cómo está hecho", no solo "qué se nos permite hacer".
Sidekick está diseñado para funcionar por completo sin conexión de forma predeterminada. Los empleados, grabaciones, transcripciones, notas, tareas, eventos de calendario y vacaciones se almacenan únicamente de forma local, en una base de datos cifrada en el teléfono del manager — no llegan a ninguno de nuestros servidores, a menos que el manager active de forma consciente una función concreta basada en la nube (descrita en la sección 4). La app no requiere crear una cuenta ni indicar un correo electrónico o número de teléfono.
| Qué | Cómo |
|---|---|
| Base de datos (metadatos, transcripciones, notas, tareas, datos de empleados) | Cifrada por completo mediante SQLCipher (AES-256). La clave son 256 bits aleatorios generados localmente en el primer inicio, almacenados en EncryptedSharedPreferences, protegidos por una clave de hardware del Android Keystore. El manager nunca ve ni introduce esta clave. |
| Archivos de audio de las grabaciones | Cada archivo se cifra por separado con AES-256-GCM, con una clave de software generada aleatoriamente por archivo y "envuelta" (cifrado de sobre) con una clave de hardware del Android Keystore — la propia clave de hardware nunca sale del elemento seguro del dispositivo. |
| PIN / patrón de bloqueo de la app | No se almacena en texto plano — se guarda como un hash SHA-256 con una sal única por instalación. |
Opcionalmente, el manager puede proteger la propia app con un código PIN, un patrón o su huella dactilar/rostro (biometría del sistema de Android). Tras configurar el bloqueo, la app se bloquea automáticamente al pasar a segundo plano, de modo que un teléfono dejado a la vista no da acceso a los datos a terceros.
Las funciones básicas (grabación, transcripción local, notas, tareas, calendario) funcionan 100% sin conexión y nunca envían contenido a ninguna parte. El contenido solo llega a la nube cuando el manager activa de forma consciente una función de IA basada en la nube (resúmenes de reuniones, detección de tareas, transcripción en la nube, "preguntar a la IA", preparación de reuniones) — disponible en los planes Premium/Pro. El plan Free utiliza un equivalente local y extractivo de estas funciones, sin enviar nada.
Cuando el manager activa las funciones en la nube, existen dos vías, según la configuración:
En ambas vías, el contenido queda sujeto además a la política de privacidad del proveedor de IA correspondiente (Mistral AI, Google Gemini, ElevenLabs) — merece la pena revisarlas si procesas en tus notas datos especialmente sensibles. Ninguno de estos proveedores es seleccionado por nosotros de forma predeterminada sin el conocimiento del manager — elegir el proveedor y activar la nube en sí son siempre una decisión explícita en Ajustes.
Nuestro servidor (Cloud Run + base de datos Supabase) almacena únicamente datos técnicos, vinculados a un identificador anónimo de instalación (un UUID aleatorio generado en el teléfono — no es un identificador publicitario ni ningún dato personal como nombre o correo electrónico):
el contenido de grabaciones, transcripciones, notas, tareas, datos de empleados, ni el nombre/correo electrónico del manager — nuestra base de datos simplemente no tiene esos campos.
Toda conexión de red de la app — con nuestro servidor, así como directamente con los proveedores de IA cuando se usa una clave de API propia — se realiza exclusivamente mediante HTTPS/TLS. La conexión del servidor con la base de datos Supabase también está cifrada con TLS.
| Componente | Proveedor | Región |
|---|---|---|
| Servidor de la aplicación (proxy de IA, verificación de compras) | Google Cloud Run | europe-central2 — Varsovia, Polonia |
| Base de datos de estadísticas/compras | Supabase (PostgreSQL) | Región UE (Fráncfort) |
La siguiente información se refiere al acceso estándar mediante clave de API (tal como lo usa nuestro servidor proxy) y puede variar según el plan/cuenta concreto — datos actualizados a agosto de 2026, verificados en la documentación oficial de los proveedores.
| Proveedor | Para qué se usa | Ubicación del procesamiento | Retención de datos |
|---|---|---|---|
| Google Gemini | Resúmenes, detección de tareas, "preguntar a la IA" (una de dos opciones junto a Mistral AI) | La API estándar de Gemini (el mismo tipo de acceso que usa nuestra clave) no garantiza el procesamiento en la UE — funciona en modo global, sin fijarse a una región. La garantía de ubicación en la UE la ofrece únicamente Vertex AI con "fijación" explícita de región (un servicio empresarial independiente de Google Cloud), que no usamos aquí. | En el nivel de pago de la API, Google declara que no utiliza el contenido de las solicitudes/respuestas para entrenar sus modelos, pero lo registra durante unos 55 días únicamente para detectar abusos. En el nivel gratuito (Google AI Studio sin pago), Google puede utilizar el contenido para mejorar sus servicios — por eso usamos una clave del nivel de pago. |
| ElevenLabs (Scribe) | Transcripción de voz a texto | Por defecto (fuera de una cuenta Enterprise), los datos se procesan y finalmente se almacenan en EE. UU., independientemente de la ubicación del usuario — ElevenLabs también tiene infraestructura en la UE y Singapur, pero la garantía de procesamiento exclusivamente en la UE es una opción de pago disponible solo en el plan Enterprise, que no usamos aquí. | ElevenLabs ofrece un "Zero Retention Mode" opcional (sin retención de contenido en sus servidores) — también es una función que requiere una configuración independiente a nivel de cuenta, no el estado predeterminado para una clave de API estándar. |
Los datos locales del teléfono los borra el propio manager en Ajustes ("Borrar datos") — completamente sin conexión y de forma inmediata. Los datos técnicos descritos en la sección 5, almacenados en nuestro servidor, se pueden eliminar con el botón "Eliminar datos del servidor" en Ajustes, o mediante una solicitud en la página Solicitud de eliminación de datos (también sin acceso a la app).