Una pratica piuttosto comune quando si tratta di censurare password o altri tipi di informazioni sensibili nelle immagini è applicare il classico «pixelato». Esiste anche la possibilità di usare distorsione direzionale o bombardare l'immagine con rumore, ma in generale, i pixel sono più popolari. Ora, immagina un meccanismo per recuperare la password da immagini pixelate. Il progetto Depix punta in questa direzione, e anche se ha poco più di due mesi di sviluppo, il suo potenziale è enorme.
Pixel e «informazione persa»
A metà dello scorso anno abbiamo parlato di Face Depixelizer, una piattaforma di intelligenza artificiale che può creare immagini percettivamente realistiche a partire da volti pixelati. Il problema è che molte persone sul Web hanno creduto che questa tecnologia permettesse di identificare volti censurati, quando in pratica non è così. In effetti, tutto ciò che presenta l'algoritmo è «inventato», e a giudicare dai suoi risultati originali, ha un'immaginazione molto ampia.
Tuttavia, il concetto di recupero parziale diventa praticabile a seconda del materiale da elaborare. Ad esempio, pensa a una password pixelata. L'informazione originale viene distrutta, ma in questi casi non serve un risultato perfetto: è più che sufficiente conoscere la struttura generale della password (diciamo, quanti caratteri ha in totale) o alcune delle sue lettere per sviluppare un attacco più elaborato e preciso.
Come recuperare una password da immagini pixelate con Depix
Questo ci porta al progetto Depix di Sipke Mellema, che ha pubblicato a dicembre 2020 un articolo intitolato «Recovering passwords from pixelized screenshots». Lì spiega il processo base della pixelizzazione e la storia di alcuni algoritmi usati per «smascherare», che risalgono addirittura a metà degli anni '90.
Come funziona esattamente? Il cosiddetto «filtro a scatola lineare» (nome formale per il pixelato) utilizza un algoritmo deterministico. In altre parole, se decidiamo di pixelare lo stesso valore più e più volte, otterremo sempre lo stesso risultato. E il testo non è immune a questo. Ecco un esempio della lettera J, ripetuta sotto lo stesso filtro.
Ciò che fa Depix è analizzare e confrontare questi pattern, nel tentativo di identificare lettere, numeri e simboli specifici. Non è un lavoro semplice: l'algoritmo richiede la stessa dimensione del testo e lo stesso colore di sfondo. Depix riesce a compensare utilizzando come base un'immagine che contiene una sequenza di De Bruijn di tutti i caratteri possibili.
Dettagli tecnici e conclusione
Tecnicamente, Depix è uno script Python, e qualsiasi ambiente predisposto dovrebbe essere in grado di eseguirlo. Personalmente consiglio di usare una distribuzione Linux e di prestare attenzione alla sezione delle dipendenze, poiché non tutte le distro hanno gli elementi adatti. Un altro aspetto da evidenziare è che Depix si prende il suo tempo. Tutto dipende dalla lunghezza del pixelato da elaborare, ma abbiamo sempre visto lo script usare un solo core.
Per quanto riguarda i risultati, la nostra esperienza iniziale è stata piuttosto scarsa. Forse sarà necessario regolare un po' le condizioni preliminari dell'immagine pixelata, ma non abbiamo dubbi che le sue prestazioni miglioreranno con il tempo. Visita il profilo di Depix su GitHub e prova tu stesso.
Sito ufficiale: Clicca qui