0 / 0 / 0
Регистрация: 28.04.2015
Сообщений: 9

Стеганография. Метод Коха и Жао

01.05.2015, 10:45. Показов 19413. Ответов 40

Студворк — интернет-сервис помощи студентам
Метод Коха и Жао. Реализую на C#. Хотел заказать в разделе фриланса, но пообщавшись с форумчанином Ev_Hyper , понял, что тема не супер-сложная. Немного разобрался и ниже сформулировал вопросы.

Сначала опишу сам алгоритм.
Скрытие:
1. Первичное изображение разбиваем на блоки 8 на 8 пикселей.
2. К каждому блоку применяется дискретное косинусное преобразование. В результате получаем матрицы 8 на 8 коэффициентов ДКП.
3. Выбирается любой блок (в каждый блок записывается 1 бит информации)
4. Псевдослучайно выбираются два коэффициента ДКП в каждом блоке из среднечастотных коэффициентов.
5. Для передачи бита 0 необходимо, чтобы разница модулей коэффициентов ДКП превышает некоторую положительную величину (задается вручную); для передачи бита 1 разница должна быть меньшей по сравнению с некоторой отрицательной величиной. Таким образом, при передаче 0 увеличиваем модуль первого коэффициента и уменьшаем модуль второго. При передаче 1 уменьшаем модуль первого коэффициента и увеличиваем модуль второго.

где https://www.cyberforum.ru/cgi-bin/latex.cgi?\Omega - матрица 8на8 коэффициентов ДКП блока; b - номер блока;https://www.cyberforum.ru/cgi-bin/latex.cgi?{\upsilon }_{1}, {\nu }_{1} - координаты
6. Проходим по каждому блоку и выполняем пункты 4 и 5.
7. Для каждого блока выполняем обратное ДКП

Извлечение:
1. Пункты 1,2,3 скрытия.
2. Нужно «найти» те два коэффициента ДКП, которые мы изменяли, и посчитать разность их модулей.
3. В результате проверки разности модулей извлекаемому биту присваивается или 0 или 1.

4. Для каждого блока выполняем обратное ДКП.


Последний раз кодил 2.5 года назад, поэтому много непонятного по синтаксису.
С терминологией не очень, поэтому какие-то вопросы наверно звучат некорректно.
С чего начать:
1. Как в программе открыть файл с текстом? Как получить из исходного текста строку бит? Что именно нужно: строка бит или массив бит? И вообще, нужно ли заранее выделять память под такой массив(строку) или лучше в процессе срытия получать биты из исходных символов исходного текста?
2. 1-й пункт алгоритма. Как открыть изображение (*.bmp) в программе? В каком виде оно будет представлено в программе? Для наших целей нужно его представить в виде двумерного массива пикселей? Если да, то как это сделать, и как затем разбить этот двумерный массив на двумерные массивы поменьше? Не понятен сам алгоритм такого разбиения…
3. 2-й пункт алгоритма. К чему именно применяется ДКП: к матрице пикселей, к пикселю, к каждой цветовой компоненте пикселя, к каждому биту значения цветовой компоненты? Как будет выглядеть ДКП на c#?
4. 4-й пункт. Как выбрать коэффициенты псевдослучайно?
5. Как уменьшить абсолютное значение одного коэффициента и увеличить другого, чтобы разность достигла приемлемого значения? В цикле прибавлять/отнимать по 1 и сравнивать разность с нужным значением?
6. 2-й пункт извлечения. Как найти те самые коэффициенты, ведь мы их выбрали псевдослучайно?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.05.2015, 10:45
Ответы с готовыми решениями:

Реализовать метод скрытия информации (Коха-Жао) в коэффициентах дискретно-косинусного преобразования JPEG
Здравствуйте. Нужно реализовать метод скрытия информации (Коха-Жао) в коэффициентах дискретно-косинусного преобразования JPEG. Для...

Алгоритм Коха и Жао
Пытаюсь реализовать данный алгоритм для встраивания сообщения в bmp. Ничего не получается. Решил попробовать встроить в 4 матрицы 4 бита....

Алгоритм Коха и Жао
не могу разобраться с реализацией этого алгоритма. Понял, что на первом шаге наше изображение нужно выгрузить в массив. Массив байт. Потом...

40
1 / 1 / 0
Регистрация: 01.10.2017
Сообщений: 2
17.10.2017, 00:27
Студворк — интернет-сервис помощи студентам
Добавил возможность выбора компоненты для встраивания, чтобы можно было проверить зависимость искажений и устойчивости от того, в какие составляющие мы встраиваем информацию.
Вложения
Тип файла: rar KochZhao.rar (178.9 Кб, 102 просмотров)
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.10.2017, 00:27

Построение Анти-Снежинки Коха (Снежинка Коха внутрь) на языке Pascal.
Нужно построить антиснежинку Коха. Имеется код построения обычной снежинки Коха через линии треугольника. Кто-нибудь может помочь? ...

Стеганография. Написать метод для расшифровывания текста из картинки bmp
Помогите написать метод для расшифрования текста из картинки bmp

Стеганография: как реализовать метод избыточных пробелов сокрытия информации в текстовом файле?
Как реализовать метод избыточных пробелов сокрытия информации в текстовом файле? Не знаю, с чего начать, что использовать.

Снежинка Коха
Используя графические возможности рекурсии, постройте на экране снежинку Коха

Снежинка Коха
Задание заключается в том, чтобы построить снежинку с помощью рекурсии. Есть замечательная программа на Паскале. Вот код program...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
41
Ответ Создать тему
Опции темы

Новые блоги и статьи
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
Запись в регистр сведений независимо от заполненности табличной части
Maks 25.08.2026
Реализация из решения ниже выполнена на нетиповом документе с несколькими табличными частями, разработанного в КА2. Задача: Обеспечить запись документа в регистр сведений независимо от. . .
Ноутбук Альфария
kumehtar 24.08.2026
Встретился тут в сети ноутбук Альфария, примарха Альфа-Легиона. Хотя возможно, это ноутбук Омегона, разумеется. Ну как вам?
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания источниках данных и элементов формы(текстовые поля и метки), опирается все это на технологию событий и мета. . .
Цена ошибки
DevAlt 23.08.2026
Человек я беспокойный и потому заинтересовался OCaml, в чате форсили функторы модулей как суперфичу. Пытаясь отдуплить концепт, наткнулся на тутор с простым примером. А главный принцип обучения от. . .
Сегодня суббота, 22.08.2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины.
zorxor 22.08.2026
Сегодня суббота, 22. 08. 2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины. Кто Я, откуда Я пришел и куда Я иду? Эти вопросы не оставляют меня ни на секунду. Жизнь на планете Земля. . .
Жизня: рисунок укладки багажа, сделанный клодом
anaschu 21.08.2026
Сделал 15 снимков, он по снимкам сделал схему.
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства. Жизнь действительно предъявляет каждому. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru