Categorie
Tecnologia

Immuni dalla privacy?

“…qui si parrà la tua nobilitate.”

Dante Alighieri, “Divina Comedia”, Inferno, Canto II

Quando è stata lanciata anche in italia l’idea della app per tracciare i contatti “COVID-19” devo ammettere che il mio sopracciglio si è aggrottato…
Mi sono venute in mente le problematiche relative alle analoghe soluzioni cinesi, con un complesso sistema di QR-codes che autorizzano o meno l’ingresso in un luogo e le specificità tipiche di quella nazione, dove ad esempio l’app notifica gli spostamenti non solo al Governo, ma anche alla Polizia.

L’app rilasciata ad Aprile 2020 dal governo Cinese.

La genesi

In Italia intorno al 16 aprile 2020 inizia a trapelare la notizia che il Governo ha scelto Bending Spoons per la realizzazione dell’app: è una ex-startup, fondata nel 2013, e ormai ha 140 dipendenti, 90 milioni di fatturato, una forte componente italiana e il quartier generale a Milano.
E’ una delle più grandi realtà di sviluppo per ambienti mobili in Europa.
Sembra uno schiaffo alle due grandi multinazionali, Apple e Google.

In realtà l’apporto dei due “Big Tech” sarà indispensabile.
L’app o, meglio, tutte le app di questo tipo che sono in via di realizzazione nel mondo, hanno bisogno di gestire l’hardware (cioè i circuiti, le antenne e le componenti radio, in particolare quella BlueTooth) in una maniera molto diversa da quelle che erano state le necessità nel mondo pre-COVID-19.
Vi ricordate questa scena?

Sean Connery, nei panni di Marko Ramius, nel film “Caccia a Ottobre Rosso”, 1990

L’indimenticato Sean Connery, comandante di un sommergibile russo in procinto di disertare, usa un impulso SONAR per confermare al suo antagonista americano le sue intenzioni. Cioè, sta utilizzando un sistema nato per rilevare “bersagli” come mezzo di comunicazione.
Qui, invece, siamo di fronte ad una necessità opposta, ovvero utilizzare il BlueTooth, uno standard di comunicazione (solitamente usato per collegare cuffiette, casse e altri accessori) per rilevare altri terminali nelle vicinanze.
Purtroppo nessuno aveva ancora pensato a costruire uno smartphone con un RADAR a bordo. Ancora. Non vi prometto nulla per il futuro… 😉

I due colossi di Mountain View e Cupertino (a proposito, lo sapevate che i quartier generali di Google e Apple distano tra loro solo 12 minuti in auto?) sono già sul pezzo, non vi preoccupate.
Il 10 aprile, cioè circa una settimana prima delle notizie su Bending Spoons di cui abbiamo parlato, Apple e Google annunciano un progetto congiunto per rilasciare una serie di API pensate allo scopo.

Ma cosa sono queste API (Application Programming Interface)?
Scegliete un’app qualsiasi sul vostro smartphone.
Essa non gestisce direttamente l’hardware del telefono. Pensate alla complessità se ogni app dovesse gestire l’hardware (schermo, batteria, antenne, pulsanti, ecc.), sempre diverso, di tutte le migliaia di modelli che sono stati messi in commercio.
Tutte le app utilizzano per la gestione dell’hardware delle procedure, che chiameremo interfacce, standard e sempre uguali (prendete quel “sempre” cum grano salis) messe a disposizione da chi produce il telefonino stesso. Le API, appunto.

Come dicevo, queste API sono essenziali per permettere a tutte app di tracciamento dei contatti di utilizzare l’hardware (in particolare il BlueTooth) in una maniera che, in un mondo pre-COVID-19, nessuno aveva immaginato.

E dopo due mesi di lavoro, il 1 giugno, il Ministero della Salute annuncia che Immuni ha emesso il primo vagito ed è disponibile sugli store Apple e Google.
Un attimo: cosa c’entra il Ministero della Salute?
Il Ministero è a tutti gli effetti il proprietario (o, meglio, sviluppatore) “ufficiale” dell’app.
Inoltre, all’inizio di ottobre 2020 Bending Spoons, dopo aver realizzato a titolo gratuito l’app, ha “passato le consegne” a Sogei e PagoPA, i due “bracci” informatici dello Stato Italiano.

A cosa serve?

Come abbiamo detto l’app è dedicata al contact tracing o, meglio, al tracciamento dei contatti.

L’attività di tracciamento dei contatti è di solito fatta dal personale della sanità pubblica e, nel caso di una malattia con una asintomaticità elevata o comunque con un periodo di incubazione, è essenziale.
Se non ci fosse il tracciamento dei contatti, una persona asintomatica o in incubazione riuscirebbe ad infettare molte persone prima di, rispettivamente, guarire o di mostrare i sintomi e quindi essere diagnosticata ed isolata.

Il personale che effettua il tracciamento dei contatti “intervista” ogni persona con una diagnosi accertata di COVID-19 e avverte tutte le persone che sono entrate in contatto con essa.
Queste ultime dovranno quindi isolarsi preventivamente e verificare se sono state infettate.

Scene di “contact tracing” dal film Contagion (2011). Qui si vedono soprattutto ricostruzioni dei contatti effettuate post-mortem dell’infetto.

Quindi con un sistema di tracciamento dei contatti efficiente si isolano tutti i potenziali contagiati prima che possano trasmettere il virus SARS-CoV-2, inconsapevolmente, a qualche altra persona. Più in generale, con un buon tracciamento dei contatti, ogni infetto trasmette il virus a meno persone rispetto ad una situazione in cui il tracciamento dei contatti è fatto male o assente.

Il numero medio di persone a cui ogni infetto trasmette il virus si chiama indice di trasmissione, per gli amici Rt : una sigla che avrete spesso sentito nelle notizie di questi mesi.
Un Rt maggiore di uno (ovvero se ogni persona contagia a sua volta più di una persona) comporta una crescita cosiddetta “esponenziale” del numero di infetti.
E’ molto importante quindi che il tracciamento sia veloce, efficiente e efficace allo scopo di mantenere l’indice Rt più basso possibile.

E’ abbastanza evidente che questa attività ha diversi punti critici:

  • richiede un rilevante impegno di tempo per intervistare l’infetto e successivamente avvertire tutti le persone che sono venute in contatto con lui;
  • richiede che l’infetto conosca e si ricordi l’identità di tutti i contatti di cui al punto precedente, cosa di solito impossibile nel caso di permanenza in locali, mezzi di trasporto pubblico, ecc.;
  • la persona infetta potrebbe essere restìa a comunicare le persone con cui è venuta a contatto per motivi di riservatezza.

Ed è qui che entra in gioco l’app, risolvendo tutte e tre le criticità che abbiamo appena evidenziato:

  • l’attività di notifica ai contatti è automatica e immediata, solo la certificazione dello stato di positività viene mediata da personale sanitario
  • non richiede lo sforzo di memoria da parte dell’infetto, i suoi contatti sono memorizzati in modo anonimo dallo smartphone
  • la privacy è salvaguardata in modo assoluto (… eh, sì, ne parleremo dopo)

Come funziona?

Ma come funziona in pratica l’app Immuni?
Se siete interessati, e se state leggendo immagino che lo siate, si trovano filmati e guide fatte benissimo, con grandi risorse di grafica.
Primo fra tutti il sito ufficiale Immuni, che vi consiglio di visitare soprattutto per scaricare l’app, se non l’avete ancora fatto.

Io tenterò un approccio diverso.
Mi sono fatto questa domanda: se questa pandemia fosse accaduta 20 o 30 anni fa, quando gli smartphone non esistevano, come si sarebbe potuto realizzare un sistema analogo ma “analogico”, perdonatemi l’assonanza delle parole?

Come sappiamo il primo passo oggi è quello di installare l’app.
In un mondo pre-digitale ci saremmo rivolti invece a un negozio, probabilmente un tabaccaio e avremmo acquistato (o, più probabilmente, ci sarebbe stato dato gratuitamente) un Kit Immuni, un cofanetto sigillato e assolutamente anonimo.

Complimenti, ecco il vostro nuovo Kit Immuni!

Cosa avremmo trovato al suo interno?

  • un manuale d’uso
  • un biglietto filigranato con un numero casuale X e alcuni codici di controllo, molto simile a quello della lotteria di fine anno
  • una grande quantità (alcune migliaia) di biglietti da visita: biglietti fatti in un materiale magico “antivirale”, consentitemi questo volo di fantasia (non sarà l’unico, vedrete), e completamente bianchi, se non in un piccolo riquadro dove ci sarà lo stesso numero X di cui parlavamo sopra, coperto da una patina tipo “gratta-e-vinci”.

Vi risparmierò ora la fatica di leggere il manuale e vi guiderò passo passo nell’utilizzo quotidiano, non preoccupatevi! 😉

Innanzitutto, prendete il vostro biglietto filigranato e mettetelo in un posto sicuro. Questo sarà il vostro numero, vi identificherà, ma notate bene: nessuno sa che vi è stato assegnato questo specifico numero, infatti tutti i cofanetti sono anonimi e non è possibile rintracciare il numero inserito all’interno e soprattutto da chi è stato acquistato.

Ok, quindi, mettetevi adesso una manciata di quei strani biglietti da visita in tasca e uscite.
Da qui in poi dovrete tenere d’occhio tutte le persone che vi girano attorno, amici, parenti e sconosciuti, sul posto di lavoro e sui mezzi pubblici.
Ho detto tenere d’occhio, ma in realtà più che l’occhio vi saranno utili un cronometro e un metro… già, perché se una persona si avvicinerà a voi per più di 15 minuti a meno di due metri dovrete dargli un vostro “biglietto da visita” e lui dovrà dare il suo a voi: supponiamo infatti, altro volo di fantasia, di essere in un mondo ideale dove tutti hanno a cuore la propria salute (e quella degli altri) e quindi tutti si sono dotati del loro Kit Immuni.

Ovviamente questa cosa dovrà essere fatta nel modo più anonimo possibile, e infatti c’è chi dice che nel secondo lotto di Kit Immuni che verrà messo in commercio ci sarà anche un passamontagna da indossare durante lo scambio… 😉 C’è da dire che indossare la mascherina aiuta a mantenere l’anonimato perché, ovviamente, utilizzare il Kit Immuni non esonera da tutte le normali precauzioni e regole.

Alla fine della giornata, quando tornerete a casa, vi troverete in tasca un mazzetto di biglietti da visita, non riconducibili a nessuna persona.
Prendere tutti questi biglietti (ipotizziamo dieci) e metteteli, uno sopra l’altro, su una mensola.
Se usate il vostro Kit Immuni già da un po’ avrete diversi mazzetti, uno accanto all’altro, uno per giorno.
Se ne avete più di 14, buttate via i più vecchi: se siete precisi e metodici, questo vuol dire buttare via, ogni giorno, il 15mo mazzetto.

A questo punto, innanzitutto incominciate a grattare e scoprire i codici dei dieci biglietti di oggi.
Immaginiamo che abbiate una vita piuttosto regolare e che ogni giorno raccogliate 10 nuovi biglietti dalle persone che incontrate. Sempre per semplicità, immaginiamo che incontriate persone sempre diverse.

Quindi adesso avrete sulla mensola 140 biglietti con, in totale, 140 codici diversi.

Non vi resta che sintonizzarvi sulla TV e assistere al nuovo show “Covid-Lotto”, dove tutte le sere vengono letti i codici dei positivi.
Chi ha riceve la diagnosi di positività al virus, infatti, comunica il suo numero identificativo al “call-center” Immuni, il quale provvede a verificarlo con i codici di controllo e a metterlo nella lista di questo nuovo “lotto”.

Con i numeri di novembre 2020, si tratta di ascoltare qualche decina di migliaia di numeri estratti con 140 biglietti da controllare. Rimpiangete già la tombola natalizia, eh? 😉

Montiamo a bordo della nostra DeLorean e torniamo nell’anno di grazia 2020, adesso. Molti di voi avranno già capito le analogie di questo “esercizio di stile” con l’app Immuni.
Il biglietto della “lotteria” è il codice pseudo-casuale che viene generato quando viene installata l’app.
I biglietti da visita sono i “messaggi” che i telefoni si scambiano in automatico.

E, fortunatamente, la tecnologia ci permette oggi di fare cose più sofisticare come, ad esempio, cambiare il codice ogni 10 minuti per incrementare la tutela della privacy oppure consentire ai telefonini di scambiarsi informazioni sulla data e ora del contatto e la distanza, per fare delle rilevazioni più precise.

Ma la privacy è a rischio?

La principale questione che riguarda Immuni, e tutte le altre app per il contact tracing (già perché ogni Paese ne ha una diversa, anche se recentemente sono stati fatti dei passi in avanti in tal senso), è la riservatezza delle informazioni che vengono raccolte.
Informazioni che, ovviamente, riguardando la salute, sono tra quelle considerate “sensibili”.

Cosa condividiamo?

Per capire le implicazioni sulla privacy di qualsiasi cosa, sia essa un’app, una procedura o un nostro collaboratore, dobbiamo capire quale sono le informazioni a cui ha accesso.

Abbiamo già detto che gli identificativi che le app Immuni si scambiano sono dei codici casuali che non permettono di risalire al proprietario dello smartphone.

Inoltre quelli di voi che hanno già installato Immuni sapranno che, contrariamente a quasi tutte le altre app, essa non richiede la creazione di un account: questo vuol dire che la vostra app Immuni non è associata ad alcun dato che vi possa identificare, come ad esempio l’indirizzo di posta elettronica o il numero di cellulare.
Questo è possibile perché Immuni conserva tutte le sue informazioni sul telefonino dove è installata e non in qualche server remoto.

Sono ben poche le app che hanno lo stesso approccio: molte infatti, anzi, quasi tutte, richiedono di effettuare una procedura chiamata “registrazione” o, per lo meno, di verificare il vostro numero di telefono.
Immuni chiede invece solo la provincia di residenza, per poter raccogliere dei dati epidemiologici significativi.

Ma di tutte le informazioni che sono disponibili su uno smartphone, quali sono quelle accessibili all’app Immuni?
Tutte le app, non solo Immuni, “chiedono” di poter utilizzare le informazioni (le foto, la rubrica, …) e le risorse hardware (il microfono, la fotocamera, …) a cui vogliono accedere.
Il sistema operativo dello smartphone (ovvero quello che noi chiamiamo Android o iOS) si occupa di controllare che le app si attengano a quello che hanno richiesto; in alcuni casi, subito dopo la prima installazione o durante il primo utilizzo, chiedono anche conferma all’utente.

Vediamo ora quali sono le “autorizzazioni” o “permessi” richiesti dall’app Immuni; qui di seguito analizzerò per brevità solo la versione Android, ovviamente le stesse cose valgono per l’app iOS.

I permessi richiesti dall’app Immuni android alla versione 2.1.1 del 3 novembre 2020

I permessi si possono trovare nella sezione Impostazioni del vostro smartphone; qui, per semplicità, mostro la pagina relativa all’app Immuni sul Play Store di Google (il link è nella didascalia).

Vedete che l’app chiede cinque permessi, traduciamo dall’inglese:

  • avviarsi automaticamente quando si accende lo smartphone: mi sembra ragionevole, è necessario che sia sempre attiva per svolgere il suo lavoro correttamente… e se volessimo spegnerla possiamo sempre farlo esplicitamente (ma perché?)
  • accesso pieno alla rete: Immuni ha bisogno di scaricare giornalmente i codici degli “infetti” per confrontarli con quelli raccolti durante la sua attività di monitoraggio, quindi è necessario che abbia accesso a internet;
  • impedire che il dispositivo vada in “risparmio energetico”: alcuni telefoni utilizzano la batteria in modo molto parsimonioso e quando l’utente non li sta utilizzando spengono quasi tutte le loro funzionalità… questo ha comportato, nelle prime versioni di Immuni, anche alcuni malfunzionamenti e blocchi dell’applicazione. Con le nuove versioni e grazie ad aggiornamenti rilasciati dalle aziende che producono smartphone, la funzionalità di Immuni è salvaguardata senza compromettere la durata della batteria;
  • vedere le connessioni di rete: questo permesso fa il paio con l’accesso pieno alla rete, per avere visibilità delle connessioni disponibili;
  • comunicare con altri dispositivi BlueTooth: questo ovviamente è essenziale per consentire ad Immuni di scambiarsi i codici con gli altri telefonini.

Troppi permessi? Pochi? Difficile avere un’idea precisa così in assoluto.
Forse dovremmo confrontarlo con altre app molto più diffuse e che ci siamo abituati ad avere da lungo tempo tra le nostre icone.

Prendiamo ad esempio WhatsApp.
Ormai un prodotto della famiglia Zuckerberg (leggi Facebook), la prima versione risale al febbraio del 2009. Ha ben 2 miliardi di utenti attivi (dati Statista 2020).
WhatsApp ha quarantadue permessi, inclusi tutti quelli di Immuni.

Rimaniamo appunto in famiglia… Facebook.
Richiede quarantacinque permessi per funzionare.

Sia WhatsApp che Facebook hanno ad esempio pieno accesso alla localizzazione dello smartphone via satellite, leggere e modificare i vostri contatti della rubrica, accedere alla fotocamera e al microfono, e tanto altro. E questa differenza non è sicuramente la più rilevante.

Come lo condividiamo?

Abbiamo visto le informazioni e le risorse hardware a cui ha accesso l’app Immuni sono quantitativamente molto ridotte rispetto a quelle a cui hanno accesso altre app molto più “tollerate” dall’opinione pubblica.

Ma cosa fanno le app con le informazioni a cui hanno accesso?
Possiamo rispondere a questa domanda da due punti di vista, uno legale e uno tecnologico.

Iniziamo dal primo punto di vista, meno vicino alle mie corde, lo ammetto.
L’app Immuni evidenzia in modo chiaro alcuni punti riguardanti la privacy:

-) I dati salvati sul tuo smartphone e le connessioni tra
   l’app e il server sono cifrati.
-) Tutti i dati salvati sul dispositivo o sul server saranno
   cancellati quando non più necessari e in ogni caso prima
   del 31 dicembre 2020.
-) I tuoi dati sono raccolti dal Ministero della Salute e
   verranno usati solo per contenere l’epidemia del Covid-19
   o ai fini della ricerca scientifica.
-) I dati sono salvati su server in Italia e gestiti da
   soggetti pubblici.

Sebbene il primo punto sia abbastanza comune tra tutte le app moderne, gli altri sono abbastanza “peculiari”.
Leggiamo invece un estratto delle Condizioni d’uso di Facebook.

...quando l'utente condivide, pubblica o carica un
contenuto protetto da diritti di proprietà intellettuale
in relazione o in connessione con i Prodotti di Facebook,
concede una licenza non esclusiva, trasferibile,
sub-licenziabile, non soggetta a royalty e valida in
tutto il mondo per la trasmissione, l'uso, la
distribuzione, la modifica, l'esecuzione, la copia, la
pubblica esecuzione o la visualizzazione, la traduzione
e la creazione di opere derivate dei propri contenuti
(nel rispetto della privacy e delle impostazioni dell'app
dell'utente). Ciò implica, ad esempio, che se l'utente
condivide una foto su Facebook, autorizza Facebook a
memorizzarla, copiarla e condividerla con altri soggetti
(sempre nel rispetto delle proprie impostazioni), quali
i fornitori di servizi che supportano il servizio o gli
altri Prodotti di Facebook che l’utente usa.

Quando noi carichiamo un contenuto, diamo a Facebook il permesso di utilizzarlo in qualsiasi modo e di concedere ad altri lo stesso permesso (“sub-licenziabile”), solamente facendo salve le impostazioni di privacy impostate dall’utente.

Anche se non siete particolarmente portati per la giurisprudenza, potete capire che l’approccio è fondamentalmente diverso.

Veniamo adesso al secondo punto di vista, ovvero cerchiamo di capire come si comportano le app relativamente alla gestione delle informazioni, con un approccio più tecnico.
Questo aspetto, per la maggior parte delle app che abbiamo sullo smartphone, è non determinato.
Sarò più chiaro: cosa fanno la maggior parte delle app con le informazioni a cui hanno accesso? Non lo sappiamo.
Certo, possiamo fare delle indagini, sia sull’app che sui dati che essa scambia con i suoi server di riferimento ma, in generale, essendo sia l’app che il traffico in un formato non comprensibile all’essere umano, è molto difficile.

Infatti, sebbene il traffico sia criptato anche per tutelare la nostra privacy, tutte le app vengono fornite agli smartphone in un formato non “intellegibile” da un essere umano, ma facilmente “digeribile” da un processore elettronico.
Infatti quello che i programmatori scrivono in un linguaggio formale e comprensibile agli occhi umani (chiamato codice sorgente) e che, successivamente, dà origine all’app vera e propria, è molto spesso un segreto industriale conservato molto gelosamente, proprio perché contiene la logica con cui un’app funziona.
La cosa non vale per Immuni.
Il codice sorgente delle app Android e iOS di Immuni è infatti, come si dice in gergo, aperto.
Tutti possono vedere e comprendere (per la comprensione ovviamente sono richieste delle competenze di programmazione) come funzionano le app, quali dati si scambiano e in che occasioni.

Dark Mode
Dark Mode

Non solo, tutti possono anche individuare difetti e malfunzionamenti (eh sì, tutti i programmi ne hanno, essendo realizzati da persone) e proporre correzioni e miglioramenti, tutto con discussioni pubbliche; ne vedremo dopo alcuni esempi.

Quindi possiamo dire con ragionevole certezza quello che fa Immuni con i dati a cui ha accesso.
Concentriamoci ovviamente sulle informazioni che transitano dal nostro smartphone verso i server di Immuni.

Il caricamento del nostro codice “segreto” (univoco, ma che non permette di risalire alla nostra identità) sui server di Immuni avviene solo in un caso ben definito:
ovvero se veniamo trovati positivi al COVID.

In questo modo tutte le altre app se lo scaricheranno e potranno verificare se vi hanno “incontrato” ovvero se il vostro codice corrisponde con uno di quelli che hanno memorizzato nelle loro ultime 14 giornate.
Questa procedura deve essere autorizzata dall’operatore sanitario che ha riscontrato la positività, attraverso un codice di controllo, per evitare che utenti maldestri o malintenzionati possano segnalare positività non veritiere.

Inoltre l’app Immuni, come tutte le app, raccoglie e invia ai suoi server di riferimento un certo numero di parametri di funzionamento.
Queste informazioni sono dette “analytics” e sono essenziali ai fini di verificare il corretto funzionamento dell’infrastruttura e di estrarre statistiche epidemiologiche, come quelle riportate in questa pagina web.
Ovviamente gli analytics sono raccolti in modo assolutamente anonimizzato e non potrebbe essere altrimenti, visto che l’app non ha alcun modo, come abbiamo ripetuto diverse volte ormai, di accedere alla reale identità dell’utente.
Per chi conosce l’inglese, qui è disponibile un elenco di tutte le informazioni raccolte.

Le scuse

Ma quali sono le ragioni, o meglio scuse, per cui non si installa Immuni?

Non mi occuperò di questioni politiche, se non dicendo che è indegno di un paese civile che i mezzi per contrastare una pandemia (non solo l’app Immuni, purtroppo) diventino oggetto di propaganda e polemica politica.

Mi auguro che questo lungo post sia stato sufficiente a illustrarvi come Immuni è l’ultima app che può mettere a repentaglio la vostra privacy. Molte altre app, ma anche lo stesso smartphone, sono invece una vera miniera di informazioni per chi le sa estrarre. Ma questo, magari, sarà oggetto di un altro post 🙂

Da quello che sento in giro, invece, molte persone temono di essere bloccate da un cosiddetto “falso positivo”.
Con “falso positivo” si intende un errore tipico di un qualsiasi sistema di rilevamento, ovvero quando viene rilevata una situazione “di interesse” (in questo caso la positività al virus) ma questa situazione non corrisponde al vero.
Pensiamo ad un caso pratico: noi restiamo in una sala d’attesa per circa 30 minuti in uno studio professionale; nel frattempo, nello studio medico accanto (completamente indipendente e con diverso ingresso), una persona infettiva che magari verrà diagnosticata tra una settimana, rimane anche lei in attesa per gli stessi 30 minuti.
C’è un muro che ci separa, quindi non c’è possibilità di contaminazione da droplets. Ma, purtroppo, quel muro è una parete in cartongesso che consente comunque agli smartphone di scambiarsi i codici. E quindi queste due persone risulteranno “contatti stretti” anche senza mai essere state nello stesso ambiente.

Dobbiamo però chiarire alcune cose.

Supponiamo di aver ricevuto la notifica di contatto con una persona positiva.
La notifica in realtà non è stata “ricevuta”, nel senso che è lo smartphone stesso a rilevare il contatto e a comunicare la cosa all’utente attraverso la visualizzazione sullo schermo. Quindi, nessuno sa che effettivamente ci è stato notificato il contatto.

Grafica per “esposizione a rischio”. (© Presidenza del Consiglio dei Ministri )

Infatti la notifica stessa invita a prendere eventualmente contatto con il vostro medico di medicina generale per comunicargli la cosa e nessuno potrà mai chiedervi conto di una “rilevazione di esposizione a rischio” a cui non avete dato seguito.

Ovviamente, il principio di precauzione, spesso invocato a sproposito nella nostra società, in questo caso dovrebbe essere invece tenuto in considerazione.
Siete proprio sicuri che quel contatto rilevato dall’app Immuni sia stato un “falso positivo”? Era la persona nello studio medico accanto al vostro che non avete nemmeno avuto occasione di vedere oppure qualcuno sull’autobus a cui magari non avete fatto caso?
Siete pronti a scommetterci sopra la salute delle altre persone, magari vostri cari, che potreste contagiare?
Una vita o più perse per sempre contro 14 giorni di isolamento.

Ne vale veramente la pena?

E’ tutto perfetto?

Insomma, è tutto a posto. L’app Immuni è perfetta.
No, sappiamo che non lo è.

Anche se non fosse intervenuta la trasmissione televisiva Report (con un paio di servizi, l’ultimo dei quali potete trovare a questo link) sappiamo che ci sono alcuni problemi, raggruppabili in tre categorie:

  • problemi tecnologici, come vulnerabilità, malfunzionamenti, limitazioni dovute alle tecnologie utilizzate e incompatibilità con i terminali più vecchi;
  • il ruolo di Google e Apple nella gestione dell’hardware e delle informazioni;
  • le interazioni con il Servizio Sanitario Nazionale.

Problemi

Partiamo dall’inizio, cioè da una cosa che avevamo evidenziato all’inizio di questo post.

Limiti della tecnologia

La tecnologia su cui si basa Immuni è il BlueTooth. Un protocollo di comunicazione che è stato “riadattato” a funzionare come una specie di RADAR…
E’ stato usato il BlueTooth perché praticamente presente su tutti gli smartphone recenti e perché lavora nell’intervallo di distanza corretto: un dispositivo BlueTooth di classe 2, quella maggiormente diffusa sui telefonini, arriva infatti al massimo a 10 metri di distanza in campo libero, evitando quindi di poter rilevare altri dispositivi a distanza maggiore, che sarebbero assolutamente non importanti ai fini epidemiologici.
Purtroppo il comportamento del segnale radio BlueTooth non è così prevedibile in ambienti chiusi, specialmente quelli con strutture metalliche, come, ad esempio, mezzi di trasporto.
Ma, come abbiamo già evidenziato, abbiamo solo questa arma a disposizione e dobbiamo quindi far di necessità virtù.

La gestione particolare del BlueTooth e i nuovi sviluppi fatti da Google Apple per renderla possibile richiedono inoltre due requisiti:

  • un BlueTooth a basso consumo energetico, detto BLE (BlueTooth Low Energy)
  • un sistema operativo non eccessivamente vecchio

Per Apple questo è facilmente verificabile, in quanto esiste un solo produttore e una sola linea di telefoni. L’iPhone più recente su cui non è possibile installare Immuni è l’iPhone 6, presentato nell’ormai lontano settembre 2014. Gli iPhone 6S e SE (e i modelli più recenti) invece lo supportano.
Per Android la cosa è più complicata, in quanto le politiche di aggiornamento dei vari terminali dipendono dai costruttori. Oltre al BLE è necessario un sistema operativo almeno versione 6 (chiamato amichevolmente “Marshmallow”): per conoscere la versione aprite questo link dal vostro telefonino.
Purtroppo i terminali Huawei, in teoria, sarebbero tagliati fuori per il noto “ban” imposto dall’amministrazione (ormai uscente) USA che impedisce loro di avvalersi dei Google Play Services, un componente software alla base di molti servizi forniti dal colosso di Mountain View.
In realtà il ban non consente a Huawei di preinstallare tale componente ma, nella maggior parte dei casi, non impedisce all’utente di installarlo dopo l’acquisto, in modo più o meno complicato. Il problema è quindi aggirato.

Bug e vulnerabilità

Ogni prodotto software, come l’app Immuni, é soggetto a delle problematiche a causa di un peccato originale:

gli sviluppatori,
ovvero coloro che scrivono il software, sono esseri umani e tutti gli esseri umani, scrivente incluso, hanno la peculiare caratteristica di commettere errori.

Questi errori, in un software, nella maggior parte dei casi creano malfunzionamenti generici più o meno gravi, che in gergo si chiamano bug.
In altri casi, permettono ad altri esseri umani di approfittarsene e di costringere il software a comportarsi in maniera per loro vantaggiosa… siamo di fronte, in questo caso, a delle vulnerabilità.

Bug e vulnerabilità di Immuni vengono pubblicati in maniera “aperta”, così come abbiamo detto per il codice sorgente.
Potete vedere qui quelli dell’app iOS e qui quelli dell’app Android.
In questo momento, mentre sto scrivendo, ne esistono circa un’ottantina ancora non risolti.
Gli aggiornamenti più o meno frequenti delle app servono proprio a questo, ovvero a fornirvi una nuova app con meno bug e vulnerabilità rispetto alla precedente. O almeno si spera 😉

Uno dei bug più importanti ha riguardato la versione Android dell’app, su un numero limitato, ma ancora non ben chiaro, di modelli: in particolare alcuni dispositivi Huawei e Samsung.
La notizia è trapelata sugli organi di informazione intorno alla metà di settembre 2020.
Questi smartphone non hanno effettuato lo scaricamento giornaliero dei codici segreti degli utenti positivi dai server Immuni per circa 10-15 giorni, con un danno rilevante all’efficacia del tracciamento dei contatti.
Il problema è stato limitato nel tempo ed è stato comunque pubblicato un aggiornamento per evitare il ripetersi del problema.
Dopo un paio di settimane è inoltre emerso un problema di minore entità anche sull’app iOS, causato da un aggiornamento del sistema operativo di Apple.

Parliamo ora delle vulnerabilità.

L’ormai già citata puntata di Report ha portato alla luce della ribalta una vulnerabilità detta “Replay Attack“.
Non c’era nulla di nascosto ovviamente, la discussione è aperta, pubblica e anche piuttosto accesa. Se avete tempo potete divertirvi leggendo qui e qui.
Ma come funziona? E su cosa si basa?
Purtroppo, come abbiamo detto, il protocollo utilizzato (BlueTooth Low Energy) è stato scelto a causa della sua diffusione capillare, non per la sua sicurezza.

Semplificando un po’, è possibile che un utente malintenzionato faccia una raccolta dei codici segreti che vengono scambiati in un luogo e poi li ritrasmetta in un altro posto.
Ipotizziamo, ad esempio, che il nostro hacker metta uno “sniffer”, ovvero un apparato dedicato solo a ricevere e a salvare codici, vicino ad un ingresso di un ospedale, quindi con un’alta probabilità che poi qualche codice si riveli appartenere a un positivo.
Mettiamo che poi questi codici vengano ritrasmessi (“replay”) in un posto particolarmente affollato o di grande passaggio, uno stadio, ad esempio.
Le app Immuni delle persone nello stadio riceveranno tutti questi codici e li registreranno come contatti… contatti che in realtà non sono mai avvenuti.
Contatti che potrebbero trasformarsi di esposizioni a rischio se una quota di questi codici si rivelasse appartenente a persone positive.

Lo scopo di tutto ciò? Generare finte esposizioni a rischio porterebbero un numero molto alto di persone “fintamente esposte” a rivolgersi alle strutture sanitarie, mettendole ancora più in crisi.
Consideriamolo dunque alla stregua di un attacco terroristico.

Questo in teoria.
In pratica la realizzazione di questo attacco non è così semplice.
I codici trasmessi contengono anche un riferimento temporale, quindi o sono trasmessi in tempo reale dall’ospedale allo stadio (cosa non semplicissima) oppure bisogna retrodatare gli orologi degli smartphone bersaglio… fattibile, ma molto difficile farlo su grandi numeri.
Una vulnerabilità quindi esiste, ma è molto difficile sfruttarla ottenendo risultati eclatanti.

Come diceva un tale,

un computer spento e chiuso
in una cassaforte è
il sistema più sicuro del mondo ma, purtroppo, completamente inutile.

Detto in modo più rigoroso, ogni sistema informatico è un equilibrio più o meno bilanciato tra sicurezza e usabilità.

Google e Apple, sempre loro

All’inizio di questo post abbiamo parlato delle API sviluppate da Google e Apple per la gestione del BlueTooth nelle app di tracciamento dei contatti.

Queste API si sono evolute in un sistema più evoluto chiamato Google/Apple Exposure Notification (GAEN) system, con miglioramenti relativi alla sicurezza e con maggiori funzionalità.
Addirittura, a partire da settembre 2020, è stato creato un sistema chiamato Exposure Notifications Express dedicato agli Stati che non possono permettersi o non vogliono occuparsi in prima persona dello sviluppo di un app di contact tracing.

Google e Apple mettono a disposizione un sistema di tracciamento “chiavi in mano”:

  • le autorità sanitarie definiscono la grafica e il nome dell’app, alcuni parametri epidemiologici e si occupano dei server per la gestione dei dati;
  • Google e Apple si occupano di tutto il resto, con due modalità diverse:
    • Google crea in automatico un’app dedicata, da caricare sul Play Store, con codice sorgente aperto;
    • Apple integra le funzionalità nel suo sistema operativo iOS, quindi l’utente non dovrà nemmeno scaricare l’app.

Tutto questo pone comunque una questione.

Come avrete capito questo sistema di gestione della notifica delle esposizioni Google/Apple è un “pezzo” di software necessario. Ci sono dei sistemi analoghi (il protocollo DP-3T e il protocollo TCN, ad esempio) ma il sistema GAEN è l’unico che viene realizzato a livello di sistema operativo e che quindi garantisce, soprattutto per i telefoni Apple, un funzionamento affidabile.

Google e Apple hanno quindi praticamente accesso a tutti i dati che vengono trasmessi dalle app come Immuni (inclusa Immuni).
Ma c’è da preoccuparsi?
I due hanno accesso già a molte altre informazioni, praticamente tutte quelle che passano sui nostri terminali.
Localizzazione, dati biometrici, sensori (microfono, fotocamera), informazioni, foto, documenti, sms.
Insomma se vi preoccupate della riservatezza e temete in particolare queste due multinazionali, forse è meglio che non utilizziate uno smartphone.
Se invece già ne possedete uno, installare Immuni non cambierà sostanzialmente la situazione.

Il collegamento con il SSN

Veniamo dunque al nostro Sistema Sanitario Nazionale e, in particolare, al suo interfacciamento con l’app Immuni.

Abbiamo già visto che le situazioni in cui l’app chiede di trasmettere informazioni al SSN sono due:

  • nel caso l’utente sia rilevato positivo, esso deve notificare all’operatore sanitario che utilizza Immuni: si avvia quindi la procedura di autorizzazione al caricamento del codice segreto dell’utente nella lista dei codici “positivi”;
  • nel caso l’utente sia notificato di un’esposizione a rischio, esso deve contattare il Medico di Medicina Generale

E’ evidente che se l’utente non agisce in modo “corretto”, ovvero come descritto qui sopra, l’app Immuni viene tagliata fuori, viene resa inutile.
Sfortunatamente lo può fare senza rischiare nulla, visto che nessuno può sapere che l’utente infetto sta usando Immuni, né che l’utente al momento sano ha ricevuto una notifica di esposizione a rischio.

Vediamo adesso come questo non sia proprio un caso ipotetico.
Consideriamo l’interazione del primo tipo, ovvero il caricamento del codice sui server di Immuni da parte degli utenti dell’app che vengono rilevati positivi al SARS-CoV-2.
Dalla dashboard di Immuni si evince che la percentuale di download in Italia, facendo una media tra i dati regionali, è del 19,8%.
Un dato già scandaloso di suo, ma il bello deve ancora venire.
Parliamo di download, quindi non è detto che chi la scarica poi la usi e la continui ad usare. Ipotizziamo che la metà, il 10%, sia un utente abituale.
Cioè supponiamo che il 10% degli italiani usi abitualmente Immuni, un’ipotesi molto cautelativa.
Analizziamo, per esempio, i primi 15 giorni di novembre.
Prendiamo i dati dei nuovi infetti per singolo giorno così come diffusi dal Dipartimento della Protezione Civile e i dati relativi all’app Immuni, pubblici, in particolare il numero di utenti che giornalmente pubblicano il loro codice segreto perché diagnosticati positivi.
Per quanto fin qui detto, ci potremmo aspettare che per ogni 100 nuovi infetti, 10 codici di utenti positivi vengano caricati sui server di Immuni, ovvero una percentuale del 10%.

Giornocodici caricatinuovi infettipercentuale
1 novembre71299070,24%
2 novembre125222530,56%
3 novembre142282440,50%
4 novembre155305500,51%
5 novembre161345050,47%
6 novembre152378090,40%
7 novembre97398110,24%
8 novembre53326160,16%
9 novembre135252710,53%
10 novembre189350980,54%
11 novembre188329610,57%
12 novembre179379780,47%
13 novembre136409020,33%
14 novembre80372550,21%
15 novembre100339790,29%
2020 © Commissario straordinario per l’emergenza Covid19 – Dipartimento della Protezione Civile – Presidenza del Consiglio dei Ministri – Licenza CC BY 4.0

Come vediamo la percentuale dei codici caricati è decisamente inferiore, in media 20 volte inferiore.

Solo il 5% degli utenti Immuni
diagnosticati positivi al virus
pubblica il proprio codice

Qualcuno potrà ipotizzare che i contagiati siano soprattutto persone anziane, quindi meno avvezze all’utilizzo della tecnologia.
In realtà, dai dati di Epicentro, portale dell’Istituto Superiore di Sanità, negli ultimi 30 giorni circa il 55% dei contagiati ha meno di 50 anni.

E allora?
Sicuramente, e spesso i mass media riportano casi del genere, c’è una difficoltà nel trovare la persona che può aiutare e soprattutto fornire l’autorizzazione per finalizzare il caricamento del proprio codice.

Ma… “A pensar male del prossimo si fa peccato ma si indovina”.
No, non è una frase di Giulio Andreotti, come comunemente si pensa, ma “addirittura” a Papa Pio XI.
Addirittura? No, non è decisamente compito di questo blog cercare di stabilire una gerarchia tra Andreotti e un Papa 😉

Per chiarire la mia posizione, ritengo molto improbabile che il 95% degli utenti Immuni che contraggono il virus incontrino difficoltà insormontabili nel finalizzare il caricamento. Penso che le motivazioni siano altre e legate, nella migliore e più ottimistica delle ipotesi, al fatto che non tutti sanno che la procedura non è automatica.
Mi domando quanto costerebbe, ad esempio, stampare su ogni referto di tampone molecolare positivo una frase del tipo “Se usi Immuni, contatta il numero X appena possibile”.

Per concludere, personalmente ritengo che creare un’app assolutamente anonima sia stato un errore.
Un errore comprensibile, certo.

L’app è stata infatti ideata quando l’opinione pubblica era focalizzata, come me del resto (e lo dico proprio nelle ormai lontane prime righe di questo post), sul mantenimento della propria riservatezza.

Se ogni app fosse stata associata ad un codice fiscale o ad un account SPID, ad esempio, sarebbe stato possibile comunque mantenere la riservatezza tra gli utenti (i codici sarebbero comunque stati anonimi per gli smartphone), ma si sarebbe potuto automatizzare il caricamento del codice per gli utenti infetti oppure, tramite un form o un colloquio in video con un operatore sanitario, si sarebbe potuto prenotare un tampone per i contatti con un’esposizione a rischio.
Senza contare funzionalità accessorie come creare delle autocertificazioni in digitale, senza dover stampare moduli e ristamparli due giorni dopo.

Paradossalmente c’è chi in Italia ha fatto polemica, gridando alla violazione della riservatezza, per un’app che è talmente accurata nel salvaguardare la privacy degli utenti da essere praticamente… inutilizzata.

Siamo ancora in tempo (?)

Insomma detto tutto questo, e con i vaccini alle porte, vale ancora la pena installare l’app Immuni?
A mio avviso sì.

Sicuramente non ci sono controindicazioni.
Abbiamo visto come la privacy, oltre a non essere realmente messa in pericolo dall’app in sé, non costituisce nemmeno un tema ragionevole visto che gli smartphone sono già dei gran chiacchieroni.
Insomma, se possedete uno smartphone alla privacy avete già rinunciato, che ne siate coscienti o no.

L’app Immuni è uno strumento,
e se questo strumento finora non ha funzionato al meglio è perché è stato utilizzato da pochi,
e quei pochi che l’hanno utilizzato non l’hanno utilizzato al meglio,
non solo purtroppo per carenze organizzative e strutturali.

Lo strumento Immuni può rivelarsi ancora utile, anche perché dobbiamo tener presente che la campagna di vaccinazione sarà lunga.
Anche quando sarà terminata, inoltre, dovremo verificare la reale efficacia e persistenza della copertura.

E installarla non costa davvero nulla.

A questo punto sarà la politica a deciderne il futuro.
Noi cittadini possiamo solo dare un segnale.

2 risposte su “Immuni dalla privacy?”

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.