4.4 KiB
Stego App
Стеганографическое приложение для сокрытия данных в изображениях
Функциональность
| Метод | Описание |
|---|---|
| LSB | (Least Significant Bit) |
| DCT | (Discrete Cosine Transform) |
Возможности
- Графический интерфейс (Tkinter)
- CLI интерфейс
- Поддержка русских и английских текстов
- Сохранение результатов на устройство
- Расчёт вместимости изображения
- Сравнение изображений (PSNR)
Получение кода
Способ 1: Клонирование репозитория (если есть доступ)
git clone <ссылка_на_репозиторий> cd CourseWork
Что такое git clone?
Это команда, которая скачивает копию репозитория с сервера (например, с Gitea, GitHub) на ваш компьютер.
Где взять ссылку?
В веб-интерфейсе репозитория нажмите кнопку Clone или Клонировать и скопируйте ссылку (HTTPS или SSH).
Способ 2: Скачать архив с Gitea/GitHub
- Перейдите на страницу репозитория
- Нажмите кнопку Download ZIP или Скачать архив
- Распакуйте архив
- Откройте терминал в распакованной папке
Установка
Автоматическая установка (рекомендуется)
chmod +x install.sh ./install.sh
Установка через pipx
pipx install .
Ручная установка зависимостей
pip install numpy pillow scipy
Установка Tkinter (Ubuntu/Debian)
sudo apt install python3-tk
Запуск
|Команда |Описание| |stego-gui |Графический интерфейс| |stego --help| Помощь по CLI|
CLI команды
#LSB кодирование stego encode lsb image.png out.png -m "Секретное сообщение"
#LSB декодирование stego decode lsb out.png
#DCT кодирование stego encode dct image.png out.png -m "Секретное сообщение"
#DCT декодирование stego decode dct out.png
#Показать вместимость изображения stego capacity image.png
#Сравнить два изображения (PSNR) stego psnr original.png modified.png
Удаление
#Через pipx pipx uninstall stego-app
#Через скрипт chmod +x uninstall.sh ./uninstall.sh
Требования к системе
ОС: Linux (Ubuntu/Debian и производные)
Python: 3.8 или выше
Зависимости: numpy, pillow, scipy, tkinter
Структура проекта text CourseWork/ ├── core/ # LSB, DCT, Utils ├── gui/ # Графический интерфейс ├── icons/ # Иконки приложения ├── main.py # Точка входа (CLI + GUI) ├── setup.py # Установщик пакета ├── install.sh # Скрипт автоматической установки ├── uninstall.sh # Скрипт удаления ├── stego.desktop # Ярлык для меню приложений ├── requirements.txt # Зависимости проекта └── README.md # Документация
Известные ограничения
DCT метод требует размеры изображения, кратные 8 (например, 400×400, 512×512, 800×800)
DCT метод рекомендуется только для гладких/однотонных изображений
Результат кодирования рекомендуется сохранять в формате PNG (без потерь)