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

  1. Перейдите на страницу репозитория
  2. Нажмите кнопку Download ZIP или Скачать архив
  3. Распакуйте архив
  4. Откройте терминал в распакованной папке

Установка

Автоматическая установка (рекомендуется)

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 (без потерь)

Лицензия

MIT License

Description
No description provided
Readme 126 KiB
Languages
Python 89.1%
Shell 10.9%