Профессиональный инструмент стеганографии с расширенными методами скрытия данных в изображениях и аудио.
- Описание
- Ключевые особенности
- Поддерживаемые методы
- Системные требования
- Установка
- Быстрый старт
- Использование
- Архитектура
- Расширенные возможности
- Безопасность
- Часто задаваемые вопросы
- Вклад в проект
- Лицензия
- Контакты
ØccultoNG Pro — это профессиональный инструмент для скрытия конфиденциальных данных внутри изображений и аудиофайлов с использованием передовых алгоритмов стеганографии. Приложение обеспечивает баланс между максимальной вместимостью, невидимостью для детектирования и устойчивостью к ошибкам.
Программа зарегистрирована в Роспатенте (свидетельство №2023XXXXXX) и разработана в соответствии с лучшими практиками информационной безопасности.
- ✅ 9 профессиональных тем (Тёмная, Светлая, Космос, Океан, Лес, Неонка, Закат, Киберпанк, Матовая)
- ✅ Интуитивный drag-and-drop интерфейс с анимациями
- ✅ Предпросмотр изображений с детальной статистикой
- ✅ Real-time прогресс-бар с визуализацией процесса
- ✅ Горячие клавиши для всех операций
- ✅ История последних файлов с контекстными действиями
- ✅ 6 методов стеганографии (LSB, Adaptive-Noise, AELSB+Hamming, HILL-CA, JPEG DCT, WAV LSB)
- ✅ Автоматическое обнаружение метода при извлечении
- ✅ Поддержка форматов: PNG, BMP, TIFF, TGA, JPEG, WAV
- ✅ CRC32 + Hamming(7,3) для проверки целостности
- ✅ PBKDF2 хеширование паролей (100K итераций)
- ✅ Сжатие данных перед скрытием
- ✅ Пакетная обработка до 5 файлов одновременно
- ✅ SmartAssistant с контекстными рекомендациями
- ✅ HistoryLog для отслеживания всех операций
- ✅ Система достижений с геймификацией
- ✅ Аналитика использования с визуализацией
- ✅ Автоматическое резервное копирование файлов
- ✅ Рекомендации метода в зависимости от контейнера
| Метод | Вместимость | Скрытность | Устойчивость | Формат |
|---|---|---|---|---|
| LSB | Максимальная | Слабая | Слабая | PNG/BMP/TIFF/TGA |
| Adaptive-Noise | Средняя | Средняя | Средняя | PNG/BMP/TIFF/TGA |
| AELSB + Hamming | Средняя | Средняя | Высокая ⭐ | PNG/BMP/TIFF/TGA |
| HILL-CA | Средняя | Высокая ⭐ | Средняя | PNG/BMP/TIFF/TGA |
| JPEG DCT | Слабая | Средняя | Слабая | JPEG |
| WAV LSB | Максимальная | Слабая | Слабая | WAV |
Примечание: Выбор метода зависит от вашего приоритета:
- Максимум данных? → LSB
- Невидимость? → HILL-CA или JPEG DCT
- Надёжность? → AELSB (восстановление ошибок)
✓ Python 3.8 или выше
✓ 4GB RAM (для больших файлов)
✓ 500 MB свободного места на диске
✓ Windows 10+, macOS 10.14+, или Linux (любой дистрибутив)
Pillow>=9.0.0
numpy>=1.21.0
scipy>=1.7.0
numba>=0.55.0
opencv-python>=4.5.0
tkinterdnd2>=0.3.0
# 1. Клонирование репозитория
git clone https://github.com/Proffessor2008/-ccultoNG.git
cd -ccultoNG
# 2. Создание виртуального окружения
# Windows
python -m venv venv
venv\Scripts\activate
# macOS/Linux
python3 -m venv venv
source venv/bin/activate
# 3. Установка зависимостей
pip install -r requirements.txt
# 4. Запуск приложения
python stegoproexp.py- Запустите приложение:
python stegoproexp.py - Выберите метод скрытия из выпадающего списка
- Перетащите контейнер (PNG/JPEG/WAV) в соответствующую область
- Перетащите данные (текст/файл) для скрытия
- Нажмите "Скрыть" и выберите путь сохранения
- Результат сохранён! ✅
- Перейдите на вкладку "Извлечь данные"
- Перетащите файл со скрытыми данными в область загрузки
- Метод определится автоматически (если не указан вручную)
- Нажмите "Извлечь"
- Данные готовы! Скопируйте или сохраните
- Перейдите на вкладку "Пакетная обработка"
- Выберите режим: Скрытие, Извлечение или Анализ
- Добавьте до 5 файлов в очередь обработки
- Настройте параметры обработки
- Нажмите "Начать обработку"
- Дождитесь завершения и сохраните результаты
from stego_processor import ImageProcessor
# Скрытие данных в изображении
container_path = "photo.png"
data_to_hide = b"Secret message"
output_path = "stego_result.png"
ImageProcessor.hide_data(
container_path,
data_to_hide,
"", # пароль
output_path,
method="lsb", # или "noise", "aelsb", "hill", "jpeg_dct"
progress_callback=lambda p, msg: print(f"{msg} {p:.1f}%")
)
# Извлечение данных
extracted_data = ImageProcessor.extract_data(output_path, "")
print(extracted_data) # b"Secret message"from stego_processor import JPEGStego
# Скрытие в JPEG DCT коэффициентах
JPEGStego.hide_dct(
"photo.jpg",
b"Secret data",
"",
"stego_photo.jpg"
)
# Извлечение из JPEG
data = JPEGStego.extract_dct("stego_photo.jpg", "")
print(data) # b"Secret data"from stego_processor import AudioStego
# Скрытие в WAV
AudioStego.hide_lsb_wav(
"audio.wav",
b"Secret message",
"stego_audio.wav"
)
# Извлечение из WAV
data = AudioStego.extract_lsb_wav("stego_audio.wav")
print(data) # b"Secret message"-ccultoNG/
├── stegoproexp.py # Главный файл приложения
├── requirements.txt # Зависимости Python
├── README.md # Этот файл
├── stego_settings_pro.json # Конфигурация пользователя
├── stego_analytics.json # Статистика использования
├── stego_history_pro.json # История операций
└── plugins/ # Папка для плагинов
Основные модули:
├─ AdvancedStego.py # Алгоритмы LSB, Noise, AELSB, HILL
├─ JPEGStego.py # JPEG DCT алгоритм
├─ AudioStego.py # WAV LSB алгоритм
├─ ImageProcessor.py # Обработка изображений
├─ ThemeManager.py # Управление темами
├─ SmartAssistant.py # Интеллектуальные рекомендации
├─ BatchProcessor.py # Пакетная обработка
├─ AchievementManager.py # Система достижений
└─ HistoryLog.py # Логирование операций
┌─────────────────────────────────────────────────────┐
│ СКРЫТИЕ ДАННЫХ │
├─────────────────────────────────────────────────────┤
│ 1. Чтение контейнера (PNG/JPEG/WAV) │
│ 2. Сжатие данных (zlib, level 9) │
│ 3. Добавление заголовка (magic bytes + checksum) │
│ 4. Выбор метода встраивания │
│ 5. Скрытие в контейнер (LSB/DCT/Noise/AELSB/HILL) │
│ 6. Сохранение результата │
│ 7. Логирование операции (HistoryLog) │
└─────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────┐
│ ИЗВЛЕЧЕНИЕ ДАННЫХ │
├─────────────────────────────────────────────────────┤
│ 1. Чтение контейнера │
│ 2. Автоопределение метода скрытия │
│ 3. Извлечение битов из контейнера │
│ 4. Проверка CRC32 (целостность) │
│ 5. Восстановление ошибок (если Hamming) │
│ 6. Распаковка данных (zlib) │
│ 7. Возврат оригинальных данных │
└─────────────────────────────────────────────────────┘
| Клавиша | Функция |
|---|---|
Ctrl+O |
Открыть контейнер |
Ctrl+H |
Скрыть данные |
Ctrl+E |
Извлечь данные |
Ctrl+S |
Сохранить результат |
F1 |
Справка |
Ctrl+Tab |
Переключиться на следующую вкладку |
Ctrl+Shift+Tab |
Переключиться на предыдущую вкладку |
Ctrl+B |
Перейти к пакетной обработке |
Ctrl+, |
Открыть настройки |
# Для отладки
export STEGO_DEBUG=1
# Изменить папку с логами
export STEGO_LOG_DIR=/custom/path
# Ограничить максимальный размер файла (МБ)
export STEGO_MAX_FILE_SIZE=500Экспорт конфигурации:
Меню → Настройки → Экспортировать настройки
Импорт конфигурации:
Меню → Настройки → Импортировать настройки
- PBKDF2-SHA256 с 100,000 итерациями
- SHA256 для контрольных сумм (дополнительно CRC32)
- Random salt для каждого пароля (16 байт)
- CRC32 для быстрой проверки
- Hamming(7,3) коды для восстановления одиночных ошибок
- Автоматическая проверка целостности при извлечении
# ✅ РЕКОМЕНДУЕТСЯ:
# 1. Используйте сложные пароли
password = "MySecure@Pass2024#Complex"
# 2. Скрывайте конфиденциальные данные
data = b"Secret agent ID: 007"
# 3. Используйте HILL-CA или JPEG DCT для максимальной скрытности
method = "hill"
# ❌ НЕ РЕКОМЕНДУЕТСЯ:
password = "123" # Слишком простой пароль
method = "lsb" # Легко детектируется стеганализатором
data = b"Public data" # Нет смысла скрывать публичную информацию- ✅ Защита личной конфиденциальности
- ✅ Исследования в области информационной безопасности
- ✅ Образовательные цели
- ✅ Коммерческое использование (с разрешением)
❌ Запрещено использование для:
- Распространения нелегального контента
- Обхода систем защиты
- Скрытия следов преступной деятельности
- Любых действий, нарушающих законодательство РФ
A: Зависит от типа контейнера и ваших целей:
┌─────────────────────────────────────────────────────┐
│ КОНТЕЙНЕР │ ЦЕЛЬ │ МЕТОД │
├─────────────┼─────────────────────────┼──────────────┤
│ PNG/BMP │ Максимальная скрытность │ HILL-CA │
│ JPEG │ Максимальная скрытность │ JPEG DCT │
│ PNG/BMP │ Максимум данных │ LSB │
│ PNG/BMP │ Надёжность │ AELSB+Hamming│
│ WAV │ Аудио контейнер │ WAV LSB │
└─────────────┴─────────────────────────┴──────────────┘
A: Зависит от размера контейнера и метода:
# Для 1920x1080 PNG (RGB):
# LSB: ~ 7.77 MB
# Adaptive: ~ 3.88 MB
# AELSB: ~ 1.85 MB (из-за Hamming кодов)
# HILL-CA: ~ 1.85 MB
# JPEG DCT: ~ 0.5-1.0 MB (зависит от качества)
# WAV 44.1kHz: ~ 1.3 MB на минуту аудиоA: Попробуйте следующее:
- Убедитесь, что используете правильный файл-контейнер
- Попробуйте другой метод извлечения
- Проверьте, не был ли файл изменен после скрытия данных
- Используйте вкладку "Анализ" для диагностики файла
- Проверьте целостность файла через HistoryLog
A: Разделите файлы на группы по 5 штук и обработайте каждую группу отдельно. Результаты можно экспортировать в JSON для объединения отчетов.
A: Это дополнительный уровень безопасности для защиты ваших настроек и истории операций. Пароль хранится только в локальном файле и используется для шифрования чувствительных данных.
Мы приветствуем вклады в следующих областях:
-
Новые алгоритмы стеганографии
- Кодирование Эндреса
- Модификация LSB Matching
- ML-методы обнаружения и встраивания
-
Улучшение UI/UX
- Новые темы оформления
- Оптимизация производительности интерфейса
- Поддержка других языков
-
Производительность
- GPU-ускорение для обработки изображений
- Оптимизация многопоточной обработки
- Кэширование для часто используемых операций
-
Тестирование
- Unit-тесты с pytest
- Интеграционные тесты
- Stress-testing для больших файлов
# 1. Fork репозитория
# 2. Создайте feature branch
git checkout -b feature/new-method
# 3. Внесите изменения
# 4. Добавьте тесты для нового функционала
# 5. Commit с описательным сообщением
git commit -m "feat: добавлен новый метод стеганографии XYZ"
# 6. Push в ваш fork
git push origin feature/new-method
# 7. Создайте Pull Request с описанием измененийСледуйте PEP 8 и используйте type hints:
from typing import Tuple, Optional
import logging
logger = logging.getLogger(__name__)
def process_image(
image_path: str,
data: bytes,
method: str = "lsb"
) -> Optional[bytes]:
"""Обрабатывает изображение для скрытия данных."""
try:
# Реализация
pass
except ValueError as e:
logger.error(f"Ошибка обработки изображения: {e}")
return NoneØccultoNG Pro распространяется по следующим лицензионным моделям:
Лицензия: Proprietary
Использование: Коммерческие проекты, интеграция
Стоимость: Индивидуальная
Контакт: tudubambam@yandex.ru
Лицензия: Academic Research License
Использование: Университеты, исследования, публикации
Стоимость: Бесплатно с обязательной атрибуцией
Требование: Ссылка на оригинальный проект в публикациях
Лицензия: Free for Personal Use
Использование: Личные проекты, образование
Ограничения: Запрещено коммерческое распространение
Автор: MustaNG
Версия: 2.1.0 (18.12.2025)
GitHub: https://github.com/Proffessor2008/-ccultoNG
Email: tudubambam@yandex.ru
Спасибо за использование ØccultoNG Pro!
Если вам нравится проект, пожалуйста:
- ⭐ Поставьте звезду на GitHub
- 🍴 Сделайте fork и внесите улучшения
- 📢 Поделитесь с друзьями и коллегами
- 🐛 Сообщите об ошибках через Issues
- 💡 Предложите идеи для улучшения
Made with ❤️ by MustaNG
"Hiding secrets, securing privacy, advancing cybersecurity education"
v2.1.0 — 18.12.2025