Covid-19 : comment Google et Apple veulent généraliser le traçage des contacts par Bluetooth
Maillage Bluetooth contre géolocalisation
Le 15 avril 2020 à 14h18
13 min
Internet
Internet
Apple et Google proposeront dans un mois de nouvelles API autorisant les gouvernements à s'appuyer sur un maillage de données croisées pour leurs solutions de « Contact Tracing ». Les deux entreprises promeuvent la transparence et la protection de la vie privée offertes par cette solution. Mais des zones d'ombre demeurent.
Comme en témoignent les débats actuels en France, une partie de la lutte contre le SARS-CoV-2 passera par le partage des informations sur les contacts croisés. Objectif : avertir une personne qu’elle a potentiellement été en contact avec un malade du Covid-19, alors que la phase de confinement prend fin, de manière plus ou moins progressive selon les pays.
Plusieurs initiatives sont allées dans ce sens ces dernières semaines, parfois en open source. L'objectif est de réutiliser au maximum le travail effectué ici ou là pour ne pas repartir à chaque fois de zéro, et accélérer le mouvement. Ce, en préservant la vie privée, un point essentiel pour ces dispositifs à vocation purement sanitaire. C'est ainsi qu'est né le projet de protocole Pan-European Privacy-Preserving Proximity Tracing (PEPP-PT) porté par Inria en France.
Mais comment ces solutions vont-elles s'interfacer avec nos téléphones. Disposeront-elles des accès suffisants pour fonctionner au mieux ? Pour s'en assurer, Apple et Google ont annoncé un partenariat posant les bases communes d’une infrastructure visant les mêmes objectifs, dont les premiers brouillons de spécifications sont déjà disponibles.
Elles travaillent en fait sur deux approches différentes, l’une pour très bientôt, l’autre à plus long terme. Dans un premier temps, il s’agira de publier des API que les applications tierces pourront utiliser pour communiquer. Par la suite, une plateforme de traçage basé sur le Bluetooth sera mise en place au sein même d’Android et iOS, ce qui nécessitera donc des travaux plus lourds et des mises à jour de ces systèmes, surtout chez Apple.
Dans les deux cas, les entreprises ont le même but : proposer une alternative aux données de géolocalisation prélevées chez les opérateurs de téléphonie. Une approche pleine de promesses, notamment pour tout qui touche à la vie privée. En tout cas sur le papier. Car dans la pratique, les doutes sont encore nombreux sur son intérêt.
Contact tracing can help slow the spread of COVID-19 and can be done without compromising user privacy. We’re working with @sundarpichai & @Google to help health officials harness Bluetooth technology in a way that also respects transparency & consent. https://t.co/94XlbmaGZV
— Tim Cook (@tim_cook) April 10, 2020
Le principe général
Vers la mi-mai, les utilisateurs auront le choix d’activer volontairement, via une application tierce, une fonction de traçage des contacts. Par « contact », on entend les personnes croisées. Le fonctionnement en est simple.
Ces applications garderont à jour une liste des contacts avec qui vous vous êtes retrouvé à proximité, la distance étant mesurée via le Bluetooth LE (Low Energy). Si une personne a été testée positive au Covid-19, sa liste de contacts croisés permettra d’envoyer un signal à un serveur qui le redistribuera aux personnes concernées afin qu’elles puissent être testées, recevoir des conseils, se mette en relation avec leur médecin, etc.
Les applications téléchargeront à intervalles réguliers des mises à jour contenant les identifiants de proximité anonymes (nous y reviendrons) des personnes déclarées positives. Il ne s’agit donc pas d’un système d’alerte avec une alarme retentissant si vous vous trouvez à proximité d’un malade. On ne connait pas encore la fréquence de ces mises à jour.
Les deux entreprises comptent en outre remonter aux institutions de santé et gouvernements des statistiques pour alimenter les nombreuses études dans ce domaine.
En France, on ne sait pas encore si l’application StopCovid sera mise en place et si elle tirera parti de ces nouvelles capacités, sachant que la solution est actuellement en phase de développement. Elle sera open source, mais les API sur lesquelles elle reposera ne le seront pas davantage que les nouvelles en préparation.
Vie privée : uniquement des informations techniques
C’est probablement la partie la plus claire du communiqué conjoint entre Apple et Google : les garde-fous. Les initiatives actuelles, basées sur la géolocalisation des opérateurs de téléphonie, font froncer les sourcils de nombreuses personnes. La solution basée sur le Bluetooth n’aurait, selon ses promoteurs, pas cet écueil.
Cinq points sont placardés :
- Le consentement de l’utilisateur sera explicite
- Pas de collecte d’informations personnellement identifiables ni de données géographiques
- La liste des identifiants de proximité croisés est stockée localement et ne quitte jamais le téléphone
- Les personnes testées positives au Covid-19 ne sont jamais connues par les autres utilisateurs, Apple ou Google
- Les statistiques ne seront utilisées que par les instances sanitaires gouvernementales dans le cadre de la pandémie
En fait, plutôt que de s’appuyer sur un positionnement absolu et nominatif, les deux entreprises travaillent sur un journal de distances mesurées en Bluetooth. Cette infrastructure n’est en théorie pas reliée aux données personnelles, ni mêmes aux identifiants matériels. En outre, les données échangées par ce maillage sont chiffrées.
Aucun nom ne sera a priori connu de qui que ce soit. Ce qui inclut d’ailleurs les alertes : si vous recevez un message indiquant que vous avez été en contact une personne malade, son nom ne s’affichera pas. Cette information ne circule pas dans les données échangées.
Première phase : les interfaces de programmation
Puisque les spécifications sont déjà à l’état de brouillon, les instances sanitaires sont invitées à les examiner. Vers la mi-mai, des mises à jour pour Android et iOS seront proposées avec, à leur bord, de nouvelles API leur étant dédiées.
Seules ces structures auront droit de s’en servir. Les interfaces ne seront pas ouvertes aux éditeurs tiers. Si le contrôle est strictement appliqué dans les boutiques de téléchargement, il n’y a donc pas à craindre une mauvaise utilisation. Est-ce qu'Apple et Google en profiteront pour tester de nouvelles possibilités qui pourraient ensuite être proposées plus largement ? Impossible à dire pour le moment. Mais on les imagine mal ne pas regarder cette expérience de près.
Quoi qu'il en soit, les applications concernées proposeront elles-mêmes d’activer le traçage de proximité, mais on ignore la manière dont la question sera répercutée sur l’interface. On imagine qu’une demande de confirmation s’affichera à l’écran, basée sur le modèle des autorisations en cours dans chaque plateforme mobile.
Ici, la terminologie sera importante pour s'assurer que l'utilisateur donne bien son consentement sans y être incité ou forcé d'une manière ou d'une autre. C'est d'ailleurs l'un des pré-requis pour un tel dispositif en France, rappelle la CNIL.
- Privacy-safe contact tracing using Bluetooth Low Energy
- Contact Tracing Bluetooth Specification
- Contact Tracing Cryptography Specification
- Contact Tracing - Framework API
Seconde phase : l’intégration complète dans le système
D’ici quelques mois, Android et iOS intègreront de manière plus approfondie la technologie. Devra-t-on pour cela attendre les prochaines versions majeures à la rentrée de septembre ? Possible, même si cela paraît assez tardif.
La principale différence est qu’il n’y aura normalement plus besoin d’application spécifique pour exploiter le traçage Bluetooth. On n’en sait encore guère plus sur ce point, mais la possibilité est prévue que les gouvernements puissent utiliser leurs propres serveurs pour gérer les données sur leur territoire.
Le déroulement d'un échange entre smartphones
Comment se passe concrètement les échanges de données entre personnes ? Google illustre un cas classique avec ces bons vieux « Alice et Bob », deux personnes se croisant pour la première fois et discutant pendant 10 minutes.
Pendant qu’elles parlent, et si elles se trouvent à moins d’une certaine distance mesurée en Bluetooth et dont la valeur reste à déterminer, leurs téléphones s’échangent leurs identifiants de proximité anonymes. Ces identifiants échangés, chacun garde la présence de l’autre dans sa liste de rencontres.
Quelques jours après, Bob est diagnostiqué positif à Covid-19. Une fois son statut déclaré dans l’application officielle de sa région et son consentement donné, le smartphone envoie un historique de 14 jours de toutes les clés échangées.
Pendant ce temps, Alice continue sa vie, son smartphone téléchargeant périodiquement une liste de toutes les clés de personnes testées positives dans sa région (très certainement son pays). Elle finit donc par recevoir celle contenant le changement de statut de Bob et en est avertie par une alerte.
Comme dit précédemment, elle ne saura pas qui est la personne contaminée croisée ni quand s’est déroulée cette rencontre. Il lui sera seulement précisé qu'elle a pu être exposée au virus et, selon l’application, invitée à prendre contact avec son médecin, une instance spécifique, etc.
Sur un aspect plus technique, précisons qu’au moment de l’activation du traçage, une clé unique de 32 octets (Tracing Key) est générée et stockée en local sur le smartphone, mais pas utilisée directement. Elle sert une fois par jour à générer (par dérivation) la Daily Tracing Key qui, elle, sera exploitée.
Enfin, les identifiants de proximité (Rolling Proximity Identifier, 16 octets également) sont les mêmes que ceux utilisés pour recevoir les publicités émises par les balises Bluetooth dans certains magasins. Ils sont dérivés de l’adresse MAC exposée et change aléatoirement toutes les 15 minutes pour éviter les recoupements. Ces identifiants sont partagés lors d’un échange de proximité en Bluetooth.
« Si un utilisateur est testé positif, les Daily Tracing Keys pour les jours où il aurait pu être affecté sont extraites sur l'appareil à partir de la Tracing Key ». Cet ensemble, baptisé « Diagnosis Keys », est alors envoyé sur un serveur de diagnostic qui les redistribue ensuite à tous les utilisateurs du service. Dans le cas contraire, « les Daily Tracing Keys ne quittent jamais l'appareil ». Ensuite, « chacun des clients [smartphones, ndlr] est en mesure de déduire le Rolling Proximity Identifier partagé via Bluetooth ». Il peut donc vérifier s'il a été à proximité d’autres utilisateurs positifs à Covid-19.
Des vérifications supplémentaires peuvent être effectuées sur la temporalité de la rencontre.
Des zones d’ombre à éclaircir en quatre semaines
Le but affiché par cette mise en relation anonyme des contacts est d’encourager les utilisateurs à jouer le jeu sans sacrifier leur vie privée. Tim Cook et Sundar Pichai évoquent tous deux des « contrôles et protections forts » dans ce domaine, ainsi qu’une exploitation du Bluetooth qui « respecte aussi la transparence et le consentement ».
Il reste cependant plusieurs points à détailler, notamment le nombre d’appareils qui pourront profiter de cette technique. Il est possible, côté Apple, que les terminaux sous iOS 12 reçoivent une mise à jour pour augmenter les chances qu’un maximum d’utilisateurs puissent utiliser l’application de leur gouvernement.
Pour Android, la situation est plus complexe. Puisqu’il s’agit de nouvelles API, cela signifie obligatoirement le déploiement d’un nouveau code. Au vu de la fragmentation de la base actuelle, on ne sait pas encore comment Google compte gérer la mise à jour d’un aussi grand nombre d’appareils. À moins que cette mise à jour transite par les Play Services, moins dépendants que certains composants système et du bon vouloir des fabricants.
Il ne s’agira pas non plus de la seule méthode exploitable. Si un gouvernement décide de continuer à se servir des données géolocalisées prélevées chez les opérateurs, il reste souverain en la matière. Il pourra d’ailleurs demander à Apple et Google de désactiver leur fonction sur le territoire. Le cas est prévu.
Autre point de vigilance : la manière dont un contact pourra être déclaré positif. Cela fait débat, car il faudrait que l’intervention d'un médecin soit obligatoire. En outre, le système est pensé pour que l’utilisateur ne puisse pas changer de lui-même son statut, pour éviter les « trolls » se plongeant dans des groupes de personnes avant de se déclarer positifs.
En France, on sait déjà que si l'application StopCovid est mise en place, elle reposera sur un tiers de confiance, une autorité de Santé, afin de limiter la possibilité de tels incidents.
Enfin, certains points techniques ont fait l’objet de doutes, notamment de la part de Moxie Marlinspike, créateur de l’application Signal. Dans une série de tweets, il analyse la manière dont le Bluetooth LE est exploité.
Le protocole n’est pas prévu pour une très grande sécurité, et si Marlinspike considère que les informations peuvent rester privées, le contexte change quand un utilisateur est confirmé positif et que son statut est mis à jour. Dans la liste des personnes croisées, les données deviennent alors « liables ».
Se pose également la question de la quantité de données échangées. Les clés utilisées ont une taille de 16 octets, une pour chaque jour. « Si un nombre modéré d’utilisateurs de smartphones sont infectés pendant une semaine donnée, ce seront des centaines de mégaoctets à télécharger pour tous les téléphones. Ce qui semble intenable. Donc pour être utilisables, les clés publiées auraient a priori besoin d’être envoyées de manière plus ciblée, ce qui signifie probablement… des données de géolocalisation », ajoute Moxie Marlinspike.
Il reste quatre semaines à Apple et Google pour apporter des réponses à toutes ces questions. Devant l'union des deux géants – regroupant à eux seuls la quasi-totalité des smartphones du marché – on attend également de voir comment vont réagir les gouvernements. Il est probable que face à une telle plateforme, beaucoup soient tentés.
Un travail mis en place rapidement et prometteur, mais qui ne doit pas faire oublier un préalable : il faudra tout d'abord éprouver l'intérêt du contact tracing dans la pratique avant de le généraliser.
Covid-19 : comment Google et Apple veulent généraliser le traçage des contacts par Bluetooth
-
Le principe général
-
Vie privée : uniquement des informations techniques
-
Première phase : les interfaces de programmation
-
Seconde phase : l’intégration complète dans le système
-
Le déroulement d'un échange entre smartphones
-
Des zones d’ombre à éclaircir en quatre semaines
Commentaires (28)
Vous devez être abonné pour pouvoir commenter.
Déjà abonné ? Se connecter
Abonnez-vousLe 15/04/2020 à 14h35
> Si un nombre modéré d’utilisateurs de smartphones sont infectés pendant une semaine donnée, ce seront des centaines de mégaoctets à télécharger pour tous les téléphones.
16o 5 jours 500.000 personnes = 40Mo
500.000, c’est la capacité de test hebdomadaire de l’Allemagne.
40Mo/semaine ce n’est pas “des centaines”.
> Donc pour être utilisables, les clés publiées auraient a priori besoin d’être envoyées de manière plus ciblée, ce qui signifie probablement… des données de géolocalisation.
Dans le protocole Apple/Google, la notion d’autorité nationale est importante (un pays europeen ou un état aux USA).
Cela reste une géolocalisation gros grain.
Le 15/04/2020 à 14h48
« Enfin, les identifiants de proximité (Rolling Proximity Identifier, 16 octets également) sont les mêmes que ceux utilisés pour recevoir les publicités émises par les balises Bluetooth dans certains magasins. Ils sont dérivés de l’adresse MAC exposée et change aléatoirement toutes les 15 minutes pour éviter les recoupements. Ces identifiants sont partagés lors d’un échange de proximité en Bluetooth. »
Multiplie donc encore par 96 pour avoir tous les identifiants de proximité générés en une journée de 24h. Et par 7 pour les avoir sur un semaine.
Du coup, on est a « une centaine » à partir de 10000 personnes infectées / semaine. Ça va vite.
Le 15/04/2020 à 14h50
Merci pour l’éclaircissement… on entend beaucoup trop de conneries à ce sujet.
Le 15/04/2020 à 14h51
« Comme dit précédemment, elle ne saura pas qui est la personne contaminée croisée ni quand s’est déroulée cette rencontre. »
Cette affirmation est fausse. Le quand sera très simple à obtenir avec une application qui horodate les rencontres (peut-être que l’application officielle n’exposera pas la possibilité, mais il est structurellement impossible de l’empêcher, du moins avec un tel rooté). Affirmer le contraire est un mensonge.
Le 15/04/2020 à 15h14
Personnellement, je verrais bien un relevé de points GPS lancé en même temps que les échanges bluetooth mais conservé au niveau local et non partageable.
Si cette mise en œuvre des API passerait par le déploiment de nouvelle version d”Android sur de vieux smmartphones cela serait génial mais je me fais pas d’illusions: Google va passer par les play service. :-
Le 15/04/2020 à 15h22
Merci pour cet article
Le 15/04/2020 à 16h23
> Le protocole n’est pas prévu pour une très grande sécurité, et si Marlinspike considère que les informations peuvent rester privées, le contexte change quand un utilisateur est confirmé positif et que son statut est mis à jour. Dans la liste des personnes croisées, les données deviennent alors « liables ».
Ca, c’est un gros problème. Ca veut dire que avec un peu de bidouille, n’importe qui pourra dire, basé sur les rolling proximity identifiers “toi tu as/as eu covid19”. Ca pourrait créer de gros problèmes de discrimination. Quand on voit que des chinois peuvent recevoir de l’acide au visage à cause de ce virus…
Le 15/04/2020 à 16h49
Mouais, aujourd’hui on parle du Covid 19 très bien.
Mais demain, qui empêchera un gouvernement, au hasard chinois, de créer une appli dédié à une nouvelle maladie, genre déviance politique ? Puis de planquer des téléphones android à tous les coins de rue. Les identifiants ne quittent jamais le téléphone, mais si les téléphones appartiennent au gouvernement…
mieux vaut ne pas mettre le moindre bout de petit doigt dans ce genre d’engrenage…
Le 15/04/2020 à 18h44
J’ai peut-être raté un passage mais je me risque. On peux être négatif la veille puis devenir positif le lendemain. Ce serait donc du “flicage” obligé permanent (Oui, je sais que “flicage” pour un motif hautement sanitaire va faire hurler ceux qui sont pour ce type de mesure.) Donc un engrenage pour l’éternité vers un système policier qui ne voudra pas se reconnaître comme tel et le tout justifié par une cause qui fait que beaucoup signeront des 2 mains sans réfléchir (comme la pédophilie et le terrorisme). Dans ce cas, plus besoin de critiquer certains régimes (comme la Chine par exemple).
Le 15/04/2020 à 19h40
Le 15/04/2020 à 19h49
Le 15/04/2020 à 21h08
Beaucoup de blabla mais ne s’agit-il pas de permettre à tous les éditeurs d’appli de devenir un petit Facebook, cataloguant de fait et “avec le consentement” les relations physiques de tout un chacun ? Pourquoi google et apple s’en mêlent ?
Le 15/04/2020 à 21h53
https://www.grc.com/securitynow.htm pour une explication technique & détaillée (en anglais)
Le 15/04/2020 à 22h57
Anonyme ? à part dans les grandes villes, où on croise des milliers de personnes, et où de toute façon, on est quasiment sur d’être infectés dans les transports en commun. Dans un coin plus désert, on saura très bien qui a pu nous contaminer.
Le 16/04/2020 à 05h53
Le 16/04/2020 à 06h08
A&A, la genèse
https://framabook.org/docs/Traces/bonus/aalagenese-Crozat-CC-By-Sa.pdf
Le 16/04/2020 à 06h30
“Ces 2 sociétés ne sont pas
contre le tracking à l’unique condition que ça passe par elles, et que
elles seules en contrôle la monétisation et l’opération”
Ok nous avons donc à peu près la même lecture, Dante et Al Capone proposent d’aider la population. L’idéal d’un internet open-source s’éloigne chaque jour.
Pour préciser, j’ai plus confiance en des personnes éluent qu’en des sociétés capitalistes qui offrent des services. L’état policier du turfu ne voyez-vous pas qu’il arrive par Google, et pas par la gendarmerie ?
Le 16/04/2020 à 06h39
On a trouvé l’habitant de la Lozère ! On pensait que c’était une espèce disparue." />
Le 16/04/2020 à 06h43
Je ne veux pas te faire peur mais tu peux toujours élire des personnes, ce n’est pas l’électeur qui contrôle ce que font les personnes élues. Par exemple, en RDA, il y avait des élections et il y avait la Stasi. Une élection sans contre-pouvoirs, c’est comme Google ou Black Rock qui contrôle les données personnelles et les algorithmes d’apprentissages (IA).
Le 16/04/2020 à 07h09
Vous semblez tous doués en physique, mais je me demande comment fait-on pour mesurer une distance en BT.
Vous avez peut-être tous votre téléphone à la main, donc à l’air libre pas le problème. Moi il est au fond d’un sac, derrière l’écran du porte-carte NXI" /> alors quid de la distance.
Chaque interface est un obstacle au micro-ondes. Personne ne connait précisément la puissance d’un signal et le nombre d’interfaces à passer entre deux unités BT. Alors, on mesure au pif-o-mètre ?" /> là il y a de la puissance.
Le 16/04/2020 à 07h38
Le 16/04/2020 à 07h54
En tout cas vu le système de MàJ d’Android, je doute que ca puisse être efficace hors Pixels et Android One…
Le 16/04/2020 à 08h12
Pour moi la première difficulté concerne le signalement que l’on a le covid. Comment le faire de manière “anonyme”. Si c’est mon tel qui envoie mes identifiants, je vais le faire à travers un service web donc avec une IP => donnée perso
Donc le serveur central pourrait avoir la liste des IPs (a minima) covidées
De plus mon opérateur pourrait aussi surveiller les appels vers ce service donc mon opérateur le saura aussi
Un autre problème concernant la reauthentification c’est pour les personnes croisant peu de gens, si tu recois un alerte, tu pourras savoir qui a le covid… Mais c’est à remettre dans le contexte.
SI c’est quelqu’un que tu n’as croisé qu’uneou deux fois et de vue, ca fait belle jambe
Si c’est quelqu’un que tu cotoies de manière régulière (collègue ou autre) et bien on peut partir du principe que ca se saura
Donc la vraie question est à qui veut on cacher que l’on a eu le covid et pourquoi ?
Est ce que le combat n’est pas d’empecher une première appli de tracage qui sera la porte ouverte à d’autres applis dans le futur plutot que de protéger le fait de dire qu’on a eu le covid.
En fait il faudrait faire un DPIA (identification des risques, etc.) en se basant sur ebios, je suis surpris d’ailleurs que la CNIL ne l’est pas proposé…
Le 16/04/2020 à 08h38
Cette histoire me fait penser à une autre dites-moi si je me trompe. Lorsque Google Maps a déployé sa flotte de voitures pour prendre en photos les rues dans Streetview, la société en a profité pour tendre l’oreille et mémoriser tous les réseaux wifi à portée (et ainsi géolocaliser 90% des box internet de France). Tous ça pour “offrir” une géolocalisation sans GPS. Je crois que Google a arrêté d’écouter les adresses mac (mais n’a pas effacé son historique) mais le ver est dans le fruit et ça va vite : google sait où nous géolocaliser avec du wifi et sans gps, bref une absence de consentement flagrante.
Je vois la même chose arriver en Bluetooth, avec de l’astuce ils vont détourner l’esprit de la loi.
Le 16/04/2020 à 11h54
Un autre projet propose un fonctionnement similaire : GitHub
Le 16/04/2020 à 12h51
Le 17/04/2020 à 09h43
Le 17/04/2020 à 17h24
Pour ma part, même si on en est peut-être loin, ce qui m’inquiète le plus c’est que pour l’instant on parle de covid, mais cette brique pourra très bien être utilisée pour tout à fait autre chose. Le but originel est louable, mais l’outil, comme on le voit trop souvent, sera certainement détourné ou réadapté pour servir des intérêts qui eux n’auront rien de louable.