Стеганография в XXI веке. Цели. Практическое применение. Актуальность

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

    На хабрахабре было много различных статей о конкретных алгоритмах информационной стеганографии, например DarkJPEG, «TCP стеганография», ну и конечно любимый всеми студентами во время курсового проектирования «алгоритм LSB» (например LSB стеганография, Стеганография в GIF, Котфускация исполняемого .net кода)

    Стеганографических способов бесчисленное множество. На момент написания данной статьи в США уже опубликовано не менее 95 патентов по стеганографии, а в России не менее 29 патентов. Более всего мне понравился патент Kursh К. и Lav R. Varchney «Продовольственной стеганографии» («Food steganography», PDF)

    Картинка из «пищевого» патента для привлечения внимания:


    Тем не менее, прочитав приличное количество статей и работ, посвященных стеганографии, я захотел систематизировать свои идеи и знания в данной области. Данная статья сугубо теоретическая и я хотел бы обсудить следующие вопросы:
    1. Цели стеганографии — на самом деле их три, а не одна.
    2. Практическое применение стеганографии — я насчитал 15.
    3. Место стеганографии в XXI веке — я считаю, что с технической точки зрения современный мир уже подготовлен, но «социально» стеганография пока «запаздывает».


    Я постарался обобщить мои исследования по данному вопросу. (Это значит, что текста много)
    Надеюсь на разумную критику и советы со стороны хабросообщества.



    Цели стеганографии


    Цель — это абстрактная задача, относительно которой разрабатывается научная теория и методология достижения данной цели. Не нужно путать цель и применение. Цель предельно абстрактна, в отличие от применения.

    Как я уже говорил, в стеганографии существуют три цели.

    Цифровые отпечатки (ЦО) (Digital Fingerprint)


    Данный вид стеганографии подразумевает наличие различных стеганографических меток-сообщений, для каждой копии контейнера. Например ЦО могут быть применимы для защиты исключительного права. Если с помощью какого-либо алгоритма противник сможет извлечь ЦО из контейнера, то идентифицировать противника невозможно, но до тех пор, пока противник не научится подделывать ЦО, он не сможет без обнаружения распространять защищаемый контейнер.

    Таким образом, при извлечении ЦО третья сторона (т.е. противник) может преследовать две цели:
    1. извлечение ЦО из контейнера («слабая цель»);
    2. подмена одного ЦО другим ЦО («сильная цель»).


    В качестве примера ЦО можно привести продажу электронных книг (например в формате *.PDF). При оплате книги и отправки её получателю можно в *.pdf вкраплять информацию о e-mail; IP; данных, введенные пользователем и т.д. Конечно это не отпечатки пальцев и не анализ по ДНК, но, согласитесь, это лучше, чем ничего. Возможно в России, по причине иной культуры и иного, исторически сложившегося, отношения к исключительному праву данное применение стеганографии неактуально; но, например, в Японии, где за скачивание torrent-файлов могут посадить, применение стеганографических ЦО более вероятно.

    Стеганографические водяные знаки (СВЗ) (Stego Watermarking)


    В отличие от ЦО, СВЗ подразумевает наличие одинаковых меток для каждой копии контейнера. В частности СВЗ можно использовать для подтверждения авторского права. Например, при записи на видеокамеру можно в каждый кадр вкраплять информацию о времени записи, модели видеокамеры и/или имени оператора видеокамеры.
    В случае если отснятый материал попадет в руки конкурирующей компании, вы можете попытаться использовать СВЗ для подтверждения авторства записи. Если ключ держать в секрете от владельца камеры, то с помощью СВЗ можно подтверждать подлинность фото и/или видео снимков. Кстати, наш коллега по цеху, Дмитрий Витальевич Скляров, успешно поломал стеганографию на некоторых моделях камеры Canon. Проблема правда была аппаратной, саму стеганку Дмитрий Витальевич не трогал, тем не менее он стеганографически «доказал» подлинность Сталина с iPhone'ом.

    Фотография Сталина с iPhone'ом, сделанная Д.В. Скляровым (с корректным СВЗ)
    image


    Скрытая передача данных (СПД)


    Это «классическая» цель стеганографии, известная со времен Энея Тактика (Αινείας ο Τακτικός, см его труд, содержащий простые стеганографические приемы: «О перенесении осады»). Задача — передать данные так, чтобы противник не догадался о самом факте появления сообщения.

    В современных русскоязычных работах, посвященных стеганографии, часто используется термин ЦВЗ (Цифровые водяные знаки). Под этим термином подразумевают то СВЗ, то ЦО. (А иногда СВЗ и ЦО одновременно, да еще в одной статье!) Тем не менее при реализации ЦО и СВЗ возникающие проблемы и задачи принципиально различные! Действительно, СВЗ на всех копиях электронного документа одинаков, а ЦО на всех копиях документов различен. По этой причине, например, атака сговором принципиально невозможна в СВЗ! Хотя бы по этой причине следует различать СВЗ и ЦО. Всех, кто собирается работать в области стеганографии, настоятельно советую не употреблять термин ЦВЗ в своей речи.

    Данная, казалось бы очевидная мысль, до сих пор у многих вызывает недоумение. Аналогичную точку зрения о необходимости различать СВЗ и ЦО высказывали такие небезызвестные в узких кругах «стеганографы», как Кашен (Cachin), Петикола (Petitcolas), Каценбейзер (Katzenbeisser).

    Для каждой из этих трех целей следует разрабатывать свои собственные критерии стойкости стеганографической системы и формальные информационно-теоретические модели для их достижения, т.к. смысл применения стеганографии различен. Про фундаментальное отличие СВЗ и ЦО написано выше. Но может быть имеет смысл объединить СПД с ЦО или с СВЗ? Нет! Дело в том, что смыслом СПД является сама скрытая передача данных, а ЦО и СВЗ предназначены для защиты самого контейнера. Более того, сам факт наличия ЦО или СВЗ может не быть тайным, в отличие от большинства задач для СПД. В частности, по этой причине говорить о возможности построения совершенной стегосистемы (по Кашену) для реализации ЦО или СВЗ для большинства практических задач не имеет никакого практического смысла.

    Международный журнал Springer: Information Hidding вообще предлагает под стеганографией называть только СПД, так как ЦО и СВЗ не требуют сокрытия самого факта передачи данных. Например, вы знаете, что купюра в 100 рублей защищена. Некоторые механизмы вам известны, некоторые известны только специалистам, а некоторые содержат государственную тайну. Но сам факт о том, что существуют некие секретные механизмы всем известны; неизвестно только каким образом и какие именно технологии дополнительно защищают бумажную купюру…

    Называние стеганографией только цель СПД в журнале Springer кажется разумным, но русскоязычный термин "Информационное сокрытие" в отечественных статьях и диссертациях пока не прижился. Поэтому в данной работе под термином Springer'а Information Hiding будем подразумевать всю стеганографию, а под термином Springer'а steganography будем подразумевать только одну цель стеганографии — СПД.

    Практическое применение стеганографии


    Обсудив цели, перейдем к практическим применениям. Я нашел 15 задач, для которых может быть актуальна стеганография. Если вы с чем-либо несогласны или я что-либо упустил, то буду рад вашим замечаниям! Смело пишите!

    1. Незаметная передача информации (СПД)


    Самое очевидное, что первое приходит на ум. В отличие от криптографических методов (которые тайны, но не скрытны), стеганография может применяться как метод незаметной передачи информации. Это составляет «классическое практическое применение» стеганографии, поэтому данная цель — на первом месте.

    2. Скрытое хранение информации (СПД)


    Данная цель стеганографии во многом похожа на предыдущую. Только в данном случае стеганография используется не для передачи, а для хранения какой-либо информации, обнаружение самого факта наличия которой (пускай хоть даже в зашифрованном виде) пользователю нежелательно. Очевидно, что данная задача реализуема на носителях данных, но не в каналах связи. Причем избыточность на многих носителях может быть невероятно большой. Например общий объем данных (с учетом кодов RLL), которые можно записать на CD диск составляют 1828 Мб данных. Это огромная избыточность, которую можно использовать для сокрытия данных!

    Если бы Гена Рыжов из фильма }{0ТТ@БЬ)Ч подумал бы об этом и не поленился бы немножко попаять и попрогать, то он вряд ли хранил бы CD'шки с «компрометирующим» ПО в горшке из под кактуса. Я думаю хакер Геннадий просто бы вкраплял данные в ECC оптических дисков, а сами диски с фотографиями котиков хранил бы в открытую! Согласитесь, это гораздо лучше горшка из под кактуса! :)

    3. Недекларированное хранения информации (СПД)


    Многие информационные ресурсы позволяют хранить данные только определенного вида. Например портал YouTube позволяет хранить только видеоинформацию в форматах MOV, MPEG4, AVI, WMV, MPEG-PS, FLV, 3GPP, WebM. Однако можно использовать стеганографию для хранения данных в других форматах. Не спорю, что в условиях существования различных ресурсов наподобие Yandex Disk, данная цель может показаться странной. Скорее всего практической значимости и нет; только just4fun и забавная курсовая для студента.

    Однако сайт hid.im позволяет пользователям скрывать файлы .torrent внутри изображений PNG. Вот как прокомментировал Майкл Наттом (Michael Nutt), создатель проекта:

    Это попытка сделать торренты более живучими. Разница в том, что нет больше нужды именно в индексирующем сайте, чтобы хранить ваш торрентовый файл. Многие форумы дозволяют закачку картинок, но более никаких других типов файлов
    (@Mithgol Hid.im преобразует торренты в изображения PNG)


    Есть так же проект StegTorrent, который в отличие от онлайн-сервиса hid требует установки.

    В феврале 2015 года в Хакере опубликовали заметку "Десятки тысяч баз MongoDB доступны через интернет". В принципе данные «косяки», помимо прочего, можно использовать для недекларированного хранения данных. (Еще один аналог горшка с кактусом?)

    Десятки тысяч баз MongoDB доступны через интернет (Хакер, 12.02.2015)
    Трое студентов из Центра ИТ-безопасности, конфиденциальности и отчётности (CISPA) Саарского университета обнаружили 39890 баз данных MongoDB, доступных через интернет. Некоторые принадлежат крупным компаниям и содержат персональную и финансовую информацию на миллионы людей.

    MongoDB — популярная кросс-платформенная документо-ориентированная СУБД с открытым исходным кодом. Её используют организации Craigslist, eBay, SourceForge, Viacom и многие другие.

    Как можно было догадаться, студенты использовали для поиска известный поисковик Shodan, который сканирует порты и индексирует информацию, недоступную через другие поисковые системы. В частности, искали серверы с открытым портом TCP 27017, который указан по умолчанию в конфигурации MongoDB.

    curl $SHODANURL |grep -i class=\"ip\" |cut -d '/' -f 3 \
    |cut -d '"' -f 1|uniq >db.ip
    


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

    Самые крупные находки — БД одного из французских интернет-провайдеров и оператора сотовой связи с адресами и телефонами миллионов клиентов, а также база немецкого интернет-магазина, которая вдобавок содержит платёжную информацию. А вообще, местоположение жертв и размеры их потенциальных потерь показаны на карте вверху (кликабельна).

    Эти компании, отделы информационной безопасности, центры CERT и разработчики MongoDB уведомлены об уязвимости.

    Более подробные результаты исследования с рекомендациями по защите см. в опубликованном отчёте (pdf).


    4. Защита исключительного права (ЦО)


    В качестве возможного применения можно привести голографический многоцелевой диск (Holographic Versatile Disc, HVD). (Правда есть точка зрения, что данная технология изначально «мертворожденная» ) Разрабатываемые ныне HVB могут содержать до 200 Гб данных на один cartridge. Эти технологии предполагают использовать компаниями теле и радиовещания для хранения видео и аудио информации. Наличие ЦО внутри корректирующих кодов этих дисков может использоваться в качестве основного или дополнительного средства для защиты лицензионного права.

    В качестве другого примера, как я уже писал ранее, можно привести интернет-продажу информационных ресурсов. Это могут быть книги, фильмы, музыка и т.д. Каждая копия должна содержать ЦО для идентификации личности (хотя бы косвенной) или специальную метку для проверки лицензионная это копия или не лицензионная.

    Данную цель попыталась воплотить в 2007-2011 годах компания amazon.com. Цитата artty из статьи «Защита» mp3 файлов на amazon.com:
    Если по-русски: скачанный файл будет содержать уникальный идентификатор покупки, дату/время покупки и др. информацию (...).

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

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


    5. Защита авторского права (СВЗ)


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

    6. Защита подлинности документов (СВЗ)


    Технология может быть такая же, как и для защиты авторского права. Только в данном случае стеганография используется не для подтверждения авторства, а для подтверждения подлинности документа. Документ, не содержащий СВЗ считается «не настоящим», т.е. поддельным. Уже упомянутый выше Дмитрий Скляров как раз решал противоположенную задачу. Он нашел уязвимость фотоаппарата Cannon и смог подделать подлинность фотографии Сталина с iPhone'ом.

    7. Индивидуальный отпечаток в СЭДО (ЦО)


    В системе электронного документооборота (СЭДО) можно использовать индивидуальный отпечаток внутри *.odt, *.docx и иных документах при работе с ними пользователем. Для этого должны быть написаны специальные приложения и/или драйверы, которые установлены и работают в системе. Если данная задача выполнена, то с помощью индивидуального отпечатка можно будет опознать, кто работал с документом, а кто нет. Разумеется стеганографию в данном случае глупо делать единственным критерием, но как дополнительный фактор идентификации участников работы с документом она может быть полезна.

    8. Водяной знак в DLP системах (СВЗ)


    Стеганография может быть применима для предотвращения утечек информации (Data Leak Prevention, DLP). В отличие от индивидуального отпечатка в СЭДО, в данном применении стеганографии при создании документа, содержащий конфиденциальный характер, вкрапляется определенная метка. При этом метка не изменяется, вне зависимости от количества копий и/или ревизий документа.

    Для того, чтобы извлечь метку необходим стегоключ. Стегоключ, разумеется, держится в тайне. DLP-система, перед одобрением или отказом выдать документ вовне, проверяет наличие или отсутствие водяного знака. Если знак присутствует, то система не разрешает отправлять документ вовне системы.

    9. Скрытая передача управляющего сигнала (СПД)


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

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

    10. Стеганографические botnet-сети (СПД)


    Если быть педантом, то данное применение можно считать частным случаем скрытой передачей управляющего сигнала. Тем не менее, я решил обозначит данное применение отдельно. Мой коллега из ТГУ прислал мне весьма любопытную статью неких Shishir Nagaraja, Amir Houmansadr, Pratch Piyawongwisal, Vijit Singh, Pragya Agarwal и Nikita Borisov«Stegobot: a covert social network botnet». Я не специалист по botnet-сетям. Не могу сказать, лажа это или интересная фича. Буду раз услышать мнение хабрасообщества!

    11. Подтверждение достоверности переданной информации(ЦО).


    Стегосообщение в данном случае содержит данные, подтверждающие корректность передаваемых данных контейнера. В качестве примера это может быть контрольная сумма или хеш-функция (дайджест). Задача подтверждения достоверности является актуальной, если противник имеет необходимость подделать данные контейнера; по этой причине данное применение не нужно путать с защитой подлинности документов! Например если речь идет о фотографии, то защитой подлинности является доказательство того, что данная фотография настоящая, не подделанная в фотошопе. Мы как бы защищаемся от самого отправителя (в данном случае фотографа). В случае подтверждения достоверности необходимо организовать защиту от третей стороны (man in the middle), которая имеет возможность подделать данные между отправителем и получателем.

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

    12. Funkspiel («Радиоигра») (СПД)


    Из википедии:
    Определение Funkspiel'я
    Радиоигра (калька с нем. Funkspiel — «радиоигра» или «радиоспектакль») — в практике разведки XX века использование средств радиосвязи для дезинформации разведывательных органов противника. Для радиоигры часто используют захваченного контрразведкой и перевербованного разведчика-радиста или двойного агента. Радиоигра позволяет имитировать деятельность уничтоженной или никогда не существовавшей разведсети (и таким образом снижать активность противника по заброске новых разведчиков), передавать противнику дезинформацию, получать сведения о намерениях его разведывательных органов и достигать других разведывательных и контрразведывательных целей.

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


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

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

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

    13. Неотчуждаемость информации (СВЗ)


    Существует ряд документов, для которых важна целостность. Ее можно осуществить резервированием данных. Но что делать, если есть необходимость иметь документы в таком виде, чтобы невозможно было одну информацию отделить от другой информации? В качестве примера можно привести медицинские снимки. Многие авторы для надежности предлагают вовнутрь снимков вкраплять информацию об имени, фамилии и иных данных пациента. См например книгу Штефана Каценбейзера (Stefan Katzenbeisser) и Фабиана Петикола (Fabien A. P. Petitcolas) "Information Hiding Techniques for Steganography and Digital Watermarking":

    Отрывок про использование стеганографии в медицине. из книги ''Information Hiding Techniques for Steganography and Digital Watermarking''
    The healthcare industry and especially medical imaging systems may benefit from information hiding techniques. They use standards such as DICOM (digital imaging and communications in medicine) which separates image data from the caption, such as the name of the patient, the date, and the physician. Sometimes the link between image and patient is lost, thus, embedding the name of the patient in the image could be a useful safety measure. It is still an open question whether such marking would have any effect on the accuracy of the diagnosis but recent studies by Cosman et al. revealing that lossy compression has little effect, let us believe that this might be feasible. Another emerging technique related to the healthcare industry is hiding messages in DNA sequences. This could be used to protect intellectual property in medicine, molecular biology or genetics.


    Аналогичные рассуждения можно сделать по поводу современной астрономии. Приведем цитату отечественного астронома Владимира Георгиевича Сурдина (ссылка на видео):
    Я завидую тем, кто сейчас входит в науку. Последние 20 лет мы [астрономы] в общем-то топтались на месте. Но сейчас ситуация изменилась. В мире построено несколько телескопов совершенно уникального свойства. Они видят почти все небо и огромные объемы информации получают каждую ночь. Вот достаточно сказать, что за предыдущие 200 лет астрономы открыли несколько тысяч объектов. (...) Это за 200 лет! Сегодня каждую ночь мы открываем триста новых объектов солнечной системы! Это больше, чем человек ручкой смог записать бы в каталог. [за сутки]


    Подумать только, каждую ночь 300 новых объектов. Понятно, что это различные мелкие космические астеройды, а не открытие новых планет, но все же… Действительно, возможно было бы разумно вкраплять информацию о времени съемки, месте съемки и иные данные непосредственно в изображение? Тогда при обмене снимков между астрономами, ученые всегда могли бы понять, где, когда и при каких обстоятельствах был сделан тот или иной снимок. Можно даже вкраплять информацию без ключа, считая, что противника нет. Т.е. использовать стеганографию только ради «неотчуждения» самих снимков от дополнительной информации, надеясь на честность пользователей; возможно, это было бы гораздо более удобно, чем сопровождать каждый снимок информацией.

    Из мира компьютерных игр можно привести WoW. Если сделать скриншот игры, то автоматически внедряется СВЗ, содержащий имя пользователя, время снятия скриншота (с точностью до минуты и IP) адрес сервера.

    14. Стеганографическое отвлечение (?)


    Как понятно из названия задача стеганографического отвлечения — отвлечь внимание противника. Данная задача может быть поставлена в случае если есть какая-либо иная причина использования стеганографии. Для стеганографического отвлечения необходимо, чтобы генерация стегоконтейнеров была существенно «дешевле» (с точки зрения машинных и временных ресурсов), чем обнаружение стеганографии противником.

    Грубо говоря, стеганографическое отвлечение чем-то напоминает DoS и DDoS атаки. Вы отвлекаете внимание противника от контейнеров, которые действительно содержат что-то ценное.

    15. Стеганографическое отслеживание (СПД)


    Данное применение чем-то похоже на п.7 индивидуальный отпечаток в СЭДО, только цель стоит иная — поймать злоумышлинника, который «сливает» информацию. Из реального мира можно привести пример отмеченных дензнаков («меченные деньги»). Они используются правоохранительными органами, для того чтобы преступник, получивший деньги за какую-либо незаконную деятельность, не мог бы потом заявить, что эти деньги были у него до сделки.

    Почему бы не перенять опыт «реальных коллег» в наш виртуальных мир? Таким образом стеганографическое отслеживание напоминает чем-то вроде honeypot'а.

    Прогноз о будущем стеганографии в первой четверти XXI века


    Прочитав полусотню различных статей по стеганке и несколько книжек, рискну высказать свое мнение по поводу стеганографии. Данное мнение — лишь мое мнение и я его никому не навязываю. Готов к конструктивной критике и диалогу.

    Тезис. Я считаю, что мир технически готов к стеганографии, но в «культурном» плане современное информационное общество пока ещё не дозрело. Я думаю, что в ближайшее время (2015-2025 годах) произойдет то, что возможно в будущем назовут "стеганографической революцией"… Может быть это немного заносчивое утверждение, но я попытаюсь обосновать свою точку зрения четырьмя положениями.

    Первое. В данный момент не существует единой теории стеганографии. Совершенно секретная стегосистема (по Кашену) конечно лучше, чем ничего, но на мой взгляд это черно-белая фотография хвоста сферического виртуального коня в вакууме… Миттельхользер попытался немного улучшить результаты Кристиана Кашена, но пока это очень пространная теория.

    Отсутствие единой теории — важный тормоз. Математически доказано, что шифр Вернама (=«одноразовый блокнот») взломать невозможно, по этой причине связь между В.В. Путиным и Баракой Обамой осуществляется именно с помощью этого алгоритма. Существует определенная теория, создающая и изучающая абстрактные (математические) криптографические объекты (Bent-функции, LFSR, циклы Фейстейля, SP-сеты и т.д.). В стеганографии существует зоопарк терминов и моделей, но большинство из них необоснованны, изучены не полностью или притянуты за уши.

    Тем не менее определенные сдвиги в данном направлении уже есть. Уже осуществляются скромные попытки использовать стеганографию если не как основное или даже единственное решение, то как вспомогательный инструмент. Огромный сдвиг в теории произошел за последние пятнадцать лет (2000-2015), но думаю об этом можно написать отдельный пост, в двух словах сказать трудно.

    Второе. Стеганография — наука междисциплинарная! Это первое, что должен уяснить любой начинающий «стеганограф». Если криптография может абстрагироваться от оборудования и решать исключительно задачи в мире дискретной математике, то специалист по стеганографии обязан изучать среду. Хотя конечно и в построении криптосистем существует ряд проблем, например атака по побочным каналам; но это не вина качества шифра. Я думаю, что стеганография будет развиваться в соответствии с развитием изучения среды, в которой передаются скрытые сообщения. Таким образом разумно ожидать появления «химической стеганографии», «стеганографии в изображениях», «стеганографии в кодах, исправляющих ошибки», «продовольственной стеганографии» и т.д.

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

    Третее. Современный виртуальный мир перенасыщен текстами, картинками котиков, видеороликами и прочая и прочая… На одном сайте YouTube ежеминутно загружается более 100 часов видео! Вы только подумайте, ежеминутно! Вот сколько минут вы читаете этот пространный опус?.. А теперь умножьте это число на 100! Вот столько часов различного видео на одном только YouTube появилось за это время!!! Вы можете себе это представить? А ведь это огромная «почва» для сокрытия данных! То есть «технически» мир давным давно готов к стеганографии. И я, если честно, глубоко уверен, что стеганография и противодействие стеганографии в ближайшем будущем станет такой же актуальной проблемой, как проблема BigData или Internet of Things.

    Четвертое. Давным-давно, когда я был студентом первого курса Бауманки, один мой друг подарил мне на день рождения "Книгу Шифров" Саймона Сингха. Каково же было мое удивление, когда я узнал, что первый компьютер был не американский ENIAC, а польская "Бомба", разработанная Генрихом Зыгальским, Ежи Рожицким и Марианом Реевским в 1938 году. Летом 1939 года в Кабатском лесу (недалеко от Варшавы) поляки подарили англичанам свои разработки и эвакуировали криптоаналитиков и инженеров. В Британии поляков возглавил Алан Тьюринг и на основе Бомбы была создана машина Colossus

    Данная информация перестала быть секретной, если мне не изменяет память, только в 2000-х годах. В качестве другого исторического примера можно привести алгоритм RSA, который был изобретен в конце ВМВ британскими криптографами. Но, по понятным причинам, военные засекретили первый в мире алгоритм асимметричного шифрования и пальма первенства досталась Диффи, Хелману, а затем Ривесту, Шамиру и Адлеману.

    К чему я это? Дело в том, что в информационной безопасности все изобретается минимум два раза: один раз «в закрытую», а второй раз «в открытую»; а в некоторых случаях даже больше, чем два раза. Это нормально. Думаю тоже ждет и стеганографию (ели уже не постигло).

    В современной западной литературе почему-то «исчезли» (т.е. перестали публиковаться) многие ученые, которые в 1998-2008 годах предлагали весьма интересные идеи. (например Питер Вайнер, Мишель Элиа). Примерно аналогичная ситуация была перед изобретением атомного оружия… Кто знает, может быть уже изобретены совершенные стегосистемы и они успешно используются ГРУ и/или АНБ? А мы, дочитывая этот пост и глядя на наручные часы высчитываем, сколько ещё часов мурлыкающих котиков закачали миллионы пользователей на YouTube и есть ли среди них котики с перепиской террористов; команд для botnet-сети или чертежи РТ-2ПМ2, зашифрованные шифром Вернама.
    Как вы считаете, нужен ли хаб «стеганография»?
    Что вам интересно в стеганографии?

    Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.

    Поделиться публикацией
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама
    Комментарии 36
    • 0
      Интересует устойчивое «размазывание» скрытой информации по контейнеру. В «лихие 90-е» видел заметку о том, что якобы Playboy внедряет незаметные глазу «водяные знаки» в свои изображения, причём они устойчивы к весьма суровым преобразованиям и зашумлениям картинки, вплоть до того, что надёжно обнаруживаются даже на скане распечатки. Не знаю уж, сколько там вымысла, но любопытны методы, позволяющие так сплавлять одно с другим.
      • 0
        На счет Playboy в первый раз слышу :))
        Первый вопрос: зачем? Если рассматриваем кейс №5 «Защита авторского права»,
        то когда вы фотографируете голубого древолаза в чащах Амазонки и хотите похвастаться своим снимком, то лягушка не может подтвердить, что вы — автор снимка.

        Если украдут фото девочки, то думаю девочка может сказать, кто ее фотографировал, если дело дойдет до суда…
        Поэтому вроде как отпадает.

        Если кейс №12 «Неотчуждаемость информации» — то вполне вероятно. Если верить википедии, Playboy издается с 1953 года. Почему бы в снимках не указывать имя и год съемки?

        • 0
          Для защиты смежных прав в автоматическом режиме. Имя и год съёмки можно от картинки просто отрезать или залить чёрненьким, сделать ресайз и гауссово размытие или наоборот sharpen, после чего торговать на левом сайте «горячими картинками», что нанесёт плейбоям неисчислимую упущенную прибыль. А так их коварный робот-паук сможет находить в интернете нарушителей, да и пауки гугля и других больших поисковиков тоже смогут сориентироваться в ситуации.
          Впрочем, здесь меня всё-таки больше интересует принцип внедрения и чтения подобных меток, если они вообще существуют — мои смутные воспоминания об этой заметке не самый надёжный источник.
          • 0
            Не согласен. Есть ISBN издания, есть команда людей, т.е. потенциальных свидетелей…
            Или под «автоматическим режимом» вы имеете в виду устройство, которое позволяет определить — легальный или нелегальный контент без непосредственного обращения к правообладателю??

            Тут одна проблема — если хотя бы одно такое устройство взломают — то все!
            Правда можно сам ключ и алгоритм проверки хранить на удаленном сервере. Но тогда можно развернуть большую базу данных для данного сервера, который бы содержал все изображения…

            Аналогичные рассуждения с «коварным роботом-пауком».

            UPDATE:
            чтобы в базе данных не хранить все изображения, можно хранить их сжатые копии как это делают поисковые системы при поиске по картинкам.
            • +1
              В те годы искать похожие картинки по сжатой копии ещё не умели, а ляпать сайты-однодневки с палёным контентом уже таки да. Другое дело, что рингтоны в конечном итоге оказались прибыльнее.
              Под «автоматическим режимом» я подразумевал описанного в заметке ползающего по интернету плейбойского робота, обнаруживающего краденые картинки. Отсканированные из бумажного журнала, например. Прошедшие ресайз, кроп и корректировку цвета.
              Про какое издание с его ISBN и какую «команду людей», да ещё и потенциальных свидетелей идёт речь, мне непонятно.
              И опять же, меня интересует не столько цель использования, сколько методы и математика. Как можно внедрить в изображение настолько устойчивые и в то же время незаметные водяные знаки?
      • +4
        До сих пор всегда считал, что стеганография — это исключительно скрытая передача или хранение информации. Когда цель одной стороны — скрытно хранить или передавать информацию, а цель противника — установить факт такой передачи или хранения, а по возможности — извлечь или внедрить стегосообщение.

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

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

          Но, не забывайте, что как я писал в статье, что в англоязычной литературе все чаще превалирует термин Information Hidding(информационное сокрытие), который включает в себя steganography (СПД), digital watermark и fingerprint.
          Есть аналогия в криптухе. Шифрование = crypt, Расшифрование=decrypt, Дешифрование = break, то есть дешифрование != decrypt; так и здесь стеганография =Information Hidding, steganography = СПД, то есть стеганография != steganography… Вот такой вот казус :)

          На счет возрастания уровня шумов, можно вкраплять большее количество данных, используя меньшее количество шумов. Тут есть одна небольшая алгоритмическая хитрость… Как-нибудь напишу об этом. Заявка принята :)

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

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


          В принципе на каждое действие можно придумать противодействие… Опять же, дело в среде. Чем она сложнее, тем хуже.
          Вот самый яркий пример — работы филологов. Они изучают свойства именно человеческой речи и предлагает стеганографию внутри фонем человеческой речи… Я не филолог, но как я понимаю суть в том, что есть «микромикроинтонации» нашего голоса, которые в некоторых случаях хаотичны, т.е с определенной вероятностью используется одна «микромикроинтонации», с иной — вероятность другая… При этом на слух их вообще невозможно распознать… А никакие статистики вам тут не помогут… Я это взял из диссертации некой Сагалай Марины: dlib.rsl.ru/01004858302 Но говорю еще раз, я не специалист в филологии…
          • +1
            Скажите, а откуда взялась используемая вами терминология? Кто и почему в русском языке к термину «стеганография» в смысле СПД добавил еще смысл ЦО и СВЗ? По-моему эти вещи очень мало связаны друг с другом, и совместное их рассмотрение только вносит путаницу.
            • 0
              Когда я был наивным студентом, я думал, что это мое «ноу хау» и искал опровержения…
              Но, при поступлении в аспирантуру и постепенного освоения англоязычной литературы, я нашел журнал Springer: Information Hidding.
              Эта терминология оттуда.
              При этом многие авторы неоднократно подчеркивают различие между fingerprint (у меня ЦО) и stego watermark (у меня СВЗ).

              По-моему эти вещи очень мало связаны друг с другом, и совместное их рассмотрение только вносит путаницу.


              Можно поподробнее? Почему вы так считаете?
              • +1
                журнал Springer: Information Hidding.
                Эта терминология оттуда.

                Журнал английский вроде. Но выше вы говорили, что:
                стеганография =Information Hidding, steganography = СПД, то есть стеганография != steganography

                Правильно ли я понял, что в английском языке steganography=СПД?

                Но тогда остается без ответа вопрос о значении русского термина «стеганография», который вы определили как «СПД+СВЗ+ЦО». Кто и почему присвоил этому термину такие значения, отличные от значения английского термина «steganography»?
                Можно поподробнее? Почему вы так считаете?

                Задачи внедрения информации в контейнер, с одной стороны, и внедрения информации таким образом, чтобы это было трудно обнаружить — разные. Настолько разные, что требуют существенно различных подходов для их решения. Вы же сами проводите между ними в статье большую жирную черту. Поэтому я и считаю, что их совместное рассмотрение, тем более под одним названием «стеганография», вносит путаницу. Вот и хочу выяснить, кто, когда и почему объединил их в русском языке под одним термином. И насколько такая трактовка термина «стеганография» является общепринятой в русском обществе специалистов по теме.
                • 0
                  Правильно ли я понял, что в английском языке steganography=СПД?


                  В журнале Springer — «да». В остальных работах — «да» примерно в 85% случаев (по моим наблюдениям)

                  Но тогда остается без ответа вопрос о значении русского термина «стеганография», который вы определили как «СПД+СВЗ+ЦО». Кто и почему присвоил этому термину такие значения, отличные от значения английского термина «steganography»?


                  В этом вся и проблема, что и я считаю, что стеганографией нужно называть только СПД.
                  Так же думаю разумным "узаконить" термин информационное сокрытие… Проблема в том, что отечественные специалисты (и те, кто считают себя специалистами) по прежнему называют стеганографией все вышеперечисленное… :(
                  Против рожна не попрешь… Мне ещё защищаться надо, я даже не кандидат наук пока…

                  Поэтому я и считаю, что их совместное рассмотрение, тем более под одним названием «стеганография», вносит путаницу.


                  Полностью согласен за одним «но»: до определенного момента изучение построения стегосистем для каждой из трех целей: СПД, ЦО, СВЗ могут, выражаясь вульгарно, «помогать друг другу»… Поэтому тот же журнал Springer содержит «все в одном». Последние выпуски разбивают на секции: СПД (steganography), ЦО, СВЗ… Иногда добавляют секцию стегоанализа.

                  Однако модели типа «Алиса-Боб-Труни» конечно для каждой цели разумно разрабатывать свои. В этом вы правы.
                  • +1
                    Задачи внедрения информации в контейнер, с одной стороны, и внедрения информации таким образом, чтобы это было трудно обнаружить — разные.

                    Поэтому я и считаю, что их совместное рассмотрение, тем более под одним названием «стеганография», вносит путаницу

                    Стеганография — это наука о сокрытии информации. Далеко ходить не надо, из определения следует, что если вы внедряете информацию в контейнер открыто, это не стеганография. Я думаю, что и автор не подразумевает под СВЗ или ЦО в том числе и что-то, встраиваемое открытым способом. В этом смысле никакой путаницы нет.
          • +1
            Я джва года ждал такую статью на Хабре!

            Насчет классификации способов практического применения. Мне кажется, что значимость некоторых пунктов под вопросом, некоторые их них можно сгруппировать в один. Например, защита подлинности (пункт 6) реально осуществляется с помощью ЭЦП (в том числе, в примере с фотографией), а факт вкрапления ЭЦП в тело контейнера — это отсылка к пункту 13.

            Также присоединяюсь к вопросу предыдущего комментатора. Существуют ли методы стеганографии, устойчивые к обнаружению (хоть в каком-нибудь контейнере)? Хочется сравнить положение дел с таковым в криптографии. Мне представляется, что фундаментальные проблемы криптографии решены в том смысле, что известны алгоритмы шифрования/подписи с доказанной сложность взлома (с некоторыми оговорками, что в основе лежат недоказанные гипотезы типа P≠NP). В то время как в стеганографии ситуация неясна (мне, по крайней мере).
            • +2
              По поводу объединения некоторых практических применений — согласен, что многие можно объединить в один или дальше «дробить». В принципе все можно объединить в три цели: СПД, ЦО, СВЗ.
              В теории (см. тот же журнал Springer) так собственно и делают.

              По поводу устойчивости в стеганографии и криптографии. Начнем с последнего, с криптографии. Не смотря на бурное развитие криптухи ( особенно в XX век, когда криптуха из лингвистической науки превратилась в математическую), в криптографии нет универсального определения устойчивости. Есть «мера нелинейности» (см. Bent-функции), различные оценки «качества» псевдослучайности в потоковых шифрах (см например классический LFSR), различные универсальные методы взлома.

              Шифр считается стойким, если он устойчив к ИЗВЕСТНЫМ универсальным методам взлома + известен достаточно давно, алгоритм открыт и не нашлось криптографа, который бы поламал шифр. Есть даже целые конкурсы в криптухе. Тот же самый AES — это в начале был конкурс, на котором победил шифр Rijndael… Конкурс проводило американское правительство в ОТКРЫТУЮ. Считалось, что раз Rijndael никто в мире не поломал, значит шифр хороший.

              Но в криптухе нет никаких гарантий! Никто не доказал, что взлом RSA — это NP задача! Это НЕИЗВЕСТНО… Т.е. если найдется кто-то кто поломает RSA и никому об этом не скажет, то почти вся система (в том числе и банковская) под большим ударом.

              Единственный в мире не взламываемый шифр — это шифр Вернама. Но он «дорогой», длина ключа равна длине контейнера. К тому же сам ключ можно по разному генерировать, транспортировать. Так что side cannek attacks по прежнему возможен.

              По поводу стеганографии, устойчивой к обнаружению.
              Как я считаю, самое важное — это СРЕДА. А среда бывает разной, в том числе очень даже трудной для изучения. Что такое «невосприимчивость человеческого глаза»? Где граница «восприимчивости»? Можно ли алгоритмически обнаружить вкрапление? Каковы ошибки первого и втогоро родов? Зависят ли эти ошибки от фотографии-контейнера?.. Вопросов очень много и они на 90% имеют отношение к СРЕДЕ.

              В акростеганографии вопрос вообще ставится лингвистам. Насколько данный текст похож на человеческий? Насколько «уместны» в нем те или иные слова? Насколько «цельна» личность человека (есть и такое!), если предположить, что текст написан человеком: не шизофреник ли он???

              И так далее. Сначала нужно определиться со средой.
              Вопрос не праздный, когда будет свободное время, напишу как-нибудь пост об этом.
              • +2
                Пусть NP-полнота для RSA неизвестна, но по крайней мере можно опереться на предполагаемую сложность дискретного логарифма.

                Насчет стеганографии: среда безусловно важна, но для начала можно от нее абстрагироваться. И «невосприимчивость человеческого глаза» здесь ни при чем. Задача формулируется так: существует ли алгоритм, который может с некоторой уверенностью ответить на вопрос, содержит ли данный кусок данных (контейнер) стеганографические вкрапления заданного типа. Очевидный пример наивной реализации такого алгоритма — это изучение младших битов спектральных коэффициентов формата mp3 на предмет каких-либо закономерностей в них. Я не знаю, есть способы представить свою секретную информацию в виде высокоэнтропийной последовательности, неотличимой от качественного шума, и имеет ли это смысл (например, по причине того, что реальные кодеки оставляют в качестве мусора в младших битах что-то низкоэнтропийное).

                Отдельная задача — устойчивость водяных знаков на изображении к различным трансформациям (в том числе с потерями) изображения. Но мне эта зада не кажется важной и интересной. Собственно, в стеганографии мне интересна только СПД.
                • 0
                  Первое: есть subliminal стеганография и supraliminal стеганография. В supraliminal стеганографии в плане формальной модели совсем все плохо.
                  Второе: есть лингвистическая стеганография, которая оперирует не синтаксисом, а семантикой. Вот это subliminal или supraliminal??

                  Сузим класс стеганографии к subliminal и вычеркнем лингвистику.
                  Задача формулируется так: существует ли алгоритм, который может с некоторой уверенностью ответить на вопрос, содержит ли данный кусок данных (контейнер) стеганографические вкрапления заданного типа.

                  Под «заданного типа» вы скорее всего подразумеваете принцип Керкгоффса, верно?

                  Вот Кашен и Миттельхользер попытались это сделать. На мой взгляд очень абстрактно… Например они учитывают все виды контейнеров… Но в том то и суть стеганографии, что мы уже имеем наперед заданные контейнеры!
                  Если вы видите трехглазого котика, вы начинаете недоумевать, потому что трехглазых котиков нет. Вы можете это сформулировать на языке математики?..

                  Можно ограничить контейнеры по каким-либо статистическим свойствам. Но есть нюансы.

                  Во-первых, эти статистические свойства различны для разных сред. И порой ОЧЕНЬ различны так, что нельзя обобщить! А если и можно, то нельзя с этим работать.
                  Во-вторых, они являются абстракцией и упрощением реального мира… Если кто-то придумает другую абстракцию не слишком сложную (чтобы с ней можно было работать) и более качественную, чем ваша абстракция, то этот человек поломает стегосистему.

                  В криптухе все не так. Криптограф изначально создает тот мир, где ему удобнее конструировать стойкие шифры. Это очень важный нюанс, я считаю.
                  • +1
                    Я не очень понимаю, чем занимается лингвистическая стеганография, и совсем не понял про sub- и supraliminal. Наверно, это не то, что мне сейчас хочется обсудить.

                    Под «заданного типа» вы скорее всего подразумеваете принцип Керкгоффса, верно?

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

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

                    Я не вижу, чем приведенная постановка задачи менее ясна по сравнению с формализацией криптографических проблем.
                    • 0
                      Да, я вас так и понял.

                      Тут слабый момент следующий (жирный цвет — мой):
                      При этом, для простоты предположим, что атакующий имеет полный доступ к среде, так что можно считать, что сообщение просто публикуется в сети, но имеет (нескрываемое) ЭЦП Алисы для подтверждения его целостности. Вопрос в том, существует ли надежный метод обломать Вовочку в предположении, что он не имеет никакой дополнительной информации, кроме перечисленной выше.


                      Вовочка знает, что трехглазых котиков не существует? Если знает, то на основании чего он сделал такой вывод? Можно это формализовать математически?
                      Если не знает, то можно придумать такую систему. Если котик двуглазый — сообщение 0, если трехглазый — сообщение 1.

                      Можно еще проще, без трехглазых котиков.
                      Если котик — сообщение 0, если собачка — сообщение 1.

                      Понятно, что скорость, мягко говоря низкая…
                      Можно увеличить скорость передачи данных за счет увеличения времени «декодирования» (в данном случае понимания на стороне клиента, что за животное мы передаем)

                      Если котик — сообщение 00, если собачка — сообщение 01, если черепашка — сообщение 10, а если бегемотик — сообщение 11.

                      Вот это называется supraliminal channel или supraliminal стеганография, если человек сам воспринимает информацию.
                      Скорость низкая, но можно сделать БОЛЬШОЙ словарик соответствия животных и передаваемых бит информации… Можно на одной фотке одновременно показывать котика и собачку и передавать 00-01 соответственно; тогда нужно ввести «функцию упорядоченности». «котик-собачка» — 00-01, «собачка-котик» — 01-00.

                      Автоматизация: deep-learning, ну или что-то аналогичное… Это, конечно громоздко, возможно неоптимальное решение… Конечно будут ошибки но их можно компенсировать корректирующими кодами.

                      janatem, такой вариант интересен или слишком сложен?
                      • 0
                        Мне кажется, это не является методом передачи стеганографической информации, поскольку совсем не определяет самое интересное — как именно кодировать полезные данные. Если брать обычный текст в обычной бинарной кодировке и оборачивать его вышеописанным кодом «зверушка — бит», то никакой стеганографии не получится. Если атакующий заподозрил, что имеет место именно такая кодировка, то он без труда не только докажет наличие стеганографии, но и прочитает ее (максимум, ему придется определить, какой именно зверушке соответствует какая цифра, но этот шифр является тривиальным и мгновенно ломается хотя бы частотным анализом). В любом случае технически удобней хранить стегоданные, например, в LSB jpeg-изображения, а не в семантическом образе, которые передается изображением.

                        По-моему, задача сводится к тому, чтобы представить текст в виде последовательности, которая алгоритмически неотличима от случайной с известным распределением. Тогда ее можно будет совать в те места контейнера, где по дизайну самого контейнера подразумевается шум.
                        • +1
                          Если атакующий заподозрил, что имеет место именно такая кодировка, то он без труда не только докажет наличие стеганографии, но и прочитает ее (максимум, ему придется определить, какой именно зверушке соответствует какая цифра, но этот шифр является тривиальным и мгновенно ломается хотя бы частотным анализом).


                          Нет, ну разумеется перед вкраплением надо шифровать!
                          А так согласен, метод «кошек-собачек-бегемотиков» — это pure steganography (т.е. стеганография без ключа).
                          Конечно можно дальше развивать мысль. Например связь между объектами задается ключом. Скажем если ключ k1, то котик — 00, а если k2, то котик — 01…

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


                          Почему вы так решили? Да, данная область плохо исследована… Но это не значит, что этот метод не будет актуален.

                          По-моему, задача сводится к тому, чтобы представить текст в виде последовательности, которая алгоритмически неотличима от случайной с известным распределением. Тогда ее можно будет совать в те места контейнера, где по дизайну самого контейнера подразумевается шум.


                          Такие мысли есть, см. Кашена: An information-theoretic model for steganography.
                          Он предлагает мерить все относительной энтропией (relative entropy) (=дискретный случай расстояния Кульбака — Лейблера)
                  • +2
                    Я не знаю, есть способы представить свою секретную информацию в виде высокоэнтропийной последовательности

                    Такие способы есть. Называются они «компрессия» и «шифрование», лучше применять их оба одновременно. После их применения данные будут представлять собой белый шум и иметь равномерное распределение.

                    Именно эти свойства следует использовать для обнаружения стегосообщений. В реальной звукозаписи «настоящие» младшие биты будут скорее всего иметь другое распределение и спектр; также они скорее всего будут как-то коррелировать и взаимодействовать со старшими битами.

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

                    Если же заменить сигнал от младших бит стегосообщением — то никакого спектрального взаимодействия не будет; к имевшемуся шуму квантования просто прибавится белый шум от стегосообщения.
                    • 0
                      Да, это примерно то, что я хотел узнать. Во-первых, насколько качественную компрессию дают известные методы? Насколько результат алгоритмически неотличим от шума? Во-вторых, хотя мы знаем, что в реальности LSB как-то коррелированы между собой и со старшими битами, все же в них есть хоть немного энтропии. (Более того, наверняка энтропия есть не только в младших битах.) А раз так, то можем ли мы ее выделить и использовать для своих нужд, заменив на компрессированные стегоданные?
                      • +1
                        Насколько результат алгоритмически неотличим от шума?

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

                        Но, разумеется, поскольку сжатые и зашифрованные данные можно расшифровать и распаковать — то в принципе они от шума отличимы. Но только если вам известен ключ шифрования, алгоритм компрессии и метод кодирования данных.

                        все же в них есть хоть немного энтропии

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

                        Грубо говоря, если простой и очевидный способ СПД в звуке — это использование младших бит, и он дает довольно большую емкость стегосообщения (1/16 или даже 1/8 от исходного размера контейнера) — то повышенная маскировка будет ограничивать число допустимых комбинаций младших бит, а, следовательно, энтропию и размер стегосообщения.
                      • 0
                        Если представить оригинальный сигнал (без стегосообщения) в виде суммы сигналов от старших и младших бит — то сигнал от старших бит будет иметь шум квантования, который компенсируется сигналом от младших бит (соответствующие спектральные компоненты в обоих сигналах равны по модулю и противоположны по фазе).

                        Если же заменить сигнал от младших бит стегосообщением — то никакого спектрального взаимодействия не будет; к имевшемуся шуму квантования просто прибавится белый шум от стегосообщения.


                        MichaelBorisov, я не специалист по звуку.

                        Работает ли аналогия на изображения?

                        Для LSB это сработает (Если данных вкраплено достаточно много).
                        C Patchwork проблем не возникнет?
                        • +1
                          Работает ли аналогия на изображения?

                          Думаю, что работает. Только кроме простых спектральных методов обнаружения стегосообщений можно будет применять двумерные методы, детектирование контуров и т.д.
                    • 0
                      Я считаю, вы немного неправы по поводу отсутствия универсального определения устойчивости и смешиваете понятия «шифр» и «схема шифрования». Шифр Вернама совершенно устойчив по критерию Шеннона, который универсален в том смысле, что его можно применять к любому шифру как к семейству преобразований. К тому же выполнение это критерия как раз даёт безусловную гарантию секретности шифруемой информации. Другое дело, что для шифрования одного шифра мало, нужна схема шифрования. Я, конечно, понимаю что вы имеете в виду критерии стойкости для практически используемых шифров и схем шифрования. Но всё-таки.
                      • 0
                        Шифр Вернама совершенно устойчив по критерию Шеннона,

                        Шифр Вернама устойчив ко всем критериям, даже к тем, которые ещё не придумали…
                        Другое дело, что ключ-гамма должен быть действительно случайным, да и side channek attacks никто не отменял…

                        К тому же выполнение это критерия как раз даёт безусловную гарантию секретности шифруемой информации.


                        Ну почему же??? Мы наверное разное подразумеваем пот критерием Шеннона. Вы имеете в виду "совершенно стойкий шифр"?
                        • 0
                          Да, я имел в виду совершенно стойкий шифр по Шеннону. Под гарантией секретности я имел в виду свойство, которое даёт такой шифр. Генерация ключа может свести на нет стойкость схемы шифрования, но шифр тут ни причём. Я вообще к тому, что нельзя говорить, что в криптографии нет критерия устойчивости и абсолютно никаких гарантий.
                    • 0
                      Вспомнилась старая статья на хабре о Blizzard, которая в своей онлайн игре WoW в скриншотах пользователях добавляла цифровые водяные знаки (userID, time, realm).
                      habrahabr.ru/post/151297/
                      • +2
                        Эээ… Я вроде упоминал об этом ;))
                        Из мира компьютерных игр можно привести WoW. Если сделать скриншот игры, то автоматически внедряется СВЗ, содержащий имя пользователя, время снятия скриншота (с точностью до минуты и IP) адрес сервера.
                        • +1
                          Да, полностью не прочитал статью, прошелся по первой части и прочитал только названия пунктов «практического применения». Добавил в «избранное» как всегда — «на потом» :)
                          • 0
                            Ооо… Да, я тоже так люблю :))
                          • 0
                            Ну, еще вспомнился один момент с работы, когда надо было разбирать mp3 файл вручную — чтение загловка, подсчет точного кол-ва фреймов, проверка… etc, некоторые файлы имели мусорную информацию между фреймами. Тогда еще ничего не знал о стенографии, только слышал это слово, но не знал что оно означает. И подумалось, так можно же между ними записать свою информацию не относящуюся к описанию mp3 или аудио-данным. Но сейчас я понимаю что этого очень примитивный способ, так как при перекодировании(если не использовать нужный софт) или изменения формата эти данные потеряются.
                            • 0
                              Я называю это игрой в кошки -мышки :)
                              Часто именуют это «компьютерной стеганографией», ИМХО, ужасный термин.

                              Есть более умная игра в кошки-мышки: использовать неиспользуемые участи памяти в файловой системе. Если файловая система имеет гарантированное уничтожение памяти, то при удалении файлов, все данные заполняются случайными битами (нулями нельзя из-за остаточной намагниченности). Используя стеганографию + поточный шифр можно создать совершенную стеганографию! (если при этом будет хороший шифр)
                          • 0
                            не туда.
                            deleted
                          • +1
                            Наблюдение за ходом опроса.
                            На текущий момент 40%(19+21) за хаб «стеганография», а 42% против…
                            Пока «наши» проигрывают… Но по крайней мере не в сухую, а «нозря в ноздрю» ;))
                            Это радует.
                            Нужно 18%, которые сказали, что им «все равно» и 30 воздержавшихся хабраюзеров как-нибудь со временем через три-четыре статьи завербовать в свой лагерь ;))

                            Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.