Seguridad / Arquitectura de cifrado
SeguridadActualizado el 24 de octubre de 2026
Arquitectura de cifrado
Detalles técnicos de cómo Parrot Scribe protege tus datos
Versión: Esta guía describe Parrot Scribe estable 1.0.8. La beta pública 1.1.0 tiene controles diferentes y algunas funciones sin terminar. Consulta Instalación y diferencias de la beta antes de aplicar estos pasos a la beta.
A continuación se describe la arquitectura estable. El apartado Beta 1.1.0 explica sus diferencias de almacenamiento y de alcance de la eliminación.
Parrot Scribe guarda cifrados en reposo los archivos de las sesiones y el índice de sus metadatos. La transcripción y el procesamiento de hablantes usan modelos locales y no envían el contenido original de las sesiones a un servidor. Las licencias, la gestión de dispositivos y las descargas de modelos usan servicios de red.
Raíz de confianza: llavero de protección de datos
Parrot Scribe genera un secreto maestro aleatorio de 32 bytes y lo guarda como un elemento sincronizable en el llavero de protección de datos de macOS.
- Disponible al desbloquear: macOS permite acceder al elemento después de que el usuario desbloquee el Mac.
- Transferencia mediante el llavero de iCloud: Si está activado, Apple puede llevar el secreto maestro a otro Mac con la misma cuenta de Apple.
- Clave de recuperación de 24 palabras: La frase de recuperación reconstruye el mismo secreto maestro sin el llavero de iCloud. Si eliges Copiar o Guardar, la app pone la frase en el portapapeles o escribe un archivo en texto claro, accesible solo por su propietario, en la ubicación que elijas. Parrot Scribe no envía la frase a sus servidores.
- Sin custodia de claves por Parrot Scribe: La app no tiene una copia del secreto maestro en el servidor.
La raíz actual es un secreto de software protegido por el llavero. Las bibliotecas antiguas pueden contener material de claves vinculado al Mac original hasta que termine la migración a claves portátiles.
Jerarquía y separación de claves
Parrot Scribe no cifra cada archivo directamente con el secreto maestro:
- HKDF-SHA256 deriva del secreto maestro una clave de cifrado de claves.
- Esa clave usa AES Key Wrap para proteger secretos aleatorios por sesión y por dominio de almacenamiento en archivos auxiliares.
- A partir de esos secretos se derivan las claves de datos AES-256-GCM con sales por archivo y etiquetas específicas de cada dominio.
Las claves de datos de transcripciones, audio, comentarios y conjuntos de datos de hablantes son distintas, pero los archivos de una misma sesión comparten el secreto subyacente de esa sesión. Exponer una clave de datos derivada no expone las claves de los demás dominios; exponer el secreto de la sesión expone todos sus dominios. Ninguno de estos límites protege un Mac desbloqueado frente al software que se ejecuta con la cuenta del usuario.
Cifrado en reposo
Archivos de datos
Los fragmentos de transcripción, los fragmentos de audio conservado, las representaciones vectoriales de voz, los comentarios y los metadatos de carpetas usan AES-256-GCM. Los formatos de archivo guardan un nonce, el texto cifrado y una etiqueta de autenticación. Los datos autenticados adicionales vinculan el texto cifrado al formato o al contexto de archivo correspondiente.
Los archivos de transcripción y audio de las sesiones son contenedores cifrados a los que solo se añaden datos. Cada fragmento se autentica de forma independiente, lo que permite una recuperación acotada tras fallos sin guardar en la biblioteca una transcripción en texto claro ni un archivo de audio reproducible.
Índice de metadatos de sesiones
El índice SQLite de sesiones se cifra por separado con SQLCipher y una clave de 256 bits. Aquí no se describe SQLCipher como AES-GCM: tiene su propio mecanismo de cifrado de bases de datos.
Biblioteca recuperable
Los registros cifrados conservan el estado confirmado de las sesiones y de la biblioteca por separado de la base de datos de consultas, incluidos títulos, comentarios, carpetas, correcciones de hablantes y operaciones de eliminación sin terminar. SQLCipher proporciona el índice local de listados y búsquedas. Si los registros y sus claves correspondientes están intactos, el inicio puede reconstruir ese índice sin perder las modificaciones confirmadas.
Ese índice de búsqueda guarda una copia cifrada adicional del texto de las transcripciones de toda la biblioteca. Acceder a su clave de base de datos puede exponer ese contenido consultable aunque las sesiones de origen tengan claves separadas. Por eso, la eliminación limpia la base de datos gestionada y su registro de escritura anticipada, además de retirar los archivos y las claves de la sesión. Las copias de seguridad independientes tienen su propio límite de eliminación.
Las bibliotecas desde la versión 0.4.0 disponen de una actualización automática que puede reanudarse. Mantén disponible el Mac original hasta que termine cualquier conversión necesaria de claves antiguas. Para formatos anteriores, Exportar una biblioteca antigua conserva el material legible en un archivo portátil; no importa ese archivo a Biblioteca.
La recuperación no puede sustituir archivos ni claves que falten. Si algunos datos de sesiones no se pueden leer, Biblioteca puede mostrar las sesiones disponibles con un aviso de recuperación incompleta mientras conserva los archivos afectados. Consulta Errores de recuperación de la biblioteca antes de cambiar o eliminar archivos.
Límites del texto claro
El cifrado en reposo no significa que los datos nunca estén sin cifrar. El audio y las transcripciones deben existir en claro en la memoria del proceso mientras Parrot Scribe los captura, transcribe, busca, muestra, exporta o reproduce. Exportar o compartir puede escribir datos sin cifrar en un destino que elijas o temporalmente en un directorio accesible solo por su propietario; los archivos temporales se eliminan durante la limpieza normal.
Datos locales y portabilidad
Parrot Scribe no sube ni sincroniza automáticamente las transcripciones, el audio conservado ni los metadatos de sesiones. Las licencias y la gestión de dispositivos envían información de licencia y dispositivo a servicios alojados, las descargas de modelos usan servicios externos y el contenido que exportas, compartes o expones expresamente mediante el servidor MCP opcional va al destino o cliente autorizado que elijas.
El elemento raíz del llavero está marcado como sincronizable. Si el llavero de iCloud lo entrega, otro Mac solo podrá descifrar los archivos posteriores a la migración si copias por separado la biblioteca cifrada con sus archivos auxiliares de claves correspondientes. Una sesión copiada necesita su archivo auxiliar session.key y la raíz correspondiente, obtenida mediante el llavero de iCloud o la restauración con la clave de recuperación.
Los archivos antiguos anteriores a la migración pueden seguir necesitando material de claves vinculado al Mac original.
Copias de seguridad y traslado a otro Mac
Cierra Parrot Scribe antes de copiar su carpeta de datos completa ~/Library/Application Support/Parrot Scribe/. Mantén juntos los archivos de una misma copia realizada con la app cerrada, incluidos los registros cifrados, los archivos auxiliares de claves y los archivos complementarios de la base de datos. No copies solo una base de datos o unas pocas transcripciones, no mezcles archivos de copias de fechas distintas ni pongas la base de datos en uso en una carpeta sincronizada con iCloud Drive.
La clave de recuperación de 24 palabras restaura el secreto maestro, no los archivos de la biblioteca. Para restaurar necesitas tanto los datos cifrados con sus archivos auxiliares de claves correspondientes como el secreto maestro correcto, entregado por el llavero de iCloud o restaurado con las palabras de recuperación. Conserva el Mac original y la copia de seguridad hasta comprobar el contenido restaurado. Parrot Scribe no sincroniza el contenido de la biblioteca entre Macs.
Conserva los registros de recuperación independientes junto con los archivos de sesiones y los archivos compartidos de la biblioteca. Los nombres compartidos y los metadatos de identidad de los hablantes se pueden incluir en las copias de seguridad. Las herramientas de copia que respetan las exclusiones de macOS omiten los modelos biométricos de voz y sus archivos auxiliares de claves. Por tanto, una copia puede restaurar la identidad de un hablante sin restaurar su reconocimiento de voz. Consulta Hablantes restaurados.
Alcance de la eliminación
Cuando eliminas una sesión, Parrot Scribe retira primero el material de claves activo de esa sesión y después elimina su directorio y la fila del índice. En Storage v2, olvidar a un hablante revoca y elimina todas las sesiones en las que aparece y después elimina su representación vectorial de voz y su entrada en el índice. Esto también elimina el contenido de otros hablantes en esas sesiones.
La eliminación criptográfica se aplica al almacenamiento actual gestionado por la app. Una copia independiente que aún contenga el antiguo archivo auxiliar con la clave envuelta y la raíz correspondiente puede seguir descifrando sus datos.
Los registros de recuperación conservan la intención de eliminar a través de una interrupción e impiden que una base de datos local desactualizada restaure una sesión eliminada. Esto no borra las copias de seguridad independientes ni los archivos exportados.
Beta 1.1.0
La versión pública 1.1.0-beta.1 usa una biblioteca separada en ~/Library/Application Support/Parrot Scribe/rs/library/. Importa la biblioteca original sin sustituir sus archivos. Las palabras de recuperación siguen representando el mismo secreto maestro, pero la nueva biblioteca usa una clave derivada por separado y otro formato de archivo.
- Contenido sellado: Los registros de sesiones, el audio conservado, los ajustes, las carpetas, la información de hablantes y las autorizaciones de clientes usan cifrado autenticado XChaCha20-Poly1305. Cada registro sellado tiene un nonce aleatorio nuevo de 24 bytes. Se deriva una clave para toda la biblioteca a partir del secreto maestro con HKDF-SHA256.
- Índice pequeño en texto claro:
index.sqlitees SQLite normal, no SQLCipher. Guarda identificadores de sesiones y horas de inicio, no texto de transcripciones, títulos ni nombres de hablantes. La app puede reconstruirlo a partir de los registros sellados de sesiones. Los nombres y tamaños de archivos también son visibles para quien pueda leer la carpeta de datos. - Límite de claves diferente: La beta no usa las claves envueltas separadas por sesión de la app estable. Eliminar una sesión retira sus registros y audio actuales gestionados por la app, pero conserva la clave de la biblioteca; no supone una revocación criptográfica de claves por sesión. Un registro cifrado copiado puede seguir siendo descifrable con la raíz correspondiente.
- Originales y copias de seguridad: Eliminar datos en la beta no elimina la biblioteca original conservada, las copias de seguridad independientes ni los archivos exportados. Gestiona esas copias según tu propia política de conservación. No des por hecho que eliminar una sesión de la beta borra todas sus copias anteriores.
El cifrado autenticado rechaza el texto cifrado modificado y las claves incorrectas, pero no garantiza en general que un archivo esté en su ruta original ni que sea su versión más reciente. Un archivo de audio cifrado válido de la misma biblioteca puede trasladarse a la ruta de otra grabación, y una versión cifrada válida anterior puede volver a presentarse. El software con acceso a los archivos de la biblioteca como tu usuario queda fuera del alcance de esta protección en reposo.
El secreto maestro usa la identidad de producción del llavero de protección de datos, está disponible mientras el Mac está desbloqueado y está marcado como sincronizable. La transferencia de la raíz mediante el llavero de iCloud sigue sin copiar el contenido de la biblioteca. Restaurar requiere una copia completa de los datos correspondientes y la raíz correcta; las palabras de recuperación no pueden recrear archivos que falten.
Los datos en claro siguen siendo necesarios en memoria durante el procesamiento y en los destinos a los que exportas o que compartes expresamente con un cliente de IA. El cifrado local no impide que un cliente de IA autorizado basado en la nube envíe transcripciones a su proveedor. Estos límites se aplican aunque el mecanismo de almacenamiento de la beta sea distinto al de la versión estable.