Bending Spoons ha iniziato a pubblicare il 14 maggio su GitHub (il principale portale web che consente di ospitare progetti software e di svilupparli in maniera collaborativa con gli utenti) alcuni dati relativi all’app Immuni.
Che c’è dell’App Immuni su GitHub
Su GitHub sono ora presenti la descrizione del prodotto, alcuni mock-up del risultato finale e le specifiche delle API, manca ancora il codice, anche se gli utenti della piattaforma hanno già chiesto in vari post informazioni sulle tempistiche della loro pubblicazione (entro fine maggio, quando sarà rilasciata al pubblico l’app).
La vivace discussione che si è sviluppata sulla piattaforma riguardo alla app verte su vari aspetti tecnici, relativi anche alla privacy ed alla dipendenza del software (lato Android) dai Google Play Services, che però non sono presenti su alcuni dispositivi, quali ad esempio gli ultimi modelli Huawei, nonché relativi al rispetto delle direttive AGID in tema di sicurezza del software sviluppato dalla pubblica amministrazione.
Qualcuno, infine, arriva a lamentare che il nome dell’app sarebbe fuorviante, legittimando un ingiustificato senso di “immunità” nel soggetto che la scarica sul proprio smartphone.
Su GitHub è anche precisata la licenza (aperta) di Immuni, ovvero Creative Commons Attribution Share Alike 4.0 International, una tipologia di licenza che consente il riutilizzo libero del software, ma impone che questo sia redistribuito attraverso licenze uguali o simili a quella di origine, le linee guida Creative Commons consigliano queste tipologie di licenza per materiale educativo o media.
Le informazioni fornite dallo sviluppatore su GitHub parlano esplicitamente del fatto che l’app si baserà sull’exposure notification system di Apple e Google (indicazione che depone ancora una volta per la scelta di un framework decentralizzato, più rispettoso della privacy degli utenti).
La descrizione su GitHub però lascia aperta anche la via del modello centralizzato ed infatti, nel descrivere la sicurezza dell’applicativo a livello privacy, afferma che i dati “sia che siano conservati sul dispositivo dell’utente, sia che siano conservati su server” sono cancellati non appena viene meno il loro scopo (generalmente, afferma Bending Spoons su GitHub, entro “poche settimane” e comunque entro e non oltre il 31.12.2020).
I principi dell’applicazione che sono utilità, accuratezza, scalabilità, trasparenza e privacy.
Con riguardo agli aspetti privacy i dati collocati sul dispositivo degli utenti sono crittografati dall’applicazione, ove gli stessi siano conservati su server, saranno conservati su server ministeriali in Italia (nulla dice lo sviluppatore circa la crittografia dei dati su server).
Il sistema si basa sulla verifica dei contatti tramite Bluetooth LE misurati in incrementi di 5 minuti e fino a 30 minuti (il contatto minimo viene indicato, per ragioni di privacy, in 5 minuti, mentre contatti più prolungati vengono indicati in successivi “blocchi” di 5 minuti fino a mezz’ora) come consentito dal sistema sviluppato da Google e Apple e per ragioni di privacy.
I dati trattati
I dati trattati dall’app in ogni caso sono solo i seguenti:
- il giorno dell’esposizione
- la durata dell’esposizione
- l’intensità del segnale BLE (per stimare la distanza)
- le informazioni circa il “livello di contagiosità” del soggetto risultato positivo (questi dati saranno inclusi nella “temporary exposure key” che l’Autorità Sanitaria consegnerà al soggetto contagiato perché registri il contagio sull’applicativo)
L’applicativo condividerà poi dati (pare di intendere, e ci si augura, aggregati ed anonimi) con le Autorità Sanitarie per consentire l’analisi dell’andamento del contagio.
Il ruolo del server dell’autorità sanitaria
Un soggetto risultato positivo viene dotato dall’Autorità Sanitaria di un “temporary exposure key” con il quale l’utente può inviare, sempre attraverso Immuni, l’indicazione che è stato contagiato.
A quel punto il server può “valutare” l’intensità dei suoi contatti nelle settimane precedenti per poter comunicare ai soggetti risultati a “stretto contatto” la loro esposizione al virus.
La descrizione del software scende poi nel dettaglio sul funzionamento del tracciamento. I contatti saranno vagliati quanto a durata e distanza (valutata in base all’intensità del segnale Bluetooth registrato).
La descrizione fa l’esempio di un contatto durato pochi minuti ed a “parecchi metri di distanza”, che verrà considerata a basso rischio.
Che cosa non si sa ancora
Bending Spoons precisa anche che il modello di rischio potrà variare nel corso del tempo, a mano a mano che saranno raccolti i dati.
In buona sostanza non solo è ancora incerta la soglia di intensità del contatto oltre la quale questo verrà segnalato agli utenti, ma per stessa ammissione di Bending Spoons questa potrebbe variare nel corso del tempo.
E’ chiaro però che servirà, prima di diffondere l’applicazione, una maggior trasparenza su questi aspetti, inoltre, se davvero si darà corso a modifiche del modello di rischio, queste andranno accompagnate da altrettanta trasparenza e comunicazione per consentire agli utenti di fidarsi abbastanza dell’applicativo da scaricarlo volontariamente.
Da questo punto di vista Bending Spoons precisa che la stima della distanza è soggetta a errori in quanto l’attenuazione del segnale Bluetooth LE dipende da diversi fattori, tra cui l’orientamento dei due dispositivi l’uno rispetto all’altro e gli ostacoli (compresi i corpi umani) fra loro.
Ad esempio un incontro fra due persone che tengono gli smartphone nella tasca posteriore dei pantaloni potrebbe risultare molto più “distante” rispetto ad un contatto fra due persone che tengono gli smartphone nella tasca anteriore dei pantaloni.
Gli sviluppatori di Immuni sono però ottimisti circa il fatto che i dati raccolti consentiranno di rendere in breve tempo più accurato il sistema, anche se non è possibile escludere che con una “certa frequenza” si verificheranno falsi positivi.
Lacunose anche le informazioni riguardanti le specifiche di security.
In generale, le informazioni a disposizione sono molte ma ancora mancano alcune decisioni fondamentali (framework centralizzato o decentralizzato), il codice e la valutazione di impatto ai fini privacy (che logicamente potrà essere effettuata solo in seguito, non potendo prescindere dal codice).