L’application StopCovid et ses enjeux : décryptage

Written on 17 Jun 2020

Le cap du premier million de téléchargements de l’application StopCovid a été franchi en à peine quelques jours, et même s’il faudra quelques millions d’utilisateurs supplémentaires pour remplir la promesse du gouvernement français de contribuer à endiguer la transmission de la Covid-19, son adoption, et l’efficacité qui pourra en résulter, pourra relativiser les nombreux débats suscités par cette application. Débats qui semblent s’être cependant limités à certains cercles, la CNIL n’ayant de son côté relevé aucun pic d’appels sur sa hotline concernant l’application StopCovid ces dernières semaines.

Depuis le 7 avril 2020, date de sa première apparition dans la proposition de loi déposée à l’Assemblée Nationale, jusqu’à son lancement le 2 juin suivant, StopCovid n’a en effet cessé de faire l’objet de débats qui s’articulent finalement autour de deux enjeux principaux, celui de la protection des libertés fondamentales, dont la protection des données à caractère personnel, et celui de la souveraineté numérique de la France pour le développement d’une solution concernant sa Santé Publique.

Derrière chacun de ces enjeux se trouve une réalité technique qu’il convient de tenter de décrypter par l’examen attentif des technologies et protocoles retenus pour le développement et la mise en œuvre de l’application StopCovid.

Un enjeu de protection des données à caractère personnel et des libertés publiques au travers des protocoles techniques retenus

L’application StopCovid, dans la mouvance d’une initiative européenne formée par une organisation à but non lucratif, le PEPP-PT (Privacy-Preserving Proximity Tracing), a été développée en France notamment grâce à la participation de l’Institut National de Recherche en Informatique et en Automatique (« INRIA »). En résumé, et comme détaillé plus bas, cette application fonctionne grâce à la technologie Bluetooth pour permettre spécifiquement le traçage de contact (ou contact tracing), qui exclut toute géolocalisation de l’utilisateur en temps réel et à tous moments. Dès lors qu’un individu a choisi de télécharger et lancer l’application sur son smartphone, le Bluetooth va prendre le relais et activer un protocole de communication permettant de détecter des smartphones également équipés de StopCovid (et ayant activé la fonction Bluetooth) dans un rayon de quelques mètres. L’application permet à chaque utilisateur ayant contracté le virus de le signaler sur l’application qui enverra alors une alerte à tous les smartphones qui ont son crypto-identifiant en mémoire. Pour rappel, le crypto-identifiant est rattaché à la notion de pseudonyme au sens du RGPD, à partir du moment où il est possible d'identifier à quelle personne se rattachent ces données par ingénierie inverse.

Le stockage des informations des smartphones est donc un des points central de l’application StopCovid et des débats techniques qui ont précédés son déploiement. Deux options sont en concurrence afin de faire fonctionner une telle application : l’approche dite « centralisée » qui permettrait de stocker l’historique des contacts anonymisés dans un serveur central. Et l’approche dite « décentralisée », par laquelle les données ne sont enregistrées que dans le smartphone lui-même (Ces deux termes largement repris dans les débats publiques peuvent porter à confusion, en ce que par définition et comme l’explique Bruno Sportisse, Président-Directeur Général de l’INRIA, « tous les systèmes projetés comportent une composante commune (un serveur central) et une composante décentralisée (un ensemble de smartphones qui peuvent communiquer entre eux à travers le Bluetooth) » : tous les systèmes actuellement étudiés sont donc à la fois centralisés et décentralisés).

Ces deux approches n’ont finalement pas d’impact en ce qui concerne la nature des informations, qui sont assimilées à des données à caractère personnel, et elles ont toutes deux été reconnues comme acceptables en matière de protection des données à caractère personnel par le CEPD (Comité Européen de la Protection des Données). Plus particulièrement, la CNIL a confirmé dans sa délibération du 25 mai 2020 concernant l’application StopCovid que les principes de minimisation, de proportionnalité et d’exactitude des données à caractère personnel posés par le RGPD étaient respectés et veillera, par les contrôles qu’elle met en œuvre dès à présent, au maintien de ce respect.

Après de long débats tant privés, entre les membres du PEPP-PT en Union Européenne, que publics entre les acteurs politiques, la France a opté pour faire reposer StopCovid sur une approche centralisée via le protocole de contact tracing « Robust and Privacy-Preserving Proximity Tracing », surnommé « ROBERT » mis au point par l’INRIA dès fin avril.

D’un point de vue technique, le protocole ROBERT permet de regrouper sur un serveur central situé en France, sous le contrôle du Ministère de la Santé, une liste de crypto-identifiants des smartphones s’étant trouvés à proximité des smartphones des personnes déclarées positives à la Covid-19. Ces crypto-identifiants sont assimilés à des pseudonymes au sens de l’article 4 du RGPD et leur collecte est soumis aux obligation du texte européen. Ils sont temporaires et sont générés par StopCovid à l'aide d'une fonction cryptographique sécurisée qui met en jeu une clé secrète associée à votre application et une information temporelle. L’algorithme de chiffrement choisi par l’INRIA a d’ailleurs été sélectionné sur recommandation de l’ANSSI (Agence nationale de la sécurité des systèmes d'information). L’INRIA garantie également qu’aucune donnée de santé ou concernant le diagnostic médical de l’utilisateur qui se signale comme étant porteur du virus n’est communiquée sur le serveur central, ou même sur les smartphones des autres utilisateurs.

Dans le cadre de l’approche centralisée, lorsqu’un utilisateur a été testé positif à la Covid-19, le laboratoire ou le médecin lui fournit un QR Code généré aléatoirement. Ce QR Code est transmis sur l’application par l’utilisateur afin d’éviter toute fausse déclaration. Une fois déclaré positif, l’application ne transmet pas son crypto-identifiant au serveur, mais fait remonter l’historique des crypto-identifiants croisés par le smartphone en question, les qualifiant ainsi de crypto identifiants « à risque ». L’application installée sur un smartphone vérifie de manière régulière si ses propres crypto identifiants sont présents sur le serveur comme étant « à risque », ce qui, le cas échéant, déclenche le processus de notification.

A l’inverse, le protocole « Decentralized Privacy-Preserving Proximity Tracing » dit « DP-3T » dit « décentralisé », ne permet pas de récupérer les identifiants de l’utilisateur qui notifie avoir été testé positif à la Covid-19, ni la liste des smartphones croisés. Chaque opération est réalisée directement sur le smartphone de l’utilisateur, qui génère lui-même son propre crypto identifiant. Contrairement au protocole ROBERT, chaque smartphone va ici télécharger cette liste et la comparer avec la liste des identifiants stockée en interne, l’opération est donc ici réalisée sur chaque terminal, et non plus sur le serveur central.

L’argument avancé par le gouvernement français pour son choix d’une approche centralisée via le protocole ROBERT repose principalement sur un souci de sécurité, notamment contre les risques d’intrusion par des utilisateurs malicieux. De son côté, la CNIL ajoute que le choix du protocole ROBERT est protecteur de la vie privée des personnes concernées, en ce qu’il garantit qu'aucun lien ne sera conservé entre les personnes contaminées et la liste des personnes qu’elles auraient pu exposer.

La communauté cryptographique française de GitHub, sollicitée par l’INRIA, a fait remonter un certain nombre de défauts et de risques de failles du système. Ceux-ci se recoupent avec les nombreuses interrogations techniques et politiques, qui questionnent ce type d’initiative en ce qu’elle pourrait venir restreindre les libertés des français.

A ces critiques, le Président Directeur Général de l’INRIA affirme dans son analyse de risque que le protocole ROBERT « permet que personne, pas même l’État, n’ait accès à la liste des personnes diagnostiquées positives ou à la liste des interactions sociales entre les personnes ». Même si cette affirmation ne va pas plus loin pour fournir les détails d’une telle garantie, il faut y voir, ainsi que dans l’implication de la communauté GitHub, une démarche de transparence plutôt rassurante.

Un enjeu de souveraineté numérique nationale

L’autre débat suscité par le StopCovid tient au choix d’une détection reposant sur la technologie Bluetooth. Or, l’utilisation du Bluetooth de manière continue sur les smartphones passe nécessairement par des négociations avec Apple et Google, les développeurs d’iOS et d’Android, les deux systèmes d’exploitation dominants des smartphones. En effet, les deux systèmes d’exploitations empêchent par défaut une utilisation du Bluetooth en continu (le fonctionnement du Bluetooth pour les applications en arrière-plan finit par se désactiver après écoulement d’un délai, pour des raisons tenant à la sécurité, aux interférences mais également à l’ergonomie du smartphone).

Apple et Google ont développé une solution logicielle (API, pour interface de programmation d’application) pour faire face à ce problème mais celle-ci est compatible uniquement avec les applications fonctionnant via les protocoles décentralisés. La justification qui en est faite est de garantir à l’utilisateur que les gouvernements ne vont pas pouvoir agréger les données collectées par une application installée sur leurs smartphones.

En adoptant une approche inverse, la France y voit ainsi plutôt un enjeu de souveraineté technologique et sanitaire de l’état français. En effet, une solution numérique qui s’affranchît d’Apple et Google fait de l’Etat le seul maître à bord et lui confère une plus grande latitude dans le développement de celle-ci. L’INRIA et le conseil scientifique estiment notamment que StopCovid s’inscrit dans une politique plus globale de gestion de la pandémie en France et que son fonctionnement ne doit pas être conditionné aux choix d’entreprises privées.

Cependant, la position inflexible d’Apple et Google a déjà fait céder d’autres pays : c’est le cas de l’Allemagne, qui après avoir annoncé une application similaire à StopCovid, s’est trouvée contrainte de faire volte-face : la nouvelle application n’utilisera pas le serveur centralisé, mais les données seront au contraire stockées uniquement sur le smartphone de chaque utilisateur via le protocole DP-3T grâce à la solution API proposée par Google et Apple. L’Allemagne se met ainsi dans le sillage de l’Autriche, dont l’application utilisant un protocole décentralisé a été saluée par l’activiste Max Schrems pour sa conformité au droit de l’Union Européenne et son respect de la vie privée et des données à caractère personnel de ses utilisateurs.

Si le revirement de l’Allemagne et le plébiscite de la solution autrichienne ont porté un coup dur aux négociations de la France avec Apple et Google, la position de ces derniers pour refuser d’ouvrir leur API à une approche centralisée ne tient plus vraiment face aux garanties apportées par le protocole ROBERT, évoquées ci-dessus.

Le gouvernement français a ainsi tranché pour un fonctionnement de l’application qui passe par un contournement des principes d’Apple et Google en ce que StopCovid, même en veille, pourrait être activée au contact d’un autre smartphone possédant l’application sans pour autant que le Bluetooth soit activé de manière continue. Cette solution présenterait néanmoins certaines limites, étant donné qu’un téléphone mis en veille n’émet par nature plus de signaux Bluetooth.

Conclusion

La dimension technique des choix qui ont porté le développement et la mise en œuvre de l’application StopCovid permet difficilement d’adopter une position tranchée dans des débats qui, en tout état de cause, peuvent paraitre secondaires face à l’enjeu de santé publique. L’application StopCovid elle-même repose sur la double démarche volontaire des utilisateurs d’une part de télécharger l’application et d’autre part de signaler leur état de santé, ainsi que sur le respect des règles sanitaires de confinement pour ceux qui recevront une alerte (ce que les autorités ne pourront contrôler), le tout sous le contrôle actif de la CNIL. Ces garde-fous paraissent suffisants pour encourager, et espérer, une adoption suffisamment large de StopCovid par les possesseurs de smartphones pour combattre la propagation du virus dans le contexte actuel de déconfinement et la perspective de la fin de l’état d’urgence sanitaire dès le mois de juillet, alors que notre cohabitation avec la Covid-19 est appelée, quant à elle, à durer.