POLITECNICO DI BARI Sicurezza informatica Prof. Giuseppe Mastronardi
DLgs 196/03 ALLEGATO B: DISCIPLINARE TECNICO IN MATERIA DI MISURE MINIME DI SICUREZZA Sistema di autenticazione informatica 2. Le credenziali di autenticazione consistono in un codice per l'identificazione dell'incaricato associato a una parola chiave riservata conosciuta solamente dal medesimo oppure in un dispositivo di autenticazione in possesso e uso esclusivo dell'incaricato, eventualmente associato a un codice identificativo o a una parola chiave, oppure in una caratteristica biometrica dell'incaricato, eventualmente associata a un codice identificativo o a una parola chiave. 3. Ad ogni incaricato sono assegnate o associate individualmente una o più credenziali per l'autenticazione. 4. Con le istruzioni impartite agli incaricati è prescritto di adottare le necessarie cautele per assicurare la segretezza della componente riservata della credenziale e la diligente custodia dei dispositivi in possesso ed uso esclusivo dell'incaricato. 6. Il codice per l'identificazione, laddove utilizzato, non può essere assegnato ad altri incaricati, neppure in tempi diversi. 8. Le credenziali sono disattivate anche in caso di perdita della qualità che consente all'incaricato l'accesso ai dati personali. 9. Sono impartite istruzioni agli incaricati per non lasciare incustodito e accessibile lo strumento elettronico durante una sessione di trattamento. 2
Why? Possibili metodi di autenticazione utilizzabili in applicazioni di sicurezza: qualcosa che si conosce: un codice segreto, una data, una chiave.... qualcosa che si ha: una chiave, una smart card, un token... qualcosa che è parte dell'utente: una biometria 3 Sistema di autenticazione basato sulla voce
Un controllo automatizzato degli accessi può essere ottenuto mediante un sistema di riconoscimento vocale costituito da due moduli: gestione dei profili autorizzati: addestramento dei modelli acustici di ciascun profilo autorizzato. interazione con gli utenti che desiderano accedere ad un’area controllata e che effettua il riconoscimento. 4
Un sistema automatico per il riconoscimento del parlatore (i.e. verifica dell’identità dichiarata) è costituito da due fasi: addestramento del sistema autenticazione Estrazione dei coefficienti MFCC Coeff. statici Coeff. ΔΔ Segnale vocale del parlatore S VQ-codebook Archivio dei modelli dei parlatori Algoritmo LBG Riconoscimento del parlatore (1) 5
Un sistema automatico per il riconoscimento del parlatore (i.e. verifica dell’identità dichiarata) è costituito da due fasi: addestramento del sistema autenticazione Estrazione dei coefficienti MFCC Segnale vocale ID parlatore (parlatore S) VQ-codebook del parlatore S Quantizzazione vettoriale Logica decisionale Esito: Accept / Reject Riconoscimento del parlatore (2) 6
MFCC: Mel Frequecy Cepstral Coefficients In dettaglio … Def: nell’elaborazione del suono, il mel-frequency cepstrum è una rappresentazione dello spettro di potenza di piccole porzioni del segnale, ottenuta mediante una trasformazione coseno lineare del logaritmo dello spettro di potenza calcolata su una scala delle frequenze non lineare, nota come scala Mel. Le performance del sistema di riconoscimento del parlatore possono essere incrementate aggiungendo anche le derivate dei coefficienti cepstrali, in particolare molto efficiente risulta essere la derivata seconda. 7
MFCC: elaborazione In dettaglio … 8 segnale vocale Estrazione dei parametri Divisione in frame Finestra mento FFT | | 2 Banco dei filtri log Trasformazione cepstrale mediante DCT Trasformazione cepstrale mediante DCT Vettori cepstrali S(f) c(n)
L’algoritmo LBG (Linde-Buzo-Gray) Sfrutta lo stesso approccio usato dell’algoritmo k-means nel clustering partitivo per realizzare una quantizzazione vettoriale k-dimensionale a n- livelli; i vettori acustici sono quantizzati con n vettori detti centroidi (o codeword). L’algoritmo LBG definisce l’errore medio di quantizzazione MQE (Mean Quantization Error) come l’errore (distorsione) che si commette clusterizzando lo spazio dei vettori acustici x con la partizione S: Obiettivo: trovare l’insieme dei cluster (la partizione ottimale) che renda minimo MQE. In dettaglio … 9
L’algoritmo LBG : applicazione In dettaglio … Copyright © Minh N. Do Training vectors as points in a 2D spaceFirst step, the centroid of the entire setSplit the centroid into twoNearest-neighbor search, result in 2 clustersUpdate the centroid from each clusterRepeat nearest-neighbor searchAnd repeat centroid updateUntil the centroids are stable (end of the inner loop)Repeat outer loop, double the number of centroids by splittingIterate inner loop until the centroids are stableContinue...8 centroidsAnd...Finally, stop when the desired number of centroids is obtained
Addestramento: utilizza l’algoritmo LBG per generare un codebook (modello acustico) per ogni parlatore Riconoscimento: i vettori acustici sono vettor-quantizzati con il codebook di un parlatore e si calcola la distorsione media complessiva: d(x i,y * ) = distanza euclidea tra il vettore acustico i-esimo ed il codeword a cui è stato assegnato (il codeword più vicino). Vector Quantization In dettaglio … 11
12 coefficienti, 128 codeword, soglia Dinamica (tecnica Cohort), teta=0.95 Veri positiviFalsi positivi 100 %1,42 % Falsi negativiVeri negativi 0 %98,58 % MFCC + VQ: prestazioni In dettaglio … - 15 (12 M e 3 F) parlatori “autorizzati” - 15 (12 M e 3 F) parlatori che costituiscono il modello di background - 22 (17 M e 5 F) impostori 12