|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
21.04.2014, 20:38 | #1 |
Пользователь
Регистрация: 05.04.2014
Сообщений: 54
|
программа для стеганографии (LSB метод, Lazarus)
Интересно попробовать сделать программу для стеганографии. Не знаю функций для работы с байтами как текста так и рисунка(bmp). Подскажите как можно взять последние 2 бита текста( нашел функцию shr - сдвиг вправо на n бит) и записать в изображение( тут совсем не понятно). Где можно посмотреть инфу на это, киньте ссылки пожалуйста.
Вот сделал с теми знаниями что были. Код:
Последний раз редактировалось Taner; 21.04.2014 в 21:05. |
22.04.2014, 17:44 | #2 |
Пользователь
Регистрация: 05.04.2014
Сообщений: 54
|
Кто-нибудь что-нибудь посоветовать может?
|
22.04.2014, 21:16 | #3 |
Пользователь
Регистрация: 05.04.2014
Сообщений: 54
|
Сделал перевод текста в бинарный код, вопрос как перевести bmp изображение в бинарный код?
Код:
|
22.04.2014, 22:05 | #4 |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,885
|
Нет никакой
В "компьютере" (оперативке, на диске, по сети) всё представляет из себя байты. В этом можно убедиться взяв любой шестнадцатеричный редактора. И переводить ничего не надо. Если Вы хотите изобразить байты данных взятых файлов в шестнадцатеричном, двоичном или ином подобном виде - написать функцию несложно - прочитать весь файл (или частями) в поток/буфер и преобразовать каждый байт для вывода(отображения) на экран, другим он при этом ("более бинарным", как Вы, видимо, считаете) совсем не станет, это просто "показ" его человеку. Как верно Вы прочитали при стеганографии используются биты, т.к. искажение вносимые последним значащим битом байта, при цветности картинки 24 и выше бит на пиксель - ничтожны. Биты устанавливаются и читаются обычными битовыми операциями and or not xor и сдвиговыми - shl shr советую по ним прочитать литературы, да и вообще по технологии хранения информации - системы счисления, файловые структуры и т.п. |
23.04.2014, 11:28 | #5 | |
Пользователь
Регистрация: 05.04.2014
Сообщений: 54
|
Цитата:
|
|
23.04.2014, 12:49 | #6 |
Пользователь
Регистрация: 05.04.2014
Сообщений: 54
|
Нашел интересную, на мой взгляд информацию, можно ли это как-нибудь провернуть с битмапом?
Копирование данных из одного потока в другой выполняется с помощью метода CopyFrom. Метод CopyFrom принимает два параметра: исходный поток и количество байтов, которые будут скопированы из одного потока в другой. Следующий пример показывает, насколько просто копировать файл с помощью класса TFileStream. Код:
|
23.04.2014, 21:42 | #7 |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,885
|
Записать байты можно и в сам поток файла картинки, CopyFrom тут ничего не решает, ибо просто инструмент, суть стеганографии не в этом.
Дело в том, что побайтная запись в файл картинки приведёт к заметным искажениям изображения, подумайте сами, если в ргб записи пикселя один из каналов изменится полностью - будет ли это заметно ? Например на ровном фоне будут разноцветные отдельные пиксели - это заметно, не говоря уж о том, что картинки со сжатием могут вообще плохо отреагировать на такие правки. Если же править биты , то на глаз в битмапе никак нельзя различить ргб254 254 254 от ргб 255 255 255, на этом и основывается работа, вы внедряете информацию незаметно, в микроколичестве подмешивая с источнику. Для этой задачи достаточно только битовых операций над байтами данных файла, ну и знать структуру обрабатываемого файла надо бы (хотя бы просто битмапа), чтобы не повредить системные данные (т.к. они могут быть очень чувствительны к подмене). |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Программа для залипания кнопки мыши в Linux (Lazarus) | BLACK_RAIN | Lazarus, Free Pascal, CodeTyphon | 2 | 11.10.2014 14:01 |
Программа на Pascal в Lazarus и программа для одномерного массива целых чисел | Yegorka | Lazarus, Free Pascal, CodeTyphon | 13 | 20.12.2012 18:02 |
Программа для создания кроссвордов - Lazarus[Delphi]-версия | xwicked | Общие вопросы Delphi | 3 | 24.09.2012 21:02 |
Ошибка в преобразовании типов (программа по стеганографии) | DashaShirshova | C# (си шарп) | 1 | 03.06.2012 18:57 |
скрипты для стеганографии | Ilitan | Помощь студентам | 1 | 21.03.2010 01:06 |