Comment Gaavala protège l'audio de vos réunions : une architecture pensée pour la confidentialité
Chaque jour ouvré, des millions de professionnels participent à des réunions où sont abordées des informations sensibles — négociations de fusion, consultations médicales, stratégie juridique, avant-première de résultats trimestriels, décisions relatives au personnel. Quand ces réunions franchissent les barrières linguistiques, la traduction en temps réel devient indispensable. Mais la plupart des outils de traduction de réunions exigent d'envoyer votre audio brut vers le cloud d'un éditeur, ce qui crée exactement le type de surface d'exposition des données que les équipes juridiques, conformité et sécurité peuvent de moins en moins approuver.
Gaavala est conçu pour se retirer entièrement du chemin de l'audio. Quand vous faites passer une réunion par notre extension Chrome, votre audio ne transite pas par les serveurs de Gaavala. Il circule directement de votre navigateur vers le moteur de reconnaissance vocale Soniox via un WebSocket chiffré — et notre backend n'en voit jamais le moindre octet.
Cet article détaille exactement comment cela fonctionne, quelles données circulent sur le réseau, et comment cette architecture se projette sur les référentiels de conformité courants.
Le principe de confidentialité fondamental
La plupart des outils de traduction SaaS suivent un flux de données familier :
- Votre navigateur capture l'audio de la réunion
- L'audio est téléversé vers le backend de l'éditeur
- Le backend de l'éditeur relaie l'audio vers un moteur de reconnaissance vocale
- Les transcriptions reviennent via le backend de l'éditeur
- Les serveurs de l'éditeur journalisent, mettent en cache ou conservent souvent l'audio en chemin
Chaque saut de cette chaîne est une frontière de confiance. Chaque saut est un endroit où un bug de journalisation, une fuite d'identifiants, une réquisition judiciaire ou un ingénieur malveillant pourrait exposer le contenu de votre réunion. Plus il y a de parties qui touchent l'audio, plus il est difficile de prouver à un auditeur que personne ne l'a conservé.
Gaavala élimine entièrement l'étape de relais. Le flux de données est le suivant :
- Votre navigateur capture l'audio de la réunion depuis l'onglet
- Votre navigateur ouvre un WebSocket direct vers Soniox
- L'audio circule directement sur ce WebSocket
- Soniox renvoie les transcriptions directement à votre navigateur
- Le backend de Gaavala n'intervient jamais
L'extension Chrome qui s'exécute sur votre machine est le seul morceau de notre code qui touche votre audio — et elle ne nous envoie pas cet audio.
Pourquoi nous avons choisi cette architecture
Quand nous avons reconstruit Gaavala sous forme d'extension Chrome, nous avons pris une décision d'architecture délibérée : l'extension authentifierait les utilisateurs via notre backend, gérerait l'état de l'abonnement et servirait des métadonnées — mais elle ne serait jamais sur le chemin de l'audio. Le raisonnement était direct :
- Surface de conformité : chaque octet d'audio client que nous traitons est un octet dont nous devons rendre compte dans les DPIA (analyses d'impact relatives à la protection des données), les rapports SOC 2 et les négociations de BAA. Le moyen le plus propre de maintenir cette surface à zéro est de ne jamais toucher l'audio.
- Rayon d'impact d'une brèche : une brèche dans un serveur qui traite de l'audio est fondamentalement pire qu'une brèche dans un serveur qui traite des métadonnées textuelles. Nous préférons que nos systèmes les plus sensibles manipulent les données les moins sensibles.
- Latence : chaque saut de relais ajoute un temps d'aller-retour. Le streaming direct du navigateur vers Soniox supprime un saut entier, ce qui nous donne une latence de sous-titres nettement meilleure.
- Des coûts alignés sur la confidentialité : faire tourner notre propre relais audio signifierait payer de la bande passante et du calcul sur chaque réunion. Ne pas en faire tourner économise de l'argent et protège les clients. Quand les incitations sont alignées, l'architecture a tendance à rester honnête.
Le flux de données en détail
Regardons ce qui se passe réellement quand vous démarrez une transcription dans une réunion.
Étape 1 : l'authentification
Lors de votre première connexion à Gaavala, l'extension utilise l'API chrome.identity.launchWebAuthFlow de Chrome pour effectuer un flux OAuth Authorization Code avec Google ou Microsoft. Le fournisseur d'identité renvoie un code d'autorisation à votre navigateur, que l'extension échange auprès de notre backend contre un JWT de session Gaavala. Ce JWT est stocké dans chrome.storage.local et sert à authentifier les appels API ultérieurs vers notre backend.
Rien de tout cela ne manipule d'audio. Le flux OAuth est purement textuel — jetons, claims, champs de profil.
Étape 2 : la clé Soniox temporaire
Quand vous cliquez sur « Start » dans une réunion, l'extension appelle l'API de notre backend pour demander une clé Soniox temporaire à courte durée de vie. Cette clé a trois propriétés importantes :
- Elle est limitée à la reconnaissance vocale uniquement — rien d'autre dans la surface de l'API Soniox
- Elle expire en quelques minutes, pas en quelques jours
- Elle est émise une fois par session et n'est pas conservée sur votre appareil
Le schéma de la clé temporaire est essentiel dans l'histoire de la confidentialité. Si Gaavala livrait une clé d'API Soniox à longue durée de vie à l'intérieur du bundle de l'extension, n'importe qui pourrait l'extraire. À la place, nous émettons des clés jetables, générées à la demande, liées à votre session authentifiée et invalidées peu après la fin de la session.
Notre backend journalise uniquement les métadonnées de cette requête — quel utilisateur, à quelle heure, quel palier d'abonnement. Il ne voit aucun audio, puisqu'aucun audio n'a encore été capturé.
Étape 3 : la capture de l'audio de l'onglet
Vous rejoignez votre appel Microsoft Teams, Zoom, Google Meet ou Webex dans un onglet Chrome. L'extension Gaavala ouvre le panneau latéral et vous invite à démarrer la capture audio. Quand vous confirmez, l'extension utilise l'API tabCapture de Chrome — une API réservée aux extensions qui permet de capturer l'audio de l'onglet actif avec une permission explicite de l'utilisateur et un indicateur visible.
Chrome achemine l'audio capturé vers un document offscreen que Gaavala exécute en arrière-plan. Le document offscreen est une page sandboxée que l'extension peut utiliser pour traiter l'audio sans conserver d'interface visible. À l'intérieur de ce document offscreen, Gaavala ouvre un MediaStream, le connecte à un AudioContext et le prépare pour le streaming.
Point crucial : l'audio passe aussi par un graphe audio local qui renvoie le son vers vos haut-parleurs. Vous pouvez donc continuer d'entendre la réunion normalement pendant que Gaavala la capture — rien n'est coupé ni détourné.
Étape 4 : le WebSocket direct vers Soniox
Le document offscreen ouvre ensuite une connexion WebSocket directement vers Soniox (wss://stt-rt.soniox.com/...). Cette connexion :
- Utilise TLS 1.2 ou une version supérieure
- Est authentifiée avec la clé temporaire à courte durée de vie de l'étape 2
- Part de la pile réseau de votre navigateur — les paquets circulent de votre système d'exploitation vers Soniox, pas vers Gaavala
Les trames audio capturées depuis l'onglet sont encodées en PCM et envoyées sur le WebSocket. Soniox les traite en temps réel et renvoie des tokens de transcription sur la même connexion. Ces tokens — des fragments de texte horodatés avec des étiquettes d'intervenants — arrivent directement dans le document offscreen, qui les transmet au panneau latéral pour affichage.
À aucun moment de toute cette boucle un paquet audio n'atteint un serveur exploité par Gaavala. Vous pouvez le vérifier vous-même avec Chrome DevTools : ouvrez l'onglet Network avec le filtre WS activé pendant que Gaavala tourne, et vous verrez exactement un WebSocket — vers un hôte soniox.com — et zéro trafic sortant vers gaavala.com contenant de l'audio.
Étape 5 : l'affichage de la transcription et le résumé optionnel
Les tokens de transcription sont rendus sur trois surfaces : le panneau latéral, une surcouche flottante sur l'onglet de la réunion, et le tampon en mémoire utilisé pour l'export. Aucune de ces surfaces ne sérialise d'audio. Elles ne manipulent que du texte.
Quand vous déclenchez un résumé AI à la fin d'une réunion, le résumé est généré entièrement sur votre appareil par l'AI intégrée de Chrome (Gemini Nano). Le texte de la transcription ne quitte jamais votre machine — il n'est pas envoyé au backend de Gaavala, et il n'est envoyé à aucun tiers. Le contenu de la réunion, audio ou texte, ne traverse jamais le backend de Gaavala ; les seules choses qui le font restent les métadonnées d'authentification et d'abonnement.
Ce que voient les serveurs de Gaavala
Voici la liste exacte des données que notre backend manipule, toutes fonctionnalités confondues :
| Donnée | Quand | Conservation | Remarques |
|---|---|---|---|
| Refresh token de session Gaavala | À la connexion | Durée de vie du token — les entrées expirées sont purgées chaque jour | Votre jeton OAuth Google/Microsoft n'est jamais stocké |
| Profil utilisateur (e-mail, nom) | À la connexion | Durée de vie du compte | Pour la facturation et le support |
| Statut d'abonnement | En permanence | Durée de vie du compte | Palier, état de l'essai |
| Demandes de clé Soniox temporaire | Par session | Journal de requêtes uniquement | Aucun audio |
| Compteur de minutes de transcription | Par session | Durée de vie du compte | Regroupé par mois, pour l'application des quotas |
| Analyse d'audience anonyme du site web | Uniquement après votre acceptation des cookies | Conservée par Google Analytics, pas dans notre base de données | Site web uniquement — l'extension remonte des compteurs d'erreurs anonymes ne portant aucun identifiant utilisateur |
Voici la liste exacte des données que notre backend ne voit pas :
- L'audio brut de la réunion (dans n'importe quel format, à n'importe quel moment)
- Les flux audio compressés
- Les tampons audio ou les représentations intermédiaires
- Les données biométriques vocales
- L'identité des intervenants au-delà des identifiants anonymes d'intervenants attribués par Soniox
- Le texte de la transcription — les résumés sont générés sur l'appareil ; les transcriptions ne quittent jamais votre machine
Si un tribunal exigeait de Gaavala l'audio d'une réunion précise, la réponse techniquement véridique serait que nous ne l'avons pas et que nous ne pouvons pas le récupérer. Il n'a jamais existé sur nos systèmes.
Auditez-le vous-même
L'un des avantages de fonctionner comme extension Chrome est que tout l'environnement d'exécution est inspectable. Votre équipe IT peut vérifier nos affirmations de confidentialité sans faire confiance à un seul mot de cet article :
Méthode 1 — inspection réseau. Ouvrez chrome://extensions, trouvez Gaavala, cliquez sur « service worker » ou sur « inspect views > background page » (inspecter les vues > page d'arrière-plan). Dans les DevTools, allez dans l'onglet Network et filtrez sur WS (WebSocket). Démarrez une réunion. Vous verrez exactement un WebSocket ouvert, vers un hôte soniox.com. Aucun audio ne part vers gaavala.com.
Méthode 2 — inspection du manifeste. Dans chrome://extensions, dépliez « Details » (Détails) sur Gaavala et passez les permissions en revue. Les host_permissions déclarent exactement quelles origines l'extension peut atteindre. Vous y verrez les endpoints Soniox pour le streaming et les endpoints Gaavala pour l'authentification et l'abonnement. Il n'y a aucune permission d'hôte avec joker et aucun accès réseau non déclaré.
Méthode 3 — inspection du code. L'extension est livrée avec un service worker, un document offscreen, un panneau latéral et des content scripts. Chrome expose tout cela à l'inspection via les outils de développement. Votre équipe sécurité peut s'attacher à la page d'arrière-plan ou au document offscreen à tout moment et lire l'état d'exécution — y compris confirmer que l'objet de flux audio n'est jamais sérialisé dans un fetch ou un XHR vers notre domaine.
Nous publions le manifeste et les permissions d'hôte dans le cadre de la fiche du Chrome Web Store, et nous accueillons volontiers les revues de sécurité par des tiers.
Correspondance avec les référentiels de conformité
GDPR et minimisation des données
L'article 5(1)(c) du GDPR établit le principe de minimisation des données : les données personnelles doivent être « adéquates, pertinentes et limitées à ce qui est nécessaire ». La donnée vocale est une donnée personnelle au sens du GDPR, et une donnée biométrique si elle est utilisée à des fins d'identification.
L'architecture de Gaavala s'aligne directement sur ce principe. En maintenant l'audio entièrement hors de nos systèmes, nous réduisons les données personnelles que nous traitons au strict minimum nécessaire pour exploiter une activité par abonnement — e-mail, nom, état de facturation. Pour les clients qui mènent des DPIA, notre backend est de fait transparent sur le traitement de l'audio : il n'y a rien à évaluer parce que rien ne nous parvient.
Soniox est un sous-traitant distinct dans votre chaîne de conformité. Vous pouvez examiner sa posture de confidentialité de façon indépendante, et Soniox publie des conditions de traitement des données qui s'appliquent à la connexion directe que votre navigateur établit avec lui.
HIPAA et audio contenant des PHI
Sous HIPAA, tout fournisseur qui traite, stocke ou transmet des PHI (informations de santé protégées) doit signer un Business Associate Agreement. Les consultations médicales contiennent fréquemment des PHI — noms de patients, diagnostics, plans de traitement.
Parce que le backend de Gaavala ne reçoit jamais l'audio des réunions, le pipeline audio se situe en dehors du périmètre du BAA de Gaavala. La relation que vous évaluez pour le traitement de l'audio est celle qui vous lie directement à Soniox — Gaavala n'est pas un business associate pour ces données, parce que ces données ne nous touchent pas. Si vous générez des résumés AI, ceux-ci sont produits sur l'appareil par l'AI intégrée de Chrome — le texte de la transcription reste sur votre machine, si bien que la fonctionnalité de résumé n'introduit pas non plus Gaavala ni un fournisseur supplémentaire dans la chaîne de traitement des PHI.
Risque fournisseur SOC 2
Les audits SOC 2 exigent des organisations qu'elles documentent et évaluent tous les fournisseurs tiers de leur chaîne de traitement des données. Chaque fournisseur ajoute de la complexité à votre System Description et élargit le périmètre de votre évaluation des risques.
Dans l'architecture de Gaavala, Soniox est un sous-traitant avec lequel vous interagissez directement, et non par l'intermédiaire de Gaavala. Votre registre des risques fournisseurs doit évaluer Soniox selon ses propres conditions, ce que beaucoup d'équipes sécurité trouvent plus simple que d'évaluer une relation de sous-traitance en cascade. Le périmètre de Gaavala dans votre registre des risques est plus étroit : nous gérons l'identité et la facturation — pas l'audio brut, et pas le texte des transcriptions ni des résumés, qui ne quitte jamais la machine de l'utilisateur.
Pourquoi le format extension Chrome compte
Une grande partie des garanties de confidentialité ci-dessus dépend du fait que Gaavala s'exécute comme extension Chrome avec un schéma réseau direct vers le fournisseur. Nous avons envisagé, puis rejeté, plusieurs alternatives :
- Un relais audio côté serveur : simple à implémenter, mais cela nous forcerait à manipuler l'audio de chaque client sur notre propre infrastructure. C'est exactement ce que nous voulions éviter.
- Une application web avec reconnaissance vocale intégrée : capturer l'audio d'un onglet depuis une page web exige
getDisplayMedia, qui affiche à l'utilisateur un sélecteur au niveau du système d'exploitation à chaque session et lie l'extension à l'onglet qu'il sélectionne. Pire, il n'existe aucun moyen fiable pour une page web de maintenir un flux audio en arrière-plan pendant que l'utilisateur interagit avec d'autres onglets. - Une application native de bureau : cela nous donnerait plus de contrôle, mais ajouterait des frictions d'installation, des coûts de signature et une charge de développement propre à chaque système d'exploitation. Et cela ne supprimerait toujours pas notre rôle de responsable du traitement de l'audio, à moins d'y prendre garde — ce qui reviendrait à réinventer exactement les mêmes problèmes.
Le format extension Chrome a été le seul à rendre possible l'architecture de confidentialité que nous voulions. tabCapture, les documents offscreen et le modèle de service worker de Manifest V3 permettent ensemble à l'extension de traiter l'audio entièrement sur la machine de l'utilisateur, d'ouvrir des connexions directes vers des services externes et de maintenir l'état d'arrière-plan nécessaire aux longues réunions — sans rien faire transiter par nous.
Les points que nous devons encore bien tenir
L'architecture de confidentialité ne s'arrête pas à « nous ne touchons pas l'audio ». Il existe des préoccupations adjacentes que nous prenons également au sérieux :
- La génération des clés temporaires : les clés Soniox à courte durée de vie que nous générons pourraient être détournées si notre backend en générait pour un attaquant. Nous authentifions chaque requête avec votre JWT, nous limitons le débit d'émission des clés et nous journalisons les anomalies.
- Les mises à jour de l'extension : une nouvelle version de l'extension pourrait en théorie modifier le schéma réseau. Nous versionnons le manifeste, nous publions des changelogs, et le Chrome Web Store expose toute nouvelle permission avant qu'une mise à jour ne s'installe.
- Le texte des résumés : les résumés sont générés entièrement sur l'appareil par l'AI intégrée de Chrome (Gemini Nano), si bien que la transcription n'atteint jamais notre backend — ce risque n'existe pas dans l'architecture actuelle. Si même un traitement AI local dépasse ce qu'une réunion donnée peut tolérer, la fonctionnalité de résumé peut simplement rester inutilisée ; rien d'autre n'en dépend.
- L'échantillon de référence du clone vocal (Pro) : si vous créez un clone personnel de votre voix, votre échantillon d'environ 20 secondes est stocké chiffré (AES-256-GCM) sur les serveurs de Gaavala, utilisé uniquement pour construire votre voix, et supprimé sur demande — voir la Politique de confidentialité.
- Les demandes judiciaires : nous nous engageons publiquement à répondre aux demandes judiciaires uniquement pour les données que nous détenons réellement. Pour l'audio, la réponse sera toujours « nous ne l'avons pas ».
Comparaison entre les outils de traduction de réunions
Comment le modèle de confidentialité de Gaavala se compare-t-il à celui des autres outils courants de traduction de réunions ?
| Fonctionnalité | Gaavala | Otter.ai | Zoom AI Companion | Teams Copilot | Interprefy |
|---|---|---|---|---|---|
| L'audio atteint le backend de l'éditeur | Non (direct vers Soniox) | Oui (serveurs Otter) | Oui (serveurs Zoom) | Oui (serveurs M365) | Oui (serveurs de la plateforme) |
| Audio conservé après la réunion | Non | Oui (par défaut) | Optionnel | Optionnel | Variable |
| Utilisé pour l'entraînement des modèles | Non | Désactivable | Désactivable | Contrôles enterprise | Inconnu |
| Auditer le réseau vous-même | Oui (DevTools) | Non | Non | Non | Non |
| Fonctionne comme extension (auditable) | Oui | Non | Non | Non | Non |
| Fonctionne sur Teams/Zoom/Meet/Webex | Oui | Partiel | Non | Non | Variable |
Le facteur différenciant qui compte : sur toutes les autres lignes de ce tableau, vous faites confiance aux affirmations de l'éditeur sur la façon dont l'audio est traité sur ses serveurs. Avec Gaavala, il n'y a aucun serveur à qui faire confiance pour l'audio, parce qu'il n'y a pas d'audio sur nos serveurs. L'affirmation est vérifiable avec les outils de développement standard de Chrome.
La confidentialité est le comportement par défaut, pas une option payante
L'essai gratuit de Gaavala vous donne la même architecture directe vers Soniox, la même diarisation des intervenants, la même couverture de 60 langues. Pro débloque 120 minutes par jour, le Speak Mode et le clonage vocal — pas la confidentialité. Nous ne croyons pas que les utilisateurs soucieux de leur vie privée devraient payer davantage pour garder leurs données en sécurité.
Si votre organisation a historiquement rejeté les outils de traduction de réunions parce que la conformité refusait l'envoi d'audio vers le cloud d'un éditeur, Gaavala a été construit pour cette conversation-là. Le pipeline est conçu pour que vos équipes juridiques, sécurité et conformité aient moins de choses à examiner — pas plus.
Essai gratuit unique : 5 minutes de transcription, jamais réinitialisé. Sans carte bancaire. Sans inscription sur le site web.