(←) предыдущая запись ; следующая запись (→)

образовательное, программистское

Мне нравится концепция стеганографии. Это когда сообщение так «вшитo» в  ноcитель, что сторонний наблюдатель   даже не знает о  том, что тайное сообщение вообще  есть.

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

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

Например, если суметь правильно интерпретировать   информацию,  тo в  этoм сooбщении вы сможете прочитать данные моей банковскoй  карточки.

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

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

———
Начинающие «хакеры» часто считают, что могут надёжно скрыть следы своей деятельности. И, конечно, на этом прогорают.

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

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

———

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

Причём подобные «закладки» делают не только в софте, но и в железе. Так раньше печатные машинки и принтеры имели немного разные дефекты печати, чтобы можно было по распечатке сказать, на каком принтере она сделана.

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

Фокус в том, что если у кого-то есть сотня фотографий с вашего телефона (77.8% статистических величин взяты из головы) , то он поймёт, какие именно дефекты вносит ваша камера. И когда увидит сто первую фотку, он сможет сказать, сделана ли она вашим телефоном или нет.
Как вы думаете, сколько фотографий с вашего телефона лежит в соцсети? Хватит, чтобы вас зафингерпринтить? ;)