Стеганография изображений исходные коды программ на с

Когда-то давно я написал свой первый пост на хабре. И посвящён тот пост был весьма интересной проблеме, а именно стеганографии. Конечно, решение, предложенное в том старом топике, нельзя назвать стеганографией в истинном смысле этого слова. Это всего лишь игра с форматами файлов, но, тем не менее, довольно интересная игра.

Сегодня мы попробуем копнуть чуть-чуть глубже и рассмотрим алгоритм LSB. Если вам интересно, милости прошу под кат. (Под катом трафик: около мегабайта.)

Прежде всего, необходимо сделать небольшое вступление. Всем известно, что предназначение криптографии – сделать невозможным чтение секретной информации. Разумеется, криптография имеет свои области применения, но есть и другой подход к защите данных. Можно не шифровать информацию, а сделать вид, что у нас её нет. Именно для этого и придумана стеганография. Википедия уверяет нас что, «стеганография (от греч. στεγανοσ — скрытый и греч. γραφω — пишу, буквально «тайнопись») — это наука о скрытой передаче информации путём сохранения в тайне самого факта передачи.

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

В нашем случае контейнером будет выступать картинка в формате BMP. Для начала рассмотрим структуру этого файла. Файл условно можно разбить на 4 части: заголовок файла, заголовок изображения, палитру и само изображение. Для наших целей надо знать только то, что записано в заголовке.

Первые два байта заголовка – это сигнатура BM, далее в двойном слове записан размер файла в байтах, следующие 4 байта зарезервированы и должны содержать нули и, наконец, в ещё одном двойном слове записано смещение от начала файла, до собственно байтов изображения. В 24-битном bmp-файле каждый пиксел кодируются тремя байтами BGR.

Теперь мы знаем, как добраться до изображения, осталось понять, как туда можно записать необходимую нам информацию. Для этого нам и пригодится метод LSB. Суть метода заключается в следующем: мы заменяем младшие биты в байтах, отвечающих за кодирование цвета. Допустим, если очередной байт нашего секретного сообщения – 11001011, а байты в изображении –…11101100 01001110 01111100 0101100111…, то кодирование будет выглядеть так. Мы разобьём байт секретного сообщения на 4 двухбитовые части: 11, 00, 10, 11, и заменим полученными фрагментами младшие биты изображения: …11101111 0100110 01111110 0101100111…. Такая замена в общем случае не заметна человеческому глазу. Более того, многие старые устройства вывода, даже не смогут отобразить такие незначительные перемены.

Читайте также:  Можно ли подключить колонки к ps4

Понятно, что можно менять не только 2 младших бита, но и любое их количество. Тут есть следующая закономерность: чем большее количество бит мы меняем, тем больший объём информации мы можем спрятать, и тем большие помехи в исходном изображении это вызовет. Для примера вот вам два изображения:

При всём желании я так и не сумел увидеть разницы между ними, а тем не менее во втором изображении с помощью описанного метода спрятана поэма Льюиса Кэролла «Охота на Снарка». Если вы дочитали до этого момента, то вам наверняка интересно узнать и о реализации. Она довольна проста, но сразу предупрежу, что сделано всё на Delphi. Причин этому две: 1. Я считаю Delphi хорошим годным языком; 2. Эта программа родилась, в процессе подготовки курса по основам машинного зрения, а ребята, которым я этот курс читаю, пока ничего кроме Delphi не знают. Для тех, кто не знаком с синтаксисом надо пояснить одну вещь shl x – побитовый сдвиг влево на x, shr x – побитовый сдвиг вправо на x.

Считаем, что мы записываем в контейнер текст, хранящийся в строке и заменяем младшие два байта:
Код для записи:

for i : = 1 to length ( str ) do
begin
l1 : = byte ( str [ i ] ) shr 6 ;
l2 : = byte ( str [ i ] ) shl 2 ; l2 : = l2 shr 6 ;
l3 : = byte ( str [ i ] ) shl 4 ; l3 : = l3 shr 6 ;
l4 : = byte ( str [ i ] ) shl 6 ; l4 : = l4 shr 6 ;

f . ReadBuffer ( tmp , 1 ) ;
f . Position : = f . Position — 1 ;
tmp : = ( ( tmp shr 2 ) shl 2 ) + l1 ;
f . WriteBuffer ( tmp , 1 ) ;

f . ReadBuffer ( tmp , 1 ) ;
f . Position : = f . Position — 1 ;
tmp : = ( ( tmp shr 2 ) shl 2 ) + l2 ;
f . WriteBuffer ( tmp , 1 ) ;

f . ReadBuffer ( tmp , 1 ) ;
f . Position : = f . Position — 1 ;
tmp : = ( ( tmp shr 2 ) shl 2 ) + l3 ;
f . WriteBuffer ( tmp , 1 ) ;

f . ReadBuffer ( tmp , 1 ) ;
f . Position : = f . Position — 1 ;
tmp : = ( ( tmp shr 2 ) shl 2 ) + l4 ;
f . WriteBuffer ( tmp , 1 ) ;

for i : = 1 to MsgSize do
begin
f . ReadBuffer ( tmp , 1 ) ;
l1 : = tmp shl 6 ;
f . ReadBuffer ( tmp , 1 ) ;
l2 : = tmp shl 6 ; l2 : = l2 shr 2 ;
f . ReadBuffer ( tmp , 1 ) ;
l3 : = tmp shl 6 ; l3 : = l3 shr 4 ;
f . ReadBuffer ( tmp , 1 ) ;
l4 : = tmp shl 6 ; l4 : = l4 shr 6 ;
str : = str + char ( l1 + l2 + l3 + l4 ) ;
end ;

Вот бесплатные инструменты для стеганографии для Windows 10

Читайте также:  Как отвязать карту на мегого

Я предоставляю список бесплатных инструментов стеганографии для Windows 10.

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

Все эти инструменты стеганографии доступны для бесплатного скачивания для операционной системы Windows.

Список инструментов для стеганографии

QuickStego

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

После того, как текст будет скрыт в изображении, сохраненное изображение по-прежнему является «изображением», оно будет загружаться так же, как и любое другое изображение.

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

Домашняя страница

Скачать

Xiao Steganography

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

Скачать

OpenStego

Используя это программное обеспечение, вы можете либо скрыть данные (файл) внутри изображения, либо извлечь данные из изображения.

Скачать

Camouflage

вы можете скрыть секретный TXT-файл в стандартном JPG-изображении

Скачать

SilentEye

SilentEye — простая в использовании программа кросс-платформенной стеганографии, которая позволяет скрывать конфиденциальное сообщение в изображении или в аудиофайле

Скачать

OpenPuff

Steghide

Скачать

Our Secret

Our secret- бесплатное и простое в использовании программное обеспечение для стеганографии, которое позволяет скрывать секретные данные в файлах изображений.

Скачать

Image Steganography

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

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

Скачать

Steganofile

Steganofile позволяет скрывать ваш секретный файл в одном или нескольких файлах хоста.

Он имеет кнопки Encode и Decode на своем интерфейсе.

Вы можете скрыть свой файл в другом файле (-ах) хоста.

Выберите папку назначения и укажите пароль по вашему выбору.

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

Рубрика Программирование, компьютеры и кибернетика
Вид автореферат
Язык русский
Дата добавления 28.04.2018
Размер файла 233,2 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Читайте также:  Приложение wink для телевизора lg

Подобные документы

База данных как основа автоматизации. Разработка, описание и реализация программного обеспечения "Точность и правильность методов и результатов измерений для центральной заводской лаборатории ОАО "Акрилат". Листинг, исходные коды программы и базы данных.

дипломная работа [1,0 M], добавлен 23.06.2012

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

курсовая работа [1,7 M], добавлен 15.01.2013

Что такое компьютерные вирусы. Цикл функционирования вирусов. "Вакцинация" программ. Заголовок исполняемых файлов. Защита вновь создаваемых программ. Модуль F_Anti. Защита существующих ехе-файлов. Описание программ SetFag.pas и Fag.asm.

реферат [38,2 K], добавлен 19.03.2004

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

дипломная работа [883,5 K], добавлен 12.08.2017

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

курсовая работа [589,7 K], добавлен 17.02.2013

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

курсовая работа [105,7 K], добавлен 05.11.2011

Формат звукового файла wav, способ его кодирования. Реализация возможностей воспроизведения звука в среде программирования MATLAB. Составление функциональной схемы программы. Апробирование информационной технологии воспроизведения звуковых файлов.

курсовая работа [1,2 M], добавлен 13.02.2016

Автоматизированная выборка данных, упрощение переработки информации при использовании СУБД. Разработка программного обеспечения автоматизированного рабочего места секретаря учебно-методического кабинета. Назначение, проверка, условия применения программ.

контрольная работа [304,6 K], добавлен 28.07.2010

Схема организационной структуры управления информационных и аналитических технологий аппарата администрации. Математическая постановка задачи классификации информационных сообщений СМИ. Описание информационного обеспечения на примере АИС "Классификатор".

дипломная работа [677,2 K], добавлен 28.07.2009

Основные понятия и определения стеганографии. Методы сокрытия данных и сообщений, цифровые водяные знаки. Атаки на стегосистемы и методы их предупреждения. Технологии и алгоритмы стеганографии. Работа с S-Tools. Особенности специальной программы.

контрольная работа [2,2 M], добавлен 21.09.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.

Оцените статью
Добавить комментарий

Adblock detector