photo Piqsels

Immuni e Goopple, ovvero come l’effetto Dunning Kruger sia di casa.

Immuni: non ci ho ancora capito molto. La tecnologia di base c’è. Si chiama Bluetooth, che è lo standard industriale che tutti conosciamo, che serve a far comunicare dispositivi tra loro attraverso onde radio a corto raggio, e che prende il nome dal re danese Harald Blåtand ( dente blu, bluetooth, questo perché si dice il creatore della tecnologia Jim Kardash, stava leggendo un libro sui re vichinghi)Se un dispositivo usa il bluetooth vuol dire che è in grado di comunicare con altri dispositivi tra loro vicini. 

Il sistema del contact tracing sfrutta la versione a basso consumo di energia del bluetooth, la famosa Low Energy. L’approccio app-based è stato sperimentato ed usato più o meno efficacemente in altri contesti, integrate spesso anche con altre strategie, come il QR code di Singapore

Le intenzioni ci sono tutte e la consapevolezza che serva non è in discussione. Per uno sguardo allenato,  quello che manca allo stato attuale è la chiarezza sulle modalità e sulle specifiche tecniche con cui il sistema di contact tracing all’italiana verrà sviluppato. Quali specifiche tecniche, 

Cambio di strategia: dall’oscuro funzionamento del consorzio svizzero Pepp-pt a Apple Google

Se all’inizio i ragazzi (e so’ ragazzi) della Bending Spoons, l’azienda scelta dal governo per sviluppare Immuni, avevano deciso di aderire allo svizzero consorzio Pepp-pt e alle sue specifiche per le app, hanno poi, giustamente, optato per una soluzione più solida, affidandosi alla partnership Apple-Google, e alle API (Application Programming Interface) fresche fresche che i due colossi hanno sfornato. Squadra che vince non si cambia, regola sacrosanta. Soprattutto dopo le defezioni eccellenti e le accuse di poca trasparenza che erano piombate sul consorzio Pepp-pt. (Vedi qui e qui)

Appurato che due telefoni si devono parlare, prima di tutto lo devono fare in sicurezza, e allora li si scambiano delle chiavi di riconoscimento. La strategia che il Pepp-pt aveva deciso di implementare era di far avvenire la generazione di queste chiavi (roba di matematica brutta) direttamente sui telefoni e non in un sistema centralizzato. Il telefono conserva l’elenco anonimo dei contatti avvenuti (in base a tempo e distanza di esposizione), e la condivisione di queste informazioni è sempre su base volontaria. L’app installata su un altro telefono riceve la lista dal server (che ha la responsabilità di distribuire queste chiavi anonime) avverte il proprietario del contatto.

Dei server che devono conservare queste informazioni, di chi li gestirebbe, delle caratteristiche tecniche ed operatori poco o nulla si sa ancora. Con le autorità si possono scambiare dati solo su base volontaria, accettando la richiesta fatta dall’app.

Nasce Goopple contro il Covid19 

Apple e Google (d’ora in poi Goopple?) tutta questa storia la fanno diventare una funzionalità di default del telefono.

L’app si limiterebbe solo a dare un’interfaccia alle funzioni dei due colossi, e, siccome i ragazzi di Bending Spoons spa hanno una grande esperienza nello sviluppo di app per un gran numero di persone, riusciranno sicuramente a fare una interfaccia gradevole. L’unica cosa che non è chiara è quale esperienza abbiano nello sviluppo di app mission-critical e orientate alla sicurezza dei dati. 

Questo scontiamo in italia, ovvero che che si possa improvvisare uno sviluppo software solo perché ce n’è bisogno, tanto che ci vuole, che alla fine non serve fare dei test, che tanto i test li faranno gli utenti, poco importa se succede come al sito dell’Inps dove entri con le tue credenziali e navighi invece nel portale di un altro utente (e meno male che hanno dichiarato di aver seguito le procedure per l’autodichiarazione dei data breach).

L’effetto Dunning-Kruger e il mondo dei software italiano

Il comparto software industriale italiano è minato alle fondamenta dall’effetto Dunning-Kruger, nota distorsione cognitiva per la quale ci si ritiene esperti in un campo quando proprio non lo si è. Positivi a questa sindrome sono sia politici, sia manager, sia programmatori improvvisati. Allora per fare un’app del genere non serve conoscere la sicurezza, tanto c’è il pdf che ti scarichi da internet, segui il tutorial e fai lo sviluppo. Se bisogna sviluppare una app che deve rispettare determinati criteri di sicurezza non basta saper fare delle interfacce gradevoli. Un’applicazione non si apparecchia.

Il paradosso dell’app open source con licenza proprietaria. 

Tutto fu subito chiaro quando l’app fu proposta closed-source con licenza d’uso perpetuo e apparentemente non open source. Nei comunicati ufficiali si è parlato infatti di “acquisizione dei diritti”, che è una frase del tutto incongrua con l’idea, la prassi e la normativa internazionale in materia di codice open. Un’app del genere infatti doveva essere open punto e basta, che la società ci avrebbe guadagnato con il solo ritorno d’immagine

Invece con questa definizione si voleva dire che nessuno avrebbe avuto la possibilità di visionarne il contenuto, di criticare magari scelte tecniche poco congrue (e cosa c’era da nascondere mi chiedo?), di migliorarlo semmai, di dare suggerimenti, di integrare, di dare sfogo alla fantomatica via italiana all’intuito. Un software open è un software aperto, di cui sono disponibili i sorgenti.

Per fortuna poi si sono redenti e hanno ben pensato di rilasciarla open source. Fatto sta che sul repository ufficiale della task force del governo ci sono solo pdf, e dell’app (o di un suo documento tecnico) nemmeno l’ombra.

I dubbi che rimangono sulla strategia Google-Apple

Se da una parte la soluzione di Goopple (funziona!) è sufficientemente strutturata da permettere la messa in strada del sistema di contact tracing adeguato, restano comunque dubbi da chiarire: i dati trasmessi alle autorità, se io viaggio in Europa, ma anche solo al confine con la Francia, vengono trasmessi alle autorità francesi o a quelle italiane? Il sistema funzionerà anche in background, visto che Apple di un app che funziona in background proprio non ne vuole sentir parlare, perchè consuma una grande quantità di batteria?
Queste sono domande che troveranno risposta solo quando l’applicazione potrà andare su strada. Google ha anche dichiarato che la soluzione è strutturata in due fasi, la prima in cui vengono messe a disposizione le interfacce per le funzionalità a basso livello, la seconda, a distanza di qualche mese, in cui le app non serviranno più, ma sarà il rispettivo sistema operativo a fornire nativamente queste funzionalità. A quel punto potremmo supporre che Immuni non servirà più? Oppure servirà, ma noi non lo sappiamo?

Sanno davvero come si fa una app?

Mi chiedo: quante persone ci lavorano a questa app? Si rendono conto che un’app non è un contapassi sull’Apple store, e che una volta fatta va seguita da un team ben strutturato per tutto il tempo che starà in piedi? L’app non è una pagnotta che la cuoci e poi la mangi tranquillamente. Il ciclo di sviluppo software prevede che ci siano delle analisi che raccolgono i requisiti da implementare, li scrivano in modo chiaro e comprensibile e li passino a dei progettisti che ne creano l’architettura, che a loro volta li passano al team di sviluppo, che rilascia ogni funzionalità, che sviluppa al team di test, che infine chiede al team operation di rilasciare l’app e controllarne l’operatività giorno per giorno. Se viene segnalato un malfunzionamento, tutti i partecipanti al ciclo di lavorazione possono essere coinvolti. Fare un’app del genere è un lavoro a tempo pieno con un team dedicato. Ed in italia di realtà con il know-how adeguato ce ne sono molte, 

C’è un repository pubblico ma senza i giusti contenuti 

Ma non disperiamo. Finalmente ci siamo, sta comparendo la prima ombra, timida ma coerente con l’approccio aperto che, almeno negli giorni successivi alle polemiche, sembrava aver preso piede. Abbiamo finalmente un repository pubblico dove la task force pubblicherà tutti i risultati dei loro lavori, e a quanto sembra anche il codice sorgente di Immuni.

Diciamocelo pure, il problema non è di privacy, ma di confusione. Se la mia privacy deve essere compromessa, e qualcuno arriva da me e mi chiede “vuoi tu che la tua privacy sia compromessa per il bene comune”? E io gli rispondo, “mi spieghi esattamente come?”, e quello semplicemente mi risponde “ma no, non ti preoccupare, facciamo quest’altra cosa”.

Attendiamo che il repo github della taskforce cominci a popolarsi di tutte le altre informazioni, compreso il codice sorgente di Immuni.

Anche la soluzione Apple Google ha le sue vulnerabilità

Chiaramente anche le soluzioni di Goopple non sono immuni (ahahha) da rischi, che possono essere legati a problemi di sicurezza che in futuro verranno scoperti, o alla implementazione stessa del protocollo Bluetooth LE, per il quale sono note al momento 12 vulnerabilità (dato al 20 marzo 2020), alcune delle quali capaci di mandare semplicemente in tilt tutto il sistema. Insomma, l’unica soluzione è quella di aggiornare appena possibile il telefono, sempre, farlo fare agli amici anche quelli più indolenti, farlo fare ai propri figli che spesso già l’hanno fatto, e  farlo fare ai propri genitori neodigitali. Chissà se la lotteria che hanno intenzione di fare per sponsorizzare l’app abbia anche dei biglietti per l’aggiornamento del telefono.

 

Anonima Programmatori

 

Fonti:

Articolo su pepp-pt

https://www.startmag.it/innovazione/app-immuni-consorzio-pepp-pt/

Dettaglio sulle Diagnosed Key

https://www.wired.it/attualita/tech/2020/04/20/il-contact-tracing-via-app-quale-strategia-usare/

Repo Github della taskforce

https://github.com/taskforce-covid-19/documents

Vulnerabilità e minacce

https://www.cybersecurity360.it/nuove-minacce/contact-tracing-gli-attacchi-cyber-al-bluetooth-vulnerabilita-e-contromisure/

 

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo di WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google photo

Stai commentando usando il tuo account Google. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...