Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato finale in Intelligenza Artificiale Sistemi di riconoscimento biometrico per dispositivi mobili Anno Accademico 2012/2013 Candidato: Roberta De Viti matr. N46/914 Indice Indice ................................................................................................................................................. III Introduzione ......................................................................................................................................... 4 Capitolo 1: Il riconoscimento biometrico ............................................................................................ 5 1.1 Biometrie ................................................................................................................................... 5 1.2 Sistemi di riconoscimento biometrico ....................................................................................... 6 1.3 Moduli di un sistema di riconoscimento biometrico ................................................................. 7 1.3.1 Algoritmi biometrici ........................................................................................................... 8 1.4 Errori e performance .................................................................................................................. 8 Capitolo 2: Mobile Biometrics .......................................................................................................... 10 2.1 Biometric Solutions using Mobile Devices ............................................................................. 11 2.2 Mobile Devices using Biometric Solutions ............................................................................. 13 2.3 Tecniche di riconoscimento e applicazioni.............................................................................. 13 Capitolo 3: Fingerprint Recognition .................................................................................................. 18 2.1 Sensori ..................................................................................................................................... 18 2.2 Feature Extraction.................................................................................................................... 19 2.3 Matching .................................................................................................................................. 21 2.4 Applicazioni............................................................................................................................. 24 Capitolo 4: Sicurezza e Liveness Detection ...................................................................................... 25 3.1 Punti di attacco ........................................................................................................................ 26 3.2 Spoofing e Liveness Detection ................................................................................................ 27 Conclusioni ........................................................................................................................................ 29 Bibliografia ........................................................................................................................................ 30 III Sistemi di riconoscimento biometrico per dispositivi mobili Introduzione Lo sviluppo incrementale di nuove funzionalità per smartphone e altri dispositivi mobili, tra cui applicazioni per l’e-commerce, l’e-banking o il controllo ad accesso remoto, comporta inevitabilmente l’aumento dei dati personali sensibili gestiti e memorizzati, che necessitano di una maggiore protezione. I metodi di autenticazione biometrica possono offrire un’alternativa o un supporto alle password e ai PIN, e possono essere adattati ai dispositivi in questione sfruttando i sensori di input già presenti (fotocamere, microfoni, touch-screen) o implementandone di nuovi, come un sensore per il riconoscimento delle impronte digitali. Inoltre, in contesti civili o investigativi in cui sono già impiegati sistemi di riconoscimento biometrico, l’utilizzo di dispositivi mobili associati a un sistema centrale stazionario offre indubbiamente un servizio più efficiente consentendo un controllo rapido e diffuso. Introdurremo inizialmente il concetto di biometria e le caratteristiche di un generico sistema di riconoscimento biometrico, per poi evidenziare i vantaggi e le problematiche di un’implementazione su terminali mobili e dare una panoramica dello stato dell’arte di tali applicazioni, sul mercato o in via di sviluppo. In particolare verrà analizzato il metodo di riconoscimento automatico delle impronte digitali, che, oltre ad essere il più diffuso in campo investigativo e governativo, diventerà presto parte della nostra vita quotidiana in seguito alla recente integrazione nel settore degli smartphone. Infine verrà brevemente discusso il concetto di sicurezza di tali sistemi, con riferimento ai possibili attacchi e alle necessarie contromisure. 4 Sistemi di riconoscimento biometrico per dispositivi mobili Capitolo 1: Il riconoscimento biometrico Il riconoscimento biometrico (da bìos = "vita" e métron = "conteggio" o "misura") è lo studio delle caratteristiche fisiche, chimiche e/o comportamentali di un individuo allo scopo di stabilirne automaticamente l’identità. Le prime applicazioni sono nate nel settore governativo, giuridico e forense, e in seguito il loro utilizzo si è espanso notevolmente anche in campo civile, sostituendo o affiancando i classici sistemi di autenticazione. A differenza dei sistemi tradizionali, il riconoscimento avviene in base a chi si è, piuttosto che a cosa si possiede o cosa si ricorda [1]. 1.1 Biometrie Una caratteristica umana, biologica o comportamentale, può essere considerata una biometria se soddisfa i requisiti di universalità, unicità, permanenza e misurabilità. Affinché un tratto biometrico possa effettivamente essere utilizzato per il riconoscimento, bisogna considerare anche altri aspetti: la performance (l’accuratezza e la velocità del riconoscimento, così come le risorse necessarie a ottenerlo, sono limitate da fattori esterni e operazionali); l’accettabilità (gli utenti devono essere 1.1 Tipi di biometrie e loro proprietà [1] 5 Sistemi di riconoscimento biometrico per dispositivi mobili disposti a presentare al sistema la caratteristica biometrica in questione); l’eludibilità (probabilità che il sistema sia aggirato). 1.2 Sistemi di riconoscimento biometrico Un sistema di riconoscimento biometrico è un sistema di pattern-recognition che opera in due fasi, enrollement (registrazione) e recognition (riconoscimento). Inizialmente acquisisce i dati in input estraendone le caratteristiche salienti (feature set) e memorizzandole in un database, sotto forma di template, congiuntamente all’identità della persona in questione; dopo la registrazione preliminare di queste informazioni, il sistema può autenticare o identificare un individuo acquisendone i dati biometrici (query) e confrontandoli con quelli già presenti in database (reference o gallery). Questo processo è generalmente indicato come riconoscimento o matching, ma in base alla modalità operativa possiamo operare un’ulteriore distinzione tra verifica e identificazione [2]: La modalità di verifica autenticazione) è usata una per (o tipicamente positive recognition1, atta ad impedire che più persone usino una stessa identità. Viene effettuato un confronto uno-ad-uno tra i dati in input di un individuo e il template presente in database associato a chi afferma di essere. La modalità di identificazione è utilizzata sia per una positive recognition, 1 qualora fosse 1.2 Registrazione, verifica e identificazione [2] Si parla di positive recognition quando il soggetto è registrato nel sistema, negative recognition altrimenti. 6 Sistemi di riconoscimento biometrico per dispositivi mobili superfluo che un utente affermasse un’identità particolare, sia per una negative recognition, per impedire che una singola persona possa avvalersi di identità multiple. In entrambi i casi si effettua un confronto uno-a-molti tra i dati acquisiti e i template presenti nel database; l’output atteso saranno i dati della persona riconosciuta, se presente, altrimenti o un risultato indicante l’assenza della persona dal database (open set identification) o il best match (close set identification). In alcune applicazioni pratiche, come FBI-IATIS2, l’identificazione è semi-automatica, ossia il sistema ritorna i primi t risultati invece del best match e la decisione finale spetta ad un operatore umano [2]. 1.3 Moduli di un sistema di riconoscimento biometrico Un generico sistema biometrico è composto da quattro moduli principali: - Modulo sensore: è necessario per l’acquisizione dei tratti biometrici di un individuo, in quanto cattura i dati in ingresso e ne produce una rappresentazione numerica, ed è decisivo per la performance del sistema, poiché le elaborazioni successive dipendono dalla qualità dei campioni ottenuti. - Modulo di estrazione delle feature e controllo di qualità: il dato grezzo è anzitutto sottoposto a un controllo di qualità, in base al quale il sistema decide se scartare il campione e richiedere una re-immissione all’utente o se elaborarlo ulteriormente, quindi si procede all’estrazione di un set di feature che lo caratterizzano. Durante la fase di enrollement segue la generazione di un template a partire da uno o più campioni. - Modulo di matching e decisione: l’algoritmo biometrico confronta le feature estratte con uno o più template generati in precedenza e presenti nel database, restituendo in output un matching score relativo alla similarità tra i dati in input e quelli di riferimento. La decisione del sistema dipende da una soglia predeterminata: coppie di campioni con matching score maggiore-uguale della soglia sono dette mate pairs, altrimenti non-pairs [2]. 2 Integrated Automated Fingerprint Identification System. 7 Sistemi di riconoscimento biometrico per dispositivi mobili - Modulo database: è il repository dei dati biometrici registrati (enrolled). 1.3.1 Algoritmi biometrici Gli algoritmi biometrici sono metodi automatici che permettono a un sistema di eseguire il riconoscimento di un individuo. Si occupano di migliorare e determinare la qualità dei campioni, di estrarre le caratteristiche salienti dei dati in ingresso, della fusione delle informazioni, del matching con i template richiesti e anche della compressione dei dati per ottimizzare l’utilizzo di banda e memoria disponibile [3]. 1.4 Errori e performance Un sistema può commettere due tipi di errori: false match, quando i tratti biometrici di due persone distinte sono associati a una stessa persona; false non-match, quando i tratti biometrici di una stessa persona sono associati a due persone distinte. Entrambi possono essere causati dallo scarso contenuto informativo nei campioni biometrici, da limiti nell’estrazione delle feature oppure da problemi concernenti la varianza dei dati (alta intrauser variation o bassa inter-user variation) [2]. La performance di un sistema biometrico si valuta in termini di probabilità attesa di un false match o di un false non-match, ossia rispettivamente il False Match Rate (FMR) e il False Non-Match Rate (FNMR). In caso di sistemi operanti in modalità di verifica, ci si riferisce al False Accept Rate (FAR) e al False Reject Rate (FRR).3 Un match score è detto genuine (o authentic) se indica la similarità tra due mate pairs, e impostor se misura la similarità tra due non-mate pairs. La decisione è presa confrontando il match score ottenuto con una soglia η. Dette ω0 e ω1 la classe impostor e genuine, rispettivamente, otteniamo: 3 FMR e FNMR si riferiscono a una misura della proporzione di tentativi di matching falliti o andati a buon fine, mentre FAR e FRR a una misura della proporzione di transazioni. Una transazione può includere uno o più tentativi di matching. In ogni caso, in molte trattazioni sono considerati sinonimi. [2] 8 Sistemi di riconoscimento biometrico per dispositivi mobili ! 𝐹𝐴𝑅 𝜂 = 𝑝 𝑠 ≥ 𝜂 𝜔! = 𝐹𝑅𝑅 𝜂 = 𝑝 𝑠 < 𝜂 𝜔! = ! ! 𝑝 𝑠 𝜔! 𝑑𝑠 !! 𝑝 𝑠 𝜔! 𝑑𝑠 All’aumentare di 𝜂, il FAR diminuisce, ma il FRR aumenta: non possiamo ridurre entrambi gli errori agendo sulla soglia. Il punto di intersezione tra le due curve è l’EER, Equal Error Rate. Altre misure di valutazione si basano sul GAR, Genuine Accept Rate, come alternativa al FRR; è definito come la frazione di genuine score che 1.3 Probabilità di errore [2] eccede la soglia: 𝐺𝐴𝑅 𝜂 = p 𝑠 ≥ 𝜂 𝜔! = 1 − 𝐹𝑅𝑅 𝜂 La performance di un sistema è stimata per differenti valori della soglia. La curva DET4 riporta il FRR al variare del FAR con le soglie che corrispondono a multipli lineari delle deviazioni standard di una distribuzione normale. Quando è usata una scala lineare, semilogaritmica o logaritmica, si parla di curva ROC5, spesso usata per riportare il GAR al variare del FAR [4]. L’occorrenza di errori non è uniformemente distribuita tra gli utenti di un sistema, ma varia in base al loro grado di “riconoscibilità”. Questo fenomeno è stato studiato da Doddington [5] nel campo del riconoscimento vocale, ma è applicabile a ogni tipo di sistema biometrico [4]. 4 5 Detection Error Tradeoff. Receiver Operating Characteristic. 9 Sistemi di riconoscimento biometrico per dispositivi mobili Capitolo 2: Mobile Biometrics “Biometrics need to go where people go” - e nell’era dell’ubiquitous computing la diffusione capillare del riconoscimento biometrico è facilmente prevedibile quanto inevitabile, proprio in virtù del nascente trend di mercato basato sull’integrazione di tali sistemi ai dispositivi mobili. L’accezione di mobile biometrics è piuttosto ampia: è possibile realizzare dispositivi biometrici mobili che consentano di estendere le funzionalità di un Sistema di Identificazione Biometrico (BIS) stazionario, per garantire sicurezza d’accesso in numerosi contesti, oppure si possono integrare sensori biometrici a smartphone, tablet o notebook per proteggere i dispositivi stessi. Risulta comunque necessario mantenere un livello di performance adeguato: l’utilizzo di hardware compatto in ambienti circostanti imprevedibili porta di fatto una serie di svantaggi in termini di consumo di potenza, robustezza, sicurezza, qualità dei sensori e potenza di calcolo. Le scelte progettuali riguardanti la struttura dei moduli di un generico dispositivo biometrico mobile dipendono essenzialmente dal grado di compattezza e mobilità richiesta dalle sue applicazioni; relativamente al modulo sensore, talvolta sono utilizzati gli stessi componenti hardware e software impiegati nei dispositivi stazionari [6]. Generalmente i sensori devono essere abbastanza robusti da tollerare sudore, polvere, sporco, impatti e variazioni di temperatura e umidità, per garantire anche in queste condizioni un’immagine quantomeno sufficiente all’elaborazione. La compattezza implica una riduzione dell’area a 10 Sistemi di riconoscimento biometrico per dispositivi mobili disposizione per l’acquisizione dei dati, ostacolandone una resa in alta qualità; ne consegue che la scelta del sensore sia particolarmente critica. Inoltre, l’interfaccia richiede un design ergonomico per consentire a un operatore di collezionare facilmente e in modo efficiente e affidabile anche i dati di utenti non pratici o non collaborativi. Generalmente bisogna migliorare il software per compensare i limiti hardware: ad esempio, un’ottimizzazione degli algoritmi di compressione, estrazione dei template o elaborazione delle immagini, atta a ridurne la complessità spaziale e temporale, bilancia almeno in parte i problemi computazionali che la mobilità inevitabilmente comporta. La struttura degli algoritmi biometrici è indipendente dal dispositivo, ma le librerie delle applicazioni biometriche devono essere adattate ai sistemi operativi più diffusi nel campo dei terminali mobili in questione. 2.1 Biometric Solutions using Mobile Devices In ambienti in cui è necessario un BIS centralizzato, come aeroporti o edifici governativi, l’utilizzo di dispositivi portabili velocizza notevolmente i processi di riconoscimento. Le applicazioni con confronto uno-a-molti hanno requisiti stringenti sulla qualità dei template e sulla 2.1 Sistema biometrico centralizzato [7] potenza di calcolo richiesta dagli algoritmi di matching; per questo l’enrollement viene effettuato prevalentemente nelle workstation, quando possibile. In base alle modalità con cui avviene il confronto, il riconoscimento può essere: - Locale, se i dati in input sono confrontati con template memorizzati nel dispositivo stesso o in identificativi in contatto diretto con esso (smartcard, RFID tag, passaporti biometrici…). 11 Sistemi di riconoscimento biometrico per dispositivi mobili - Remoto, se la gallery o il singolo riferimento si trovano memorizzati altrove e risulta necessaria una trasmissione dati wireless con un database centrale; in caso di riconoscimento uno-a-molti, l’algoritmo biometrico è generalmente eseguito da una workstation piuttosto che dal dispositivo mobile stesso [7]. Idealmente, un sistema centralizzato potrebbe supportare dispositivi di vario genere senza dover fare riferimento a un solo produttore; ciò può essere ottenuto realizzando un’interfaccia open e standardizzata tra i dispositivi mobili e il sistema che memorizza i template, che sia il database centrale o una smartcard. Un altro approccio è l’impiego di software indipendente dall’hardware, in modo da migliorare interoperabilità e portabilità (a volte, però, a discapito dell’efficienza del singolo dispositivo). L’interoperabilità e la standardizzazione sono necessarie laddove estrazione delle feature e matching avvengano su dispositivi differenti, poiché i template sono generati da algoritmi proprietari; ad esempio, in relazione al riconoscimento uno-ad-uno effettuato sulla base delle impronte digitali, si utilizzano generatori di template e algoritmi di matching MINEX-certified [8], testati e verificati dal NIST (National Institute of Standards and Technology). Con i recenti miglioramenti della tecnologia impiegata negli smartphone, il DoD ha finanziato un progetto [9] atto a estendere il loro utilizzo come dispositivi multi-biometrici impiegati dalle forze dell’ordine per l’enrollement e il riconoscimento. 2.2 AOptix Stratus [10] 12 Sistemi di riconoscimento biometrico per dispositivi mobili 2.2 Mobile Devices using Biometric Solutions Nel caso degli smartphone, la biometria è prevalentemente utilizzata per la protezione dei dati personali memorizzati nel dispositivo stesso, in sostituzione o in supporto ai PIN, che, come mostrano vari sondaggi realizzati a distanza di tempo [11, 12], risultano spesso insufficienti a garantire un livello di sicurezza adeguato. Per incrementare l’accuratezza e l’efficienza del riconoscimento biometrico sui cellulari bisognerebbe migliorare anche la capacità computazionale e la memoria dei dispositivi, in quanto gli algoritmi adottati sono una semplificazione di quelli utilizzati nella biometria convenzionale. Il mercato degli smartphone sta agendo in questa direzione, e una recente analisi prevede che per il 2016 il 30% delle organizzazioni userà il riconoscimento biometrico per i dispositivi mobili [13]. L’opinione degli utenti mostra una preferenza per la biometria piuttosto che per i tradizionali metodi di sicurezza [14] e recenti analisi della Goode Intelligence [15] prevedono che per il 2017 oltre 990 milioni di dispositivi, sulla scia dell’iPhone 5s, avranno un sensore integrato per il riconoscimento impronte digitali – che sarà trattato più approfonditamente in seguito. 2.3 Tecniche di riconoscimento e applicazioni Le principali modalità di riconoscimento biometrico utilizzate si basano sulle impronte digitali, l’iride e il volto; alcuni approcci sono multi-modali, ossia sfruttano più di una modalità integrandone i risultati. 2.3 FRR e FAR delle principali biometrie [2] Il riconoscimento dell’iride è una tecnica abbastanza recente, accurata e veloce, impiegata anzitutto per la sicurezza di frontiera e il controllo degli accessi. I primi sistemi sviluppati erano costosi e richiedevano 2.4 Tracciamento dell’iride [4] 13 Sistemi di riconoscimento biometrico per dispositivi mobili collaborazione da parte dell’utente; oggi ne sono stati introdotti di nuovi, più performanti, economici e user-friendly. La tecnica di scansione dell’iride cui fanno riferimento gli algoritmi di riconoscimento è stata introdotta da John Daugman nel 1994 (figura 2.5). Il processo inizia con l’acquisizione dell’immagine, con luce diretta e infrarossa; quindi si procede con la segmentazione: l’immagine è analizzata per distinguere l’iride da pupilla e sclera ed eliminare eventuali zone occluse dalle ciglia o compromesse dal riflesso della luce; infine, dal campione ottenuto è generato un IrisCode®, un template di 512 byte usato per il matching. 2.5 Algoritmo di Daugman [16] I vantaggi di questo tipo di riconoscimento si basano sul fatto che l’iride non muti eccessivamente col passare del tempo, e il suo pattern è totalmente casuale: è diverso anche tra gemelli omozigoti. Questi sistemi riportano un FAR particolarmente basso, ma il FRR potrebbe anche raggiungere valori abbastanza elevati [4]. Recenti applicazioni [17] hanno ottenuto una performance ragionevole anche acquisendo l’immagine a distanza, e senza requisiti stringenti per le condizioni 2.6 Iris on the Move [17] d’illuminazione (figura 2.6). Il riconoscimento facciale è un metodo non intrusivo che verifica o identifica automaticamente un individuo, confrontando la gallery di un database con immagini digitali catturate in un ambiente controllato oppure estratte da video in cui il soggetto è in 2.7 Punti nodali [4] 14 Sistemi di riconoscimento biometrico per dispositivi mobili movimento. Gli approcci più popolari sono basati su locazione e forma degli attributi facciali (occhi, sopracciglia, naso, labbra e mento), e sulle loro relazioni spaziali; una faccia ha circa 80 punti nodali, come la distanza intraoculare e la forma degli zigomi, e molti tra questi possono essere misurati automaticamente per ricavare un codice rappresentativo, detto face print. Il riconoscimento facciale si divide generalmente in quattro fasi: la locazione di un volto in un ambiente; la normalizzazione, in termini di posizione e dimensioni; la feature extraction, che dipende dall’algoritmo biometrico utilizzato per generare una rappresentazione numerica; il riconoscimento, ottenuto attraverso il confronto con uno o più template di riferimento. Un buon sistema dovrebbe riconoscere una faccia da una qualunque prospettiva e in differenti ambienti esterni, ma in pratica molte applicazioni hanno difficoltà a identificare uno stesso volto a fronte di variazioni d’illuminazione, inquadratura e background – particolarmente marcate nel caso di dispositivi mobili. Il riconoscimento vocale analizza la forma d’onda prodotta da una persona che parla in un microfono ed è una tecnica di autenticazione usata prevalentemente nei cellulari: l’hardware necessario è già presente, dunque il costo è minimo, ma è richiesta un’ottimizzazione del campione ottenuto per ridurre la distorsione dovuta al canale di comunicazione. La voce è una combinazione di caratteristiche biometriche fisiche e comportamentali, poiché dipende sia da forma e dimensione di corde vocali, bocca, cavità nasali e labbra - tratti invarianti in un individuo usati per emettere il suono - sia dal modo di pronunciare le parole; gli aspetti comportamentali però, al contrario di quelli fisiologici, cambiano con età, stato emozionale o condizioni fisiche (ad esempio, un raffreddore). Un sistema di riconoscimento vocale può essere dipendente dal testo, se si basa sulla pronuncia di una frase predeterminata, oppure indipendente dal testo, se riconosce il parlatore indipendentemente da quel che dice; quest’ultimo è più difficile da realizzare ma offre una maggiore protezione. Il principale svantaggio è la sensibilità al rumore di fondo: per questo ed altri motivi il riconoscimento vocale è inappropriato per un’identificazione su larga scala. Per arginare questo problema il parlatore deve essere molto vicino al microfono, in modo che la sua voce risulti essere il suono dominante. Il software per smartphone più diffuso è Dragon ID, che oltre alla 15 Sistemi di riconoscimento biometrico per dispositivi mobili possibilità di autenticazione sfrutta il riconoscimento vocale per gestire il dispositivo [18]. La keystroke dynamics è una biometria comportamentale basata sull’assunzione che ogni persona digiti su di una tastiera in maniera differente; non è unica per ogni individuo, ma sufficientemente 2.7 Keystroke Dynamics [19] si pensa sia discriminatoria per l’autenticazione, nonostante la larga variazione intra-classe in seguito a cambiamenti di umore o della posizione dell’utente verso il dispositivo. Ci sono differenti caratteristiche da poter prendere in considerazione: la durata della pressione, la latenza, l’ordine con cui sono digitate le lettere maiuscole o l’abitudine a usare il numpad, ma genericamente sono utilizzate solo le prime due. L’autenticazione è definita statica se richiede che un utente digiti solo un testo di prova memorizzato in precedenza; continua se la dinamica di digitazione è costantemente controllata e l’utente potrebbe essere disconnesso durante la sessione, a fronte di variazioni irregolari. Il sistema non è intrusivo, permette una verifica continua dell’identità di una persona e può essere impiegato su cellulari e altri dispositivi senza costi hardware aggiuntivi; però è sensibile a cambiamenti di tastiera e può avere un alto FNMR a causa di cambiamenti della condizione psicologica di chi digita. E’ talvolta utilizzato in alcuni sistemi in modalità continua previa identificazione sulla base di impronte digitali o iride. L’andatura (gait) è una biometria comportamentale riferita al modo di camminare di una persona, e, oltre ad essere impiegata per il riconoscimento a distanza, può essere utilizzata per la protezione di un dispositivo mobile. Studiata inizialmente per scopi clinici, la Worn Sensor (WS) based gait recognition [20] è una tecnica in via di sviluppo che sfrutta un accelerometro associato a un cellulare per l’autenticazione costante del possessore. Sono 16 Sistemi di riconoscimento biometrico per dispositivi mobili state fatte diverse ricerche con smartphone portati in tasca, sia con accelerometri di buona qualità che con quelli integrati in un comune cellulare, e i risultati migliori mostrano un EER pari a 7.3% nel primo caso, e 20.1% nel secondo [21]. Questa biometria non è ancora sufficientemente affidabile da poter essere applicata in pratica e sono necessari ulteriori studi su estrazione delle feature e matching per migliorarne la performance, ma i progressi ottenuti sono considerati promettenti. L’elettrocardiogramma descrive la variazione (ECG) dell’attività cardiaca di una persona e possiede dettagli sufficienti all’identificazione, oltre che un’intrinseca robustezza agli attacchi esterni e la possibilità di verificare continuamente un’identità. 2.8 Elettrocardiogramma L’aspetto principale degli studi sul riconoscimento dell’ECG riguarda l’analisi delle variazioni intra-classe, data la sensibilità al rumore e allo stato emozionale e fisico di un individuo; sono dunque necessari degli algoritmi indipendenti dalle irregolarità quotidiane e capaci di minimizzare il numero di battiti impiegati per il riconoscimento, oltre al tempo di processing. Recentemente la start-up Bionym ha ideato il braccialetto Nymi che si pone l’obiettivo di accedere a qualunque dispositivo ad esso collegato sostituendosi a password, PIN, smart-card e chiavi, sfruttando sensori che controllano l’attività cardiaca e trasmettono 2.9 Nymi comandi attraverso la percezione del gesto compiuto. 17 Sistemi di riconoscimento biometrico per dispositivi mobili Capitolo 3: Fingerprint Recognition Il sistema di riconoscimento biometrico più diffuso, tanto in campo investigativo e giuridico quanto in quello civile, si basa sull’analisi delle impronte digitali. La prima tecnica sviluppata per fissarne un’immagine è l’ink-tecnique, ossia l’imprinting con l’inchiostro, tutt’oggi ancora usata dalle forze dell’ordine in particolari circostanze [22]. Circa 30 anni fa sono stati introdotti i moderni metodi live-scan, correntemente impiegati nella maggior parte delle applicazioni, ma le tecniche off-line sono ancora utilizzate nel settore investigativo (ad esempio, per rilevare tracce latenti). Dunque i database IAFIS contengono scansioni di impronte ottenute attraverso tecniche differenti, moderne e non; gli algoritmi di matching devono essere in grado di interoperare con ogni tipo di campione, fermo restando che per poter inserire dei template nel database centrale bisogna accertarsi rispettino gli standard di leggibilità imposti [23], riguardanti risoluzione, area, numero di pixel, range dinamico, accuratezza geometrica e qualità dell’immagine. Analizziamo i diversi moduli che compongono il generico dispositivo biometrico, comuni a sistemi stazionari e terminali mobili. 2.1 Sensori I moderni sensori live-scan possono essere ottici, a infrarossi o a stato solido. Nei dispositivi mobili sono usati principalmente questi ultimi, che si distinguono per la loro compattezza: sono costituiti da una piattaforma di silicio formata da una matrice di pixel (micro-sensori) su cui l’utente poggia il dito; l’informazione può essere convertita in segnale elettrico attraverso diverse tecniche: capacitive, termiche, a campo elettrico e 18 Sistemi di riconoscimento biometrico per dispositivi mobili piezoelettrico. I più diffusi sono di tipo capacitivo, in grado di catturare buone immagini anche in condizioni non ideali (dito umido o secco); hanno però bisogno di una pulizia frequente delle proprie superfici, per evitare che il grasso o lo sporco possano compromettere la qualità delle acquisizioni. Per ridurre costo e dimensioni, è stato introdotto il sensore di tipo lineare, o swipe: l’utente deve trascinare il dito sulla superficie con un movimento verticale, invece di toccarla 3.1 Swipe su Thinkpad solamente, e i vari campioni ottenuti (slice) saranno poi composti in un’unica immagine. Spesso l’area viene ridotta anche nei sensori touch, sia per motivi di costo che di praticità; ne consegue la necessità di acquisizioni multiple e parzialmente sovrapposte, che saranno composte in un’immagine finale da un 3.2 Composizione di un’impronta [24] algoritmo di mosaicking. 2.2 Feature Extraction Osservando l’immagine di un’impronta digitale è possibile notare le creste e le valli, rispettivamente le righe scure e chiare che ne caratterizzano il pattern, e dei tratti dalle particolari conformazioni, dette singolarità e minuzie. Le singolarità s’individuano analizzando globalmente l’impronta, e sono regioni dalla forma ben definita; le minuzie sono invece caratteristiche locali indicanti le discontinuità delle creste e, sebbene se ne possano individuare di varie, nella pratica si considerano prevalentemente terminazione e biforcazione. 19 Sistemi di riconoscimento biometrico per dispositivi mobili 3.3 Singolarità e minuzie [24] Le minuzie possono essere categorizzate in base alla classe, alle coordinate cartesiane x e y e all’angolo θ che si forma tra la tangente alla linea della cresta sul punto di minuzia e l’asse orizzontale. Le 3.4 Minuzia [24] feature estratte non fanno riferimento solo alla presenza di singolarità e minuzie; possono anche non essere associate direttamente a una caratteristica fisica, come nel caso di orientamento locale, frequenza e risposta del filtro, usate sia per il matching sia per poterne derivare di nuove. La fase di feature extraction è composta di vari passaggi intermedi atti a migliorare la qualità dell’immagine in ingresso, per facilitare l’estrazione delle caratteristiche salienti del campione e la creazione del template. Possiamo schematizzare i vari passaggi come in figura 3.5. L’orientamento locale al punto (x, y) è l’angolo 𝜃!" che l’asse orizzontale forma con la cresta passante per un intorno centrato in (x, y) arbitrariamente piccolo. La frequenza o densità locale 𝑓!" al punto (x, y) è il numero di creste per unità di lunghezza lungo un ipotetico segmento centrato in (x, y) e ortogonale a 𝜃!" [4]. La loro computazione è effettuata nelle fasi iniziali poiché sarà utile per le 20 3.5 [24] Sistemi di riconoscimento biometrico per dispositivi mobili operazioni successive, tra cui il miglioramento della qualità dell’immagine, la segmentazione e l’individuazione di singolarità e minuzie. La segmentazione separa l’area dell’impronta dal background dell’immagine; in seguito si individuano le singolarità e il metodo principale impiegato si basa sull’indice di Poincaré, operante sull’immagine di orientamento dell’impronta, una matrice i cui elementi rappresentano l’orientamento locale delle creste. Nel caso delle singolarità delle impronte digitali, l’indice di Poincaré assume i seguenti valori: 0° (nessuna singolarità); 360° (whorl); 180° (loop); -180° (delta). Il sistema deve valutare sulla base della qualità dell’immagine se sia possibile procedere con l’algoritmo di matching o meno; le impronte possono essere intrinsecamente poco definite, inoltre la bontà dell’immagine potrebbe essere stata inficiata da secchezza del dito, sudore o eventuali distorsioni non lineari dovute al sensore. E’ dunque necessario un controllo di qualità, atto a scartare le immagini particolarmente danneggiate o migliorarle quando possibile. Una tecnica spesso utilizzata si basa sull’aumento del contrasto tra valli e creste grazie all’applicazione di un banco di filtri di Gabor [22]. Infine, si estraggono le minuzie, direttamente dall’immagine in scala di grigi oppure dopo averla sottoposta a processi di binarizzazione e assottigliamento (lo spessore delle linee che definiscono le creste è ridotto a 1px). 2.3 Matching Le immagini di una stessa impronta digitale potrebbero sembrare diverse tra loro a causa delle differenti circostanze in cui sono state catturate; bisogna arginare eventuali problemi dovuti a distorsione non lineare, rotazione, umidità nell’aria e temperatura dell’ambiente esterno, come alla diversa pressione applicata all’atto della scansione del dito e alle condizioni dello stesso durante il contatto con il sensore (sudore, secchezza, sporco, grasso). Gli algoritmi di matching, che devono far fronte a queste e altre problematiche, possono essere divisi in tre categorie principali in relazione all’approccio su cui si basano: cross21 Sistemi di riconoscimento biometrico per dispositivi mobili correlazione, minuzie e feature delle creste. Le tecniche basate sulla cross-correlazione (CC) prevedono la sovrapposizione dell’immagine in input (I) e del template (T), seguita dal calcolo della loro similarità (S) per diversi allineamenti: 𝑆 𝑇, 𝐼 = 𝑚𝑎𝑥∆!,∆!,! 𝐶𝐶(𝑇, 𝐼 ∆!,∆!,! ) Per limitarne la complessità temporale, nella pratica si esegue una correlazione locale o una correlazione nel dominio di Fourier. Il metodo più diffuso si basa sull’analisi delle minuzie, estratte da I e T e trasposte in un piano bidimensionale. Lo scopo di questa tecnica consiste nel trovare l’allineamento tra i due set di minuzie che ne massimizza gli accoppiamenti. Dati i due set: 𝑇 = 𝑚! … 𝑚! ; 𝑚! = 𝑥! , 𝑦! , 𝜃! ; 𝑖 = 1. . 𝑚 𝐼 = 𝑚′! … 𝑚′! ; 𝑚′! = 𝑥′! , 𝑦′! , 𝜃′! ; 𝑗 = 1. . 𝑛 Due minuzie sono considerate un accoppiamento se la loro distanza spaziale sd e la differenza di direzioni dd sono minori-uguali delle rispettive tolleranze, dove: 𝑠𝑑 𝑚′! , 𝑚! = 𝑑𝑑 𝑚′! , 𝑚! = min (𝑥 !! − 𝑥! )! + (𝑦 ! ! − 𝑦! )! ≤ 𝑟! 𝜃 !! − 𝜃! , 360° − 𝜃 !! − 𝜃! ≤ 𝜃! Per allineare dei campioni sono necessarie operazioni di traslazione e rotazione: sia map( ) la funzione che mappa una minuzia 𝑚′! di I in 𝑚′′! in base a una data trasformazione geometrica (ad esempio, una traslazione di [∆𝑥, ∆𝑦] e una rotazione antioraria di 𝜃 intorno all’origine). 𝑚𝑎𝑝∆!,∆!,! (𝑚′! = 𝑥′! , 𝑦′! , 𝜃′! ) = 𝑚′′! = 𝑥′′! , 𝑦′′! , 𝜃′! + 𝜃 con 𝑥 !!! 𝑐𝑜𝑠𝜃 = !! 𝑦 ! 𝑠𝑖𝑛𝜃 ! ∆𝑥 −𝑠𝑖𝑛𝜃 𝑥 ! ! + ∆𝑦 𝑐𝑜𝑠𝜃 𝑦 ! Definiamo: 22 Sistemi di riconoscimento biometrico per dispositivi mobili 𝑚𝑚 𝑚!!! , 𝑚! = 1 𝑠𝑑 𝑚!!! , 𝑚! ≤ 𝑟! 𝑒 𝑑𝑑 𝑚!!! , 𝑚! ≤ 𝜃! 0 𝑎𝑙𝑡𝑟𝑖𝑚𝑒𝑛𝑡𝑖 Dunque il problema del matching può essere formulato come segue: ! 𝑚𝑚( 𝑚𝑎𝑝∆!,∆!,! 𝑚! ! 𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒∆!,∆!,!,! = ! , 𝑚! ) !!! P(i) rappresenta la funzione incognita che determina l’accoppiamento tra le minuzie di I e T; in particolare, ogni minuzia di un set è associata o ad una e una sola minuzia nell’altro set, o a nessuna. In generale P(i)=j non implica necessariamente che m’j e mi siano un accoppiamento rispettante le condizioni su sd e dd, ma le indica come la coppia più probabile data la trasformazione applicata. Risolvere il problema del matching non è semplice, poiché nella pratica i parametri di un corretto allineamento e la funzione di corrispondenza P sono ignoti. Questo tipo di matching è detto globale; sono state proposte altre soluzioni che confrontano due impronte sulla base di strutture locali delle minuzie, invarianti rispetto a trasformazioni globali. Queste tecniche sono meno precise, poiché analizzano una minore quantità di informazioni, ma in compenso sono meno complesse computazionalmente e tollerano meglio la distorsione. Gli approcci basati sull’analisi delle minuzie possono essere difficili da applicare in pratica, soprattutto in caso di immagini di bassa qualità, e presentano un’elevata complessità temporale; per aumentare la sicurezza e la robustezza del sistema sono state sviluppate nuove tecniche, tra cui il FingerCode approach, proposto da Jain nel 2000 e schematizzato in figura 3.7. Per migliorare l’accuratezza dei sistemi di riconoscimento basati sulle impronte digitali, la soluzione più promettente si basa sull’integrazione di approcci differenti, ognuno dei quali analizza differenti caratteristiche dell’immagine. 23 Sistemi di riconoscimento biometrico per dispositivi mobili 3.7 FingerCode [22] 2.4 Applicazioni Touch ID è un sensore sviluppato da AuthenTec, integrato nel tasto home dei dispositivi Apple iPhone 5s; a stato solido, di tipo capacitivo, è ricoperto da cristallo di zaffiro per evitare un rapido degrado dei mini-capacitori. E’ possibile aggirarlo attraverso l’utilizzo di impronte artificiali, come recentemente dimostrato [26]. Inoltre, è stato annunciato che il nuovo Samsung Galaxy 5 sarà anch’esso capace di memorizzare le impronte digitali attraverso un sensore swipe. Non sarà utilizzato solo per l’accesso al dispositivo, ma anche per autenticare transazioni su PayPal [27]. 3.8 Touch ID [25] 24 Sistemi di riconoscimento biometrico per dispositivi mobili Capitolo 4: Sicurezza e Liveness Detection L’impiego del riconoscimento biometrico in campo governativo e commerciale è in aumento, così come la sua diffusione su dispositivi mobili quali smartphone, notebook e tablet; per garantire la protezione di dati sensibili, è necessario che i dispositivi biometrici siano in grado di far fronte a differenti tipologie di attacchi esterni. La sicurezza è particolarmente problematica nel caso dei dispositivi mobili, che, essendo compatti, possono essere rubati più facilmente. I dati biometrici devono essere ben protetti anche per questioni di privacy, e sebbene risulti complicato risalire ai campioni originali partendo dal template, è stato recentemente dimostrato che una ricostruzione delle immagini memorizzate è comunque fattibile [4]. Per aumentare la sicurezza del sistema, il template può essere protetto con diverse tecniche, tra cui cifratura, watermarking o steganografia. Inoltre, l’utilizzo di dispositivi multi-biometrici può aumentare la sicurezza del sistema, oltre che migliorarne l’accuratezza. Le vulnerabilità di un sistema biometrico sono classificate come segue [4]: circonvenzione, l’accesso a risorse protette sovvertendo il sistema; contaminazione, l’uso di informazioni biometriche sottratte agli utenti legittimi; collusione e coercizione, quando un utente legittimo entra impropriamente nel sistema, rispettivamente sotto corruzione o costrizione; denial of service (DoS), causante rallentamenti e interruzioni al sistema per impedirne l’utilizzo; ripudio, quando l’attaccante nega di aver avuto accesso al sistema. 25 Sistemi di riconoscimento biometrico per dispositivi mobili 3.1 Punti di attacco Gli attacchi a un sistema possono avvenire su uno o più sottosistemi, aventi i seguenti punti di vulnerabilità [28]: 4.1 Punti di attacco [28] 1. Un attacco al sensore, tipicamente detto spoofing, consiste nel presentare al sistema un tratto biometrico contraffatto. 2. Un attacco tra il sensore e il sistema consiste nella manipolazione del canale di comunicazione per introdurre segnali arbitrari; di norma consiste in un replay attack, ossia il riutilizzo fraudolento di informazioni legittime immesse in precedenza. 3. Un attacco al modulo di feature extraction è effettuato per mezzo di un trojan horse, ed è finalizzato a evitare il riconoscimento di un individuo o ad accedere al sistema sotto falsa identità; consiste nella produzione di un feature set predeterminato in seguito all’evento o alla condizione di trigger. 4. Si può sostituire il feature set del campione in input con uno contraffatto, attaccando il canale tra il modulo di estrazione delle feature e il sistema; se i dati sono trasmessi a un matcher remoto, come nel caso di utilizzo delle smart-card, questa minaccia è molto realistica. 5. Il matcher è attaccato da un trojan per produrre falsi risultati e manipolare così la decisione finale. 6. I template nel database sono modificati per garantire l’accesso al sistema a un individuo non autorizzato, o il rifiuto di un utente legittimo. 26 Sistemi di riconoscimento biometrico per dispositivi mobili 7. Uno o più template sono intercettati nel canale di comunicazione tra database e matcher, e vengono successivamente alterati. 8. La decisione finale o il matching score è sovrascritto. 3.2 Spoofing e Liveness Detection Lo spoofing consiste nel presentare dati biometrici contraffatti in ingresso al sensore; ad esempio, un dito di gomma, una maschera per camuffare il volto, iridi false e occhi artificiali. Non esistono metodi capaci di rilevare ottimamente tutte le tipologie di spoofing, ma è possibile combinare diverse tecniche in grado di fronteggiarne alcuni. Un sistema biometrico può evitare alcune tipologie di attacco garantendo la liveness, cioè la “vitalità”, dell’individuo in questione; si basa sul riconoscimento dei segni di vita di una persona, per mezzo di informazioni già catturate dal sensore oppure acquisite da dispositivi secondari. Il test della vitalità, ovviamente, non evita attacchi al sistema che non dipendano dalla misurazione del tratto biometrico in ingresso; è utile fintantoché il sensore o i canali di comunicazione non siano stati compromessi. Relativamente alle impronte digitali, i sensori devono individuare caratteristiche alternative per sincerarsi che il dito posto in ingresso sia reale e appartenente a una persona viva. Ad esempio, si possono analizzare la temperatura e la sudorazione dell’epidermide, la conduttività del dito, il battito cardiaco, la pulsazione sanguigna e il pattern delle impronte negli strati interni all’epidermide. Ad esempio, usando un sensore capacitivo è possibile catturare le impronte a distanza di un determinato periodo, ed estrarre caratteristiche in merito alla vitalità. 4.2 Impronta di un essere umano (destra) e di un cadavere (sinistra) dopo 0.5 s 27 Sistemi di riconoscimento biometrico per dispositivi mobili Nel caso dell’iride sono stati studiati diversi approcci, tra cui: - Tecniche che analizzano le dinamiche della pupilla e il movimento dell’occhio, in grado di rilevare occhi di vetro e gomma, iridi stampate su lenti a contatto e occhi appartenenti a persone decedute – oppure separati dai legittimi proprietari; - Tecniche basate sui coefficienti di riflessione della luce a diverse lunghezze d’onda, in grado di riconoscere occhi artificiali; - Tecniche basate sull’analisi qualitativa della texture, capaci di distinguere lenti a contatto e stampa 2D. 28 Sistemi di riconoscimento biometrico per dispositivi mobili Conclusioni I sistemi biometrici sono in grado di riconoscere una persona in maniera più efficace rispetto ai tradizionali sistemi di autenticazione, poiché si basano sull’individuo stesso e non su rappresentazioni della sua identità. Introdotti come sistemi stazionari, si stanno diffondendo anche nel campo dei dispositivi mobili, migliorando le applicazioni esistenti e introducendone di nuove. Con la crescita del mercato degli smartphone e l’aumento delle loro funzionalità, la biometria troverà larga applicazione, sia per la protezione dei dispositivi che per l’accesso ai dati ivi contenuti. Tali sistemi non sono però inattaccabili; oltre all’ottimizzazione degli algoritmi per migliorare i tassi di riconoscimento, la ricerca si occupa anche dello sviluppo di nuove tecniche per incrementarne la sicurezza. In particolare, recenti studi sono focalizzati su approcci multi-biometrici e liveness detection, che dovrebbe essere sempre impiegata nei moderni algoritmi. 29 Bibliografia [1] A.K.Jain, A.Ross, S.Prabhakar, An Introduction to Biometric Recognition, IEEE Transactions on Circuits and Systems for Video Technology, Special Issue on Image and Video-Based Biometrics 14 (1) (2004) 4–20. [2] A.K.Jain, A.Ross, K. Nandakumar, Introduction to Biometrics, Springer, 2011. [3] A.K.Jain, Stan Z. Li, Encyclopedia of Biometrics, Springer, 2009, p. 64. [4] A.K.Jain, A.Ross, Introduction to Biometrics, Handbook of Biometrics, Springer, 2008. [5] G. Doddington, W. Liggett, A. Martin, M. Przybocki, D. Reynolds, SHEEP, GOATS, LAMBS and WOLVES, A Statistical Analysis of Speaker Performance, NIST 1998 Speaker Recognition Evaluation. [6] D. Benini, Getting Started - Mobile Biometrics, September 2013 Update, p. 5. Planet Biometrics, http://www.planetbiometrics.com/mobile-biometrics/, 17/02/2014. [7] Mobile Biometric Identification – White Paper, Motorola Solutions, http://www.motorolasolutions.com, 20/02/2014. [8] NIST - MINEX, Minutiae Excange, http://www.nist.gov/itl/iad/ig/minex.cfm, 19/02/2014. [9] “AOptix Teams with CACI to Develop Smart Mobile Identity Devices for U.S. Department of Defense”, AOptix, http://www.aoptix.com/news/pressreleases/aoptix-teams-with-caci-to-develop-smart-mobile-identity-devices-for-usdepartment-of-defense, 22/02/2014. [10] “AOptix Releases $200 Biometric Scanning App for iPhone”, iClarified, http://www.iclarified.com/29024/aoptix-releases-200-biometric-scanning-app-foriphone, 24/02/2014. [11] N.L Clarke, S.M. Furnell, Authentication of Users on Mobile Telephones – A Survey of Attitudes and Practices. Computers & Security, 24(7), pp. 519-527, 2005. [12] S. Kurkovsky, E. Syta, Digital natives and mobile phones: A survey of practices and attitudes about privacy and security, Technology and Society (ISTAS), 2010. 30 [13] “30% of organizations to use biometrics with mobile devices by 2016”, Planet Biometrics, http://www.planetbiometrics.com/article-details/i/1881/, 23/02/2014. [14] “Biometrics – a hot consumer trend of 2014, says Ericsson”, Planet Biometrics, http://www.planetbiometrics.com/article-details/i/1825/, 23/02/2014. [15] “Over 990 million mobile devices to have fingerprint sensors by 2017”, Planet Biometrics, http://www.planetbiometrics.com/article-details/i/1817/, 23/02/2014. [16] J. G. Daugman, Biometric personal identification system based on iris analysis, United States Patent, US5291560, 01/03/1994. [17] Iris On The Move Biometric Identification System, sri.com, http://www.sri.com/engage/products-solutions/iris-move-biometric-identificationsystems, 24/02/2014. [18] “Nuance Announces Dragon ID Voice Biometrics for Mobile”, BusinessWire, http://www.businesswire.com/news/home/20120605005819/en/Nuance-AnnouncesDragon-ID-Voice-Biometrics-Mobile#.Uw0j-F6dLoc, 24/02/2014. [19] H. Saevanee, P. Bhatarakosol, User Authentication using Combination of Behavioral Biometrics over the Touchpad acting like Touch screen of Mobile Device, International Conference on Computer and Electrical Engineering, 2008, p.84. [20] D. Gafurov, A survey of biometric gait recognition: Approaches, security and challenges, Annual Norwegian Computer Science Conference, 2007. [21] M.O. Derawi, C. Nickel, P. Bours, C.Busch, Unobtrusive User-Authentication on Mobile Phones using Biometric Gait Recognition, Intelligent Information Hiding and Multimedia Signal Processing (IIH-MSP), 2010 Sixth International Conference on, 15-17 Oct. 2010, 306 – 311. [22] M. Tistarelli, J. Bigun, E. Grosso, Advanced Studies in Biometrics, Summer School on Biometrics, June 2003. [23] The FBI Federal Bureau of Investigation, http://www.fbi.gov/aboutus/cjis/fingerprints_biometrics/recording-legible-fingerprints/takingfps, 20/02/14. [24] D. Maltoni, D. Maio, A.K. Jain, S. Prabhakar, Handbook of Fingerprint Recognition, Second Edition, Springer, 2009. [25] iPhone 5S teardown, iFixit, http://www.ifixit.com/Teardown/iPhone+5s+Teardown/17383/, 24/02/2014. [26] Is touch id hacked yet? http://istouchidhackedyet.com/, 25/02/2014. [27] “Samsung Galaxy S5, il lettore di impronte digitali”, webnews.it, http://www.webnews.it/video/samsung-galaxy-s5-il-lettore-di-impronte-digitali/, 25/02/2014. 31 [28] NK Ratha, JH Connell, RM Bolle, Biometrics break-ins and band-aids, Pattern Recognition Letters, 2003 – Elsevier. 32
© Copyright 2024 ExpyDoc