Depix когда пиксели раскрывают секреты
Это архивный репозиторий и может быть устаревшим.
Вы когда-нибудь задумывались, насколько надежно скрывает информацию обычная пикселизация? Оказывается, во многих случаях восстановить исходный текст с замазанных скриншотов проще, чем кажется. Об этом наглядно демонстрирует проект Depix — любопытный инструмент для депикселизации текста.
Как появился Depix
Автор проекта (разработчик под ником spipm) создал Depix как Proof of Concept для реального кейса — в компании кто-то замазал часть пароля с правами Domain Admin. Ирония судьбы: проект, изначально задуманный как небольшой эксперимент, собрал более 26 тысяч звезд на GitHub (после чего автор временно сделал репозиторий приватным, чтобы избежать излишнего хайпа).
![]()
Как это работает
Depix специализируется на восстановлении текста, пикселизированного линейным бокс-фильтром (этот метод используется, например, в Greenshot). Алгоритм использует несколько интересных подходов:
- Поиск совпадений: Каждый пикселизированный блок сравнивается с заранее подготовленными образцами
- Геометрический анализ: Проверяется расположение совпадающих блоков относительно друг друга
- Многопроходная обработка: Процесс повторяется несколько раз для уточнения результатов
Пример работы:
![]()
Практическое применение
Хотя Depix позиционируется как PoC, он уже нашел несколько неожиданных применений:
- Восстановление случайно зацензуренных данных в скриншотах
- Анализ утечек информации (когда важные данные были «замазаны», но не удалены)
- Исследование уязвимостей методов цензурирования
Интересный факт: после появления Depix даже появился специальный чемпионат по депикселизации, где участники восстанавливали замазанные данные из видео.
Как пользоваться
Установка проста — достаточно Python и нескольких зависимостей. Основные шаги:
- Подготовить «поисковое изображение» с последовательностью Де Брейна (De Bruijn sequence)
- Запустить скрипт с указанием пути к пикселизированному изображению
python3 depix.py \
-p /path/to/your/input/image.png \
-s images/searchimages/debruinseq_notepad_Windows10_closeAndSpaced.png \
-o /path/to/your/output.png
Depix включает несколько вспомогательных инструментов, например, для визуализации обнаруженных блоков:
python3 tool_show_boxes.py \
-p images/testimages/testimage3_pixels.png \
-s images/searchimages/debruinseq_notepad_Windows10_closeAndSpaced.png
Ограничения и альтернативы
Важно понимать, что Depix работает не во всех случаях:
- Требуется точное знание шрифта и настроек экрана
- Не работает с дополнительно сжатыми изображениями
- Современные методы рендеринга шрифтов (субпиксельный) могут мешать
Для более сложных случаев существуют альтернативы вроде DepixHMM или UnRedacter, использующие скрытые марковские модели.
Вывод: стоит ли пробовать?
Depix — это отличный образовательный проект, наглядно демонстрирующий уязвимости наивных методов цензурирования. Хотя он имеет ограничения, его:
- Легко запустить и поэкспериментировать
- Интересно модифицировать
- Полезно изучить как пример компьютерного зрения
Особенно он будет интересен специалистам по информационной безопасности, разработчикам компьютерного зрения и всем, кто хочет понять, как работают современные методы анализа изображений.
А если вы используете пикселизацию для сокрытия данных — возможно, стоит задуматься о более надежных методах вроде полного удаления информации?
