Oto, jak można w sprytny sposób odczytać rozpikselowany tekst

Strona głównaOto, jak można w sprytny sposób odczytać rozpikselowany tekst
08.12.2020 06:29
Oto, jak można w sprytny sposób odczytać rozpikselowany tekst

Gdzie człowiek nie może, tam pośle algorytm. Tak oto pikselizacja tekstu jako efektywne zabezpieczenie przed oczytaniem odchodzi właśnie do lamusa.

bEqScxOZ

Pikselizacja, czyli deformacja obrazu rastrowego poprzez widoczne obniżenie szczegółowości, to powszechnie znane narzędzie cenzury. Zwłaszcza w epoce internetu, gdy publikuje się w formacie cyfrowym cały szereg dokumentów wymagających częściowego ukrycia przedstawionych informacji. Ot, choćby danych osobowych.

Jak działa? Obraz wyświetlany na ekranie składa się z milionów pikseli, przez co należy rozumieć najmniejsze i niepodzielne składowe. W wyniku pikselizacji kolor pikseli w obrębie ich kolejnych skupisk zostaje uśredniony, co przy odpowiednio rzadkim rozmieszczeniu tychże skupisk uniemożliwia odczytanie treści. To proste, a wręcz prymitywne rozwiązanie. Ale skoro skuteczne, nie było przecież sensu nad nim debatować.

fot. LinkedIn (Sipke Mellema)
fot. LinkedIn (Sipke Mellema)

Efekt pikselizacji jako narzędzie cenzury ma jednakowoż oczywistą wadę: jest powtarzalny. Jeśli użyjemy klasycznego filtra liniowego i tych samych nastaw precyzji, to dana czcionka w konkretnym rozmiarze i kolorze zawsze zostanie zdeformowana w ten sam sposób.

bEqScxPb

Nie stanowi to problemu, gdy rozmazany zostaje cały dokument, ale już w przypadku pojedynczych słów sprawy się mają inaczej. Potencjalny napastnik jest bowiem w stanie rozpoznać charakterystykę czcionki. I na ten właśnie aspekt uwagę zwrócił programista Sipke Mellema, który przygotował narzędzie do odczytywania rozpikselowanego tekstu.

fot. LinkedIn (Sipke Mellema)
fot. LinkedIn (Sipke Mellema)

Depix, jak nazwano program, został stworzony w Pythonie i stanowi rodzaj algorytmu porównywania. Z jednej strony przyjmuje zamazany dokument, z drugiej zaś – próbkę oczekiwanej czcionki przedstawionej poprzez cykl de Bruijna. Analizując kolejne grupy pikseli, szuka zgodności pomiędzy stylem rozmycia, a tym jak ewentualnie wyglądałyby kombinacje dwuliterowe po rozmyciu w pliku źródłowym. Ostatecznie zwraca czytelny tekst.

Oczywiście takie rozwiązanie ma swoje niedoskonałości, i to liczne. Nie zadziała na niejednolitych tłach ani w przypadku innych niż pikselizacja rodzajów deformacji, np. rozmycia za pomocą filtru Gaussa. Tak czy inaczej, stanowi pewien postęp w dziedzinie technik OSINT. Więcej informacji o Depiksie, jak również sam program znajdziecie na GitHubie.

Programy

Aktualizacje
Aktualizacje
Nowości
bEqScxPX