Perchè Face ID è un salto nel futuro.

Nov 15, 2017 · 6 mins read · Costantino Pistagna · @valv0

Perchè Face ID è un salto nel futuro.

È evidente, la partita è tutta giocata sul chip bionico. Lo schermo è OLED e la batteria dura di più, certamente. Ma l’unica vera grande differenza con il fratello minore iPhone8 sta in quella piccola telecamera messa dentro il discutissimo Notch.

La sicurezza moderna, ai tempi di Internet, si basa sulle password. Password per accedere al conto in banca, alla posta email, al proprio portale di intrattenimento ed a miliardi di altre cose. Sequenze di caratteri che si ripetono o meno e che fortificano l’accesso ai nostri segreti più intimi. I computer si fanno più veloci? Aumentiamo la complessità della password. E’ un meccanismo consolidato. Così come consolidate sono le tecniche per attaccarlo: se conosci la password sei dentro.

Non importa come te la sei procurata. Potresti avere torturato il tuo obiettivo, potresti avere preso in ostaggio un suo familiare ricattandolo. Non importa. Se conosci la password puoi entrare. Quello che manca ai sistemi attuali è proprio questo: il concetto di consapevolezza del contesto o, come amano dire gli americani, context-awareness. Una password è una sequenza discreta di bits. Se li conosci puoi entrare.

Immaginiamo per un attimo un futuro ideale, in cui il nostro iPad ci riconosca prima ancora di farci accedere alla schermata delle App. Ma cosa significa riconoscere?

Riconoscere in una delle sua accezioni più semplici in sicurezza informatica, significa mostrare la risposta ad una particolare domanda che solo due giocatori conoscono: il proprietario del dispositivo ed il dispositivo stesso.

La potenza di calcolo aumenta, le password si scoprono facilmente e, nell’epoca dal data mining, non siamo più al sicuro neanche barricati dietro i nostri 8192 bytes di sicurezza. E’ necessario aggiungere un grado di complessità enorme, senza complicare al tempo stesso il concetto. Anzi, sarebbe meglio semplificarlo. Face ID di Apple nasce come risposta a queste sfide.

Fig.1

Iniziamo subito con il dire che: «No!, Face ID non è lo stesso meccanismo di protezione visuale che viene fornito con il Note 8 di Samsung.»

Questi sistemi, infatti, ricadono nel concetto di password. Detto in maniera davvero semplice e veloce: In questi sistemi viene fatta corrispondere ad una caratteristica biometrica (impronta digitale o immagine catturata dalla telecamera) una stringa univoca che viene inviata come password. Nulla di più: “a linea corrisponde bit e viceversa”.

Perchè Face ID è differente? Attraverso l’ausilio di speciali registri ed istruzioni a bordo del processore A11 Bionic di Apple è possibile accellerare e rendere semplici operazioni di apprendimento supervisionato su campioni di dati opportunamente forgiati.

Questi dati, per essere snelli e computazionalmente efficienti non possono venire da una normale telecamera. Ci sarebbero, infatti, troppi problemi di falsi positivi, disturbi e tonnellate di informazioni inutili che a poco servono in un calcolo così completto.

Forti di questo concetto, sono state usate delle speciali telecamere ad infrarossi – il famoso sensore TrueDepth – per discretizzare con certezza matematica le caratteristiche del volto. Sino a qui, nessuna differenza tra Face ID, Touch ID e lo smarphone Android con riconoscimento visuale da telecamera.

Quello che rende Face ID differente da tutto il resto è il software.

Il vostro volto, infatti, viene passato ad un motore di apprendimento supervisionato che cerca di isolare e rendere sempre più precise quelle caratteristiche discrete tirate fuori dal sensore ad infrarossi di cui sopra.

I famosi 30.000 punti proiettati sul volto servono proprio a questo.

Ogni qualvolta la scena differisce troppo dalle caratteristiche conservate dal chip A11 Bionic, il sistema effettua un nuova istantanea, chiede la password sul tastierino quale conferma e questi nuovi dati vanno a sommarsi a quelle già esistenti secondo una euristica nota solo ad Apple.

Chiaramente questo peso computazionale è destinato a crescere nel tempo: le istantanee si fanno sempre più numerose, così come i falsi positivi che involontariamente arrivano.

Gli attacchi mostrati

Veniamo alle informazioni che circolano in queste settimane. Un gruppo di sicurezza Vietnamita Bkav ha violato Face ID con una maschera artificiale da 150$.

Su Youtube si vede una simpatica famiglia sbloccare il telefono con il volto del figlioletto poco più che adolescente.





e che dire dei due gemelli che sbloccano il telefono senza troppe difficoltà?





Apple è diventata sciocca? Se ci fosse stato Steve Jobs! Non sarebbe successo…

Niente di tutto questo. Apple, con il suo meccanismo Face ID, sta tentando di farci fare un nuovo salto in avanti aggiungendo il concetto di contesto quale complessità all’equazione di riconoscimento.

Sbloccare il dispositivo solo se si è svegli ed attenti allo schermo; evitare di sbloccare il dispositivo con il proprio volto se l’espressione facciale ha un volto spaventato o preoccupato. Sono tutte facce dello stesso requisito:

“Non basta che il volto sia quello conservato biometricamente. E’ necessario anche estrapolare il contesto in cui ci si trova.”

Il motore di intelligenza artificiale che sta dietro FaceID prova a fare questo. Chiaramente si tratta del primo esperimento su larga scala ad oggi.

Ma perchè le prove fatte non sono veritiere?

Per capirlo bisogna tornare un attimo indietro ed aggiungere una nuova definizione. Quella di: volontarietà del target.

In tutti i casi citati, infatti, l’obiettivo da attaccare è cosciente di esserlo ed è collaborativo nel fine comune con l’attaccante di violare il sistema. Vale a dire, agisce come nemico del sistema stesso.

Chiaramente sotto queste condizioni il concetto stesso di violazione del sistema perde di significato. Nel fare questo, infatti, viene volontariamente alterato il meccanismo di apprendimento del motore di intelligenza artificiale, mostrando con alternanze più o meno regolari falsi positivi e negativi opportunamente studiati, convalidandoli con il requisito della password da tastierino.

Chiaramente, c’è un lavoro di ricerca molto interessante dietro queste dimostrazioni di concetto che mettono in evidenza delle falle che sicuramente possono essere migliorate nell’algoritmo e nel meccanismo in generale. Ma per farlo c’è bisogno di tempo e dati statistici. Questo non significa che dobbiamo preoccuparci. Il meccanismo di Face ID è assolutamente robusto e sicuro per un uso da uomo normale. Lo sarà sempre di più. E’ solo questione di tempo, lavoro e ricerca.


Costantino Pistagna
Costantino Pistagna · @valv0 Costantino is a software architect, project manager and consultant with more than ten years of experience in the software industry. He developed and managed projects for universities, medium-sized companies, multi-national corporations, and startups. He is among the first teachers for the Apple's iOS Developer Academy, based in Europe. Regularly, he lectures iOS development around the world, giving students the skills to develop their own high quality apps. While not writing apps, Costantino improves his chefs skills, travelling the world with his beautiful family.