Provare per credere: cercando su Google "database impronte centralizzato", si visitano pagine dove si afferma che vi sono dei sistemi che consentono l'autenticazione biometrica tramite database centralizzato delle impronte, assicurando la riservatezza delle caratteristiche biometriche degli utenti, poichè sarebbero trasformate in una sequenza numerica mediante funzione hash.
Le descrizioni continuano dicendo che, dato che le funzioni hash sono invertibili, è impossibile a partire da quanto memorizzato nel database centralizzato risalire all'impronta dell'utente.
Fino qui teoricamente tutto bello, tuttavia... ...peccato che un sistema così congegnato non possa funzionare! Vediamo di capire perchè.
Di vero nella suddetta affermazione c'è che:
1) le funzioni hash sono invertibili
2) se sottoposta a funzione hash, dall'hash stesso non è possibile ricavare l'impronta originale.
Direi tuttavia che è improbabile che questo sistema consenta di autenticare gli utenti. Infatti:
a) tra le caratteristiche delle funzioni hash utilizzate in ambito sicurezza, vi è la bassissima probabilità di generare collisioni, ovvero che a partire, ad esempio, da due impronte diverse si ottenga lo stesso hash. Questo assicurerebbe che a partire da una impronta illegittima si possa ottenere un accesso autorizzato in vece del vero utente. Fino qui tutto bene.
b) per garantire il suddetto requisito, da due sequenze di bit molto simili una tipica funzione hash produce output molto diversi. Questo assicura che non si possa costruire ad arte una collisione, mediante tentativi finalizzati a riprodurre un hash sempre più rassomigliante a quello dell'impronta originaria. Anche questo è un fatto positivo.
Ma veniamo al punto. La verifica biometrica di una impronta avviene a partire da una immagine, che dopo essere acquisita viene elaborata per estrarre le caratteristiche principali dell'impronta stessa, le cosiddette minutiæ.
Come è possibile che due acquisizioni di immagine di impronte siano perfettamente uguali?
Non è possibile: il dito dovrebbe non aver subito alcuna variazione, le condizioni di temperatura e umidità dell'utente ed ambientali dovrebbero essere esattamente le stesse, il dito dovrebbe trovarsi esattamente nella stessa posizione (a meno di una manciata di DPI, in funzione della risoluzione del lettore biometrico), il lettore dovrebbe essere sostanzialmente sterile per garantire che eventuale sporcizia non ne alteri la capacità di lettura, e l'utente dovrebbe esercitare esattamente la stessa pressione sul lettore (sapete com'è... la pelle è molliccia....). Etc... etc... etc...
Quindi: se due acquisizioni successive non possono dare la medesima immagine, non produrranno template identici, a meno che questi non siano calcolati in modo talmente grossolano da rendere il confronto biometrico assolutamente non sicuro.
Se non si hanno template identici, gli hash generati a partire dagli stessi saranno molto diversi, quindi non confrontabili.
Quindi una soluzione del genere non funziona!
Altrimenti, perchè non vi sono sistemi di cifratura che utilizzerebbero le impronte acquisite "live" come chiave? Infatti esistono, al contrario, sistemi di cifratura che solo a seguito di un match biometrico forniscono l'accesso a "wallet" di chiavi da utilizzare nei vari servizi locali e remoti!
Perchè quindi affermare l'esistenza di una simile tecnologia?
Alla prossima puntata...
0 commenti:
Posta un commento