Как стать автором
Обновить

Стеганография и ML. Или что нам подарили генеративно-состязательные сети (GAN)?

Время на прочтение 9 мин
Количество просмотров 5.8K


Стеганография – это наука о тайной передаче информации путем сокрытия самого факта передачи.  А само слово стеганография происходит от греч. στεγανός «скрытый» + γράφω «пишу» и буквально обозначает «тайнопись». В этой области, как и во многих других, особенно в последние годы получили широкое распространение методы машинного обучения, в частности, генеративно-состязательные сети (GAN). 

Далее в меню:

  1. Традиционная стеганография для чайников 
  2. Что такое GAN и с чем их едят?
  3. Так как же применяются GAN?
  4. Будущее GAN: что нас ждет в стеганографии?

Традиционная стеганография для чайников


С древних времен классическая стеганография используется людьми в качестве средства секретного общения: невидимые чернила, тибетская поэзия и многое другое. Современная стеганография для сокрытия сообщения использует электронные коммуникации и цифровые технологии. Каждая современная стегосистема состоит из двух основных компонентов: алгоритмов внедрения и извлечения. Так, алгоритм внедрения принимает на вход секретное сообщение, секретный ключ и контейнер, которые будут использоваться для передачи сообщения. Результатом его работы является стегосообщение.

Сообщением, в общем случае, может быть что угодно: текст, изображение, аудиоданные и так далее. К каждому типу данных разрабатываются свои подходы для сокрытия. Так в текстовой стеганографии используются допущения при расположении и количестве символов в тексте, не учитываемые при прочтении человеком. Например, одним из методов является форматирование. Его суть состоит в раздвижке строки путем увеличения пробелов между словами, когда один пробел соответствует, например, биту 0, а два пробела — биту 1. Или в сетевой стеганографии скрытая информация передается через компьютерные сети с использованием особенностей работы протоколов передачи данных. Типичные методы сетевой стеганографии включают изменение свойств одного из сетевых протоколов.  Мы в дальнейшем будем рассматривать только стеганографию в изображениях, соответственно будем называть передаваемые стегосообщения стегоизображениями.

Подробнее о стегосистемах
Обобщенная модель стегосистемы может быть представлена как проблема заключенного с тремя участниками, что показано на рисунке 1 Алиса и Боб содержатся в отдельных камерах.  Конечно же, им разрешено общаться друг с другом, однако все их коммуникации контролируются надзирателем Венди. В современной стеганографии каждый канал между Алисой и Бобом содержит пять элементов: контейнер, алгоритм внедрения / извлечения сообщения, ключи, секретное сообщение и канал связи.



Контейнер – это любая информация, предназначенная для передачи тайных сообщений. Стегоключ или просто ключ — секретный ключ, необходимый для сокрытия информации. Как и в криптографии ключ может быть секретным или открытым.

Основное требование состоит в том, что стегоизображение должно быть неотличимо от исходного изображения или набора исходных изображений.

Безопасность в свою очередь зависит от методов доступных злоумышленнику. В зависимости от работы Венди, она может быть активной или пассивной надзирательницей. Если Венди только проверяет, является ли стегоизображение обычным или «модифицированным» при передаче по каналу, то ее называют пассивным надзирателем. Если Венди может извлекать уроки из предыдущих атак и накопить знания о стегосистеме, то она будет активным смотрителем. В таком случае она могла бы попытаться немного изменить передаваемые объекты или обнаружить наличие скрытой связи.

 Многие статьи по стеганографии посвящены пассивному режиму надзирателя. Но, как показывает практика, Венди обычно выполняет как активные, так и пассивные обязанности. Согласно принципу Керкгоффса,  систем безопасности Венди полностью знает алгоритм, который могут использовать Алиса и Боб.

В случае активного надзирателя безопасность обычно связывается со сложностью извлечения сообщений. В случае пассивной атаки ключевой проблемой безопасности стеганографии является тонкая грань, по которой сложно отличить исходное изображение и стегоизображение. Это понятие включает в себя малозаметные как для человеческого зрения, так и для машинного статистического анализа отличия.

В стеганографии изображений выделяются три различные фундаментальные архитектуры в соответствии с различными способами получения стегоизображения.

1) Модификация изображения


В основном существует два типа подходов к стеганографии путем модификации. Первый тип связан с поддрежкой статистической модели, а второй  – реализует встраивание в результате минимизации конкретной функции искажения.

2) Селекция изображения


Селекция изображения - это выбор подходящего контейнера и он связана с двумя основными подходами. Первый - выбрать изображение-кандидат для модификации. В этом методе нужно найти подходящий контейнер для модификации в базе данных. Хотя эти методы называются выбором изображения, они по сути представляют собой модификацию с некоторым дополнительным этапом. Но мы в дальнейшем не будем этот метод рассматривать как самостоятельный. Другой подход выбор контейнера в качестве стегоизображения без модификации. При этом подходе важно установить правила сопоставления между сообщением и стегоизображением.

3) Синтезирование изображения


Третья стратегия основана на синтезе изображений. И здесь наша Алиса (стеганограф) пытается создать новое изображение, которое содержит необходимую информацию. Поскольку синтез реалистичного изображения представляет собой сложную проблему, традиционный метод решает задачи стеганографии с помощью создания «неестественных» изображений, таких как текстуры или изображения отпечатка пальца.

Что такое GAN и с чем их едят?


Генеративно-состязательная сеть (Generative adversarial network, сокращенно GAN) — алгоритм машинного обучения без учителя, построенный на комбинации из двух нейронных сетей. В 2014 году ее впервые представили Google. В системе GAN одна из сетей генерирует образцы, а другая старается отличить «подлинные» образцы от неправильных. 

Генеративная сеть, используя набор переменных латентного пространства, всегда пытается слепить новый образец, смешав несколько исходных образцов. Дискриминативная сеть D обучается различать подлинные и поддельные образцы. При этом ее результаты подаются на вход генеративной сети G так, чтобы она смогла подобрать лучший набор латентных параметров, и дискриминативная сеть уже не смогла бы отличить подлинные образцы от поддельных. Как видим, целью сети G является повысить процент ошибок сети D, а целью сети D является, наоборот, улучшение точности распознавания.

GAN нашли прекрасное применение в компьютерном зрении и в обработке естественного языка (в генерации изображений и текстов). Но при этом и стеганографию не обошли стороной.

Так как же применяются GAN?


Возможности GAN можно рассматривать с разных сторон: состязательная игра, генератор или функция отображения. Они согласуются с классификацией основных стратегий в стеганографии, то есть модификации, синтеза и селекции.

1) Модификация изображения


Модификация изображения основанная на GAN фокусируется на состязательной игре между стеганографом и стеганализатором. Данный метод использует генератор, обученный для построения различных «ключевых» элементов. Выделяют три основныее стратегии.

Создать стегоизображние


Денис Волхонский, Иван Назаров и Евгений Бурнаев предложили сконструировать генератор для создания стегоизображения. Этот подход позволяет создавать более защищенное от стеганализа стегосообщение, которое может передавать сообщения с использованием стандартных алгоритмов стеганографии. По сути, они представили генеративно-состязательную сеть, состоящую из трех сетей: генератор G, дискриминатор D и классификатор S стеганализа.

Классификатор S определяет, скрывает ли реалистичное изображение секретную информацию.



Создать матрицу вероятности модификации


Примером служит ASDL-GAN для автоматического изучения функции искажения. Эта схема действует в традициях современной стеганографии и минимизирует функцию аддитивного искажения. Сама матрица вероятностей изменения получается путем минимизации математического ожидания функции искажения. Генератор G в их схеме обучается узнавать вероятности изменения P входного изображения.

Состязательная игра


Третья стратегия предполагает прямое использование состязательной игры между тремя ее участниками (Алиса, Боб, Венди) для изучения алгоритма модификации. Метод ADV-EMB, который пытается изменить изображение для скрытия сообщения, обманывая классификатор стеганализа.

В этом подходе пиксели «изображения-кандидата» делятся на две группы, одна группа пикселей используется для модификации, а вторая группа пикселей — для создания возмущений с целью противостоять анализатору.

2) Селекция изображения


Стеганография на основе GAN селекции направлена ​​на установление взаимосвязи между сообщением и стегоизображением. По этой тема, однако, не так много источников, хотя в некоторых работах предпринимаются отдельные попытки в этом направлении.

Одна из идей состоит в том, что отправитель устанавливает вид отображения, используя генератор между сообщением и выбранным изображением. Для получателя сообщение создается непосредственно из выбранного изображения. Суть этого метода состоит в установлении взаимосвязи между изображением и секретным сообщением, чтобы контейнер естественным образом превратился в стегоизображение. Статистический стеганографический анализ не работает, потому что непосредственно сама операция модификации не осуществляется.

3) Синтезирование изображения


Изображение обычно создается с помощью передобученного генератора и здесь предлагаются несколько стратегий

Обучение с учителем


Здесь авторы используют нейронную сеть, чтобы изучить алгоритм с состязательным обучением, в рамках которого три игрока (Алиса, Боб и Ева) представляют собой нейронные сети.



Алиса использует контейнер и секретное сообщение для создания стегоизображения, а Боб пытается восстановить сообщение. Ева извлекает вероятность P наличия секретного сообщения на изображении. При этом Алиса пытается добиться баланса, при котором вероятность для Евы получить изображение с секретным сообщением оказывается 1/2. (то есть Ева уже просто произвольно пытается угадать исход). В этом алгоритме вводится три функции потерь, за которые отвечают Алисе, Бобу и Еве соответственно.

Обучение без учителя


Стеганография без эмбеддинга

В данном методе секретные сообщения преобразуются в вектор шума, отправляемый генератору в качестве входных данных для создания стегоизображения.

Сначала генератор G обучается с некоторым набором данных. После этого получается генератор, который может создавать реалистичные изображения. Во время второй фазы экстрактор E обучается с помощью функции потерь при извлечении сообщения. Цель этого этапа — восстановить сообщение из созданного стегоизображения.

На последнем этапе отправитель устанавливает связь между шумом и сообщением, а секретное сообщение и векторы шума сегментируются для создания отображения. Получатель может использовать экстрактор для восстановления вектора шума, и затем секретное сообщение получается с помощью полученного отображения.

Стеганография WGAN-GP

В данном подходе экстрактор сообщений и генератор стегоизображений обучаются одновременно. WGAN-GP адаптирован для генерации стегоизображения с более высоким качеством. Согласно предложенному методу, Генератор G обучается входе минимакс игры (правило принятия решений для минимизации возможных потерь из тех, которые лицу, принимающему решение, нельзя предотвратить при развитии событий по наихудшему для него сценарию), чтобы соревноваться с Дискриминатором (D) и Экстрактором (E).



Обучение с частичным привлечением учителя


Стеганография ACGAN

Чтобы осуществить частичное обучение, надо добавить вспомогательную сеть для конкретной задачи в исходную GAN. Этот метод устанавливает взаимосвязь между метками классов сгенерированных изображений и секретной информацией, причем метки классов и шум напрямую вводятся в генератор для создания стегоизображения. На этапе извлечения сообщения стегоизображение подается в дискриминатор для получения фрагментов секретной информации.

Стеганография с ограниченным семплированием

 В этом случае операция встраивания сообщения становится проблемой выбора изображения. В статье создание стегоизображения рассматривается как проблема минимизации расстояния между исходным изображением и стегоизображением.

Стеганография с помощью CycleGAN

Некоторые исследователи рассматривают синтез стегоизображения как проблему «image-to-image» перевода. Очень известной моделью для перевода изображений является CycleGAN. Эта модель учиться преобразовать изображение из класса X в класс Y, путем минимизации состязательной функции потерь и функции потерь согласованности цикла. В статье утверждается, что CycleGAN можно рассматривать как процесс кодирования для сокрытия информации.

Будущее GAN: что нас ждет в стеганографии?


Методы, основанные на GAN крайне интересны и перспективны для стенографии. В настоящее у этого подхода есть три основных направления развития. Будущее GAN: что же нас ждет в стеганографии?

Вместимость


В методах таких как GAN-CSY нестабильность генерируемых пикселей приводит к низкой точности извлечения сообщений. В других методах сообщение не существует в своем привычном виде, а является атрибутом категории или вектором шума. Недостаток состоит в том, что сообщения в существующих методах включают в себя не очень много информации. Таким образом, одно из направлений, требующих внимания, это повышение стабильности и увеличение объёма передаваемых данных.

Оценка качества изображения


Трудно количественно оценить качество синтетических изображений. В области синтеза изображений критерии оценки сгенерированных изображений недостаточно надежны.

Некоторые методы, использующие ручную оценку, являются субъективными и не имеют объективных критериев оценки. Текущие критерии оценки это в основномIS (Inseption Score) и FID (Frechet Inception Distence). Эти оценки учитывают только подлинность и качество изображения. Так что, поиск подходящих оценок все еще остаются важной и неразработанным направлением   исследований.

Стеганализ


Задача стеганализа разделена на два этапа. Первый этап – это экспертиза изображений, которая покажет, является ли изображение поддельным. Второй этап – это стеганализ изображения, который определяет, содержит ли сгенерированное изображение секретное сообщение. В настоящее время изображения, генерируемые GAN, неразличимы для
человеческого глаза. В традиционной стеганографии существует множество методов для экспертизы изображений для того, чтобы различать естественные изображения и сгенерированные. Но в будущем с развитием описанных подходов станет сложно определить, является ли изображение сгенерированным или нет. Соответственно повышение эффективности стеганализа следует признать наиболее перспективным направлением.

Материал подготовлен на основе данной статьи.
Теги:
Хабы:
+28
Комментарии 2
Комментарии Комментарии 2

Публикации

Истории

Работа

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн