|
return (true);
1977 / 1112 / 221
Регистрация: 19.04.2011
Сообщений: 2,346
|
|||
| 11.05.2011, 07:07 | |||
|
Добавлено через 4 минуты
0
|
|||
| 11.05.2011, 07:07 | |
|
Ответы с готовыми решениями:
64
Стеганография в BMP Стеганография LSB BMP |
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|||
| 11.05.2011, 07:11 | |||
|
0
|
|||
|
return (true);
1977 / 1112 / 221
Регистрация: 19.04.2011
Сообщений: 2,346
|
|||
| 11.05.2011, 07:15 | |||
|
Добавлено через 1 минуту
0
|
|||
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|||||
| 11.05.2011, 08:22 | |||||
|
Добавлено через 4 минуты Добавлено через 6 минут Добавлено через 6 минут Добавлено через 16 минут Ещё вариант: можно слепить свой формат и выдать за цель его создания новый способ сжатия (если сможете сделать хороший алгоритм сжатия, превосходящий хотябы в одном классе изображений существующие алгоримы по скорости при равном коэффциенте, или по коэффициенту при равном качестве), повышенную разрядность цвета (например, для карт высот с повышенным разрешением по высоте), гиганските максимальные размеры изображения (типа 2^64x2^64), большое число изображений в одном файле, цветовую модель нового типа (например, с подробным и явным описанием спектра всех пикселей), или с девятью цветовыми плоскостями (RGB, дополненая своими аналогами для ИК и УФ), или даже предусмотреть хранение информации о поляризации, в этом формате предусмотреть смещение любого максимального размера, а в спецификации заявить, что оно предназначено для дальнейшего расширения заголовка и размеров палитр (если таковые вообще будут в этом формате), произольной перестановки пикселей с палитрами (если патира весит пару мегабайт, а само изображение ещё двести и разрешено менять их местами, то имеем два смещения, одно более двух, а второе даже двухсот миллионов), но ничего не писать о заполнителе. И юзьте потом на здороьве из трёх байт каждой плоскости один младший, поляризацию, одну спектральную линию из тысячи, на которые поделён видимый диапазон. Добавлено через 10 минут Можно и разделить изображение на несколько фрагментов (полос, клекток...) и для каждого записать отдельное смещение, объяснив его наличие переменным размером фрагментов в сочетаним с тербованием быстрого доступа к каждому. А между фрагментами можно и спрятать и инфу иного типа, и разместить палитры, или куски заголовка. Ещё вариант: палитра на 256 цветов, из которых используется 128. 768 байт (в RGB) - довольно приличный контейнер. Или из 65 536-ти цветов палитры использовать ровно 64 000. Получаем 16 608 байт. Или файл трёхбайтный, но с палитрой, в ней все 16 777 216 цветов, а реально используются ровно 16 000 000. Получаем 2 331 648 байт. Добавлено через 4 минуты Идея и ксорки, и своего формата для стеганы: пусть подозревают в чём угодно, только не в том, что есть на самом деле.
0
|
|||||
|
return (true);
1977 / 1112 / 221
Регистрация: 19.04.2011
Сообщений: 2,346
|
||||
| 11.05.2011, 08:26 | ||||
|
Я выкладываю каждый день несколько фотографий на фотохостинг. Цветочки, котята. Любой может их просмотреть и порадоваться. А дядя Вася, у которого есть ключ, извлекает из этих картинок секретное сообщение для себя. Но, самое главное - никто, кроме дяди Васи не знает и не может ДОКАЗАТЬ, что осуществился процесс передачи информации. А в вашем случае: И еще - вы абсолютно не учитываете способы распространения и активации программы, а рассматриваете только ситуацию, когда у пользователя уже стоит зарегистрированная программа и её надо перенести. Но ведь как-то стегоконтейнер у пользователя был изначально создан при регистрации? Что мешает у другого пользователя воспользоваться анналогичным способом регистрации и получить активированную программу?
1
|
||||
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
||
| 11.05.2011, 08:38 | ||
|
Причём, весей всего будет объявить только возможности формата, а спецификацию опять спрятать.
Добавлено через 7 минут
0
|
||
|
return (true);
1977 / 1112 / 221
Регистрация: 19.04.2011
Сообщений: 2,346
|
|||
| 11.05.2011, 08:45 | |||
|
На существующих вычислительных мощностях и текущих алгоритмах криптоанализа лет 5. И не надо говорить, что кто-то не будет пользоваться дизассемблером, потому что это сложно, зато ломает крипту как семечки ![]() Итого: 5 лет против 10 минут. А вы продолжайте забивать гвозди микроскопом.
0
|
|||
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|||||
| 11.05.2011, 08:53 | |||||
|
Добавлено через 1 минуту Добавлено через 1 минуту Добавлено через 3 минуты
0
|
|||||
|
return (true);
1977 / 1112 / 221
Регистрация: 19.04.2011
Сообщений: 2,346
|
||
| 11.05.2011, 08:56 | ||
|
0
|
||
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
||||||
| 12.05.2011, 07:25 | ||||||
|
Добавлено через 3 минуты Добавлено через 2 минуты Добавлено через 4 минуты Добавлено через 9 минут Добавлено через 28 минут Вам же я хочу предложить такой код. Сначала скрываемый контент шифровать одиннадцатью ключами в порядке увеличения длины от 2-х до 31-го байта (2, 3, 5, 7, 11, 13, 17, 19, 23, 27, 29, и 31, суммарно 187 байт=1496 бит, а при попытке подобрать их "в лоб" как один ключ - 5 415 133 233 510 байт=43 321 065 868 080 бит, но врядли какой то уникум допустит такую глупость), а потом уже пишется в младшие биты всех плоскостей. При расшифровке - наоборт. Сначала собираем все младшие биты, а потом ксорим с теми же ключами в обратном порядке. Это будет комбинация крипты со стеганой, обнаружение конкертного файла со скрытым контентом станет ещё проблематичнее, чем если только прятать, но не шифровать. Добавлено через 4 минуты Если такой суммарной разрядности ключей мало, тогда 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97 и 101, суммарно 1 161 байт=9 288 бит. Добавлено через 20 часов 53 минуты При хранении с точки зрения защиты от дизасемблера вообще не имеет значения, что вы сделаете, так как в этом случае секрет и декодер всегда валяются рядом и тот, кто умеет дизасемблировать в любом случае всё прочитает. Единственная надежда, да и то призрачная - спрятать декодер среди миллиардов операций, не имеющих к нему ни какого отношения. Но при передаче и этого фактора нет, так как секрет и декодер могут быть в разных передачах, можно даже декодер передать на диске при личной тайной встрече, а секрет выложить на общедоступном сайте. И крипта ломается на разных машинах параллельно из-за использования единого кода для защиты каждого конкретного секрета, плюс тупо быстродействие машин, а стегану надо искать вручную, последовательно и из-за различий в файловом окружении на каждой машине независимо от самого факта существования остальных. Добавлено через 8 минут И при хранении актуальность заведомо постоянна, а при передаче время актуальности в общем случае может меняться от долей секунды до времени существования государств и даже цивилизаций. Задачи одного класса бывают разные, а если данная конкретная информация имеет достаточно краткую актуальность, то и хакер имеет соответственно краткое время для взлома.
0
|
||||||
|
Делаю внезапно и красиво
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
|
|
| 12.05.2011, 08:06 | |
|
Говорить о способах реализации и необходимости не хочу сейчас. Лучше расскажу сказку:
Жил был дедушка Ленин. И вот "сидел" он за политические преступления и писал молоком на краях страницы свои писания. И никто "не знал" об этом, кроме тех, кто умел держать страницы над свечкой, чтобы текст проявился. А потом царя убили... Воть. Если бы он свои планы и агитации и т.п. шифровал в виде абра-кадабры, у него и могло бы ничего не выйти, охранники бы его шифровки могли и не передавать. А так они даже и не знали о передачи информации. Со стеганографией то же самое, делаешь невинные глаза и всё. Йа картинко!
0
|
|
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|||
| 12.05.2011, 08:56 | |||
|
Добавлено через 16 минут Герберт Шилдт:
0
|
|||
|
Делаю внезапно и красиво
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
|
|
| 12.05.2011, 09:17 | |
|
Опять двадцать-пять. Уже же сказали, смысл этого действа, чтобы никто и НЕ ДОГАДЫВАЛСЯ о передаче некой информации.
Зачем ты так про Медведева, тебя же по IP вычислят... Пичалька будет. Коммерческие тайны никто не отменял, всем хочется знать секреты переговоров, даты встречи и т.п. Разумеется, для этого другие средства используются, но почему бы и нет. Порой, даже сам факт встречи может быть крайне секретен. Ладно, надоело уже. Я тему апнул только из-за ошибки в нумерации бит, а тут такое...
0
|
|
|
3 / 3 / 1
Регистрация: 14.02.2012
Сообщений: 82
|
|||||||||||||
| 12.04.2012, 13:34 | |||||||||||||
|
Добавлено через 34 минуты А, да, уже прочитал пост выше...
Тем более, что при открытии файла BMP ставятся настройки - 24 бита на пиксель. Судя по коду в шапке темы, информация вносится только в канал красного цвета. А если со все каналы по одному биту вносить??? ![]() Могу предложить функцию для замены первых двух бит в сэмпле пиксела:
0
|
|||||||||||||
|
|
|
| 15.05.2012, 15:47 | |
|
1
|
|
|
12 / 11 / 7
Регистрация: 28.05.2009
Сообщений: 56
|
|
| 01.06.2012, 18:43 | |
|
Если кому интересно выкладываю свой курсач. Используется алгоритм Куттера-Джордана-Боссена, сообщение кодируется по Хеммингу, чтобы избежать ошибок при извлечении сообщения. Потученный массив побитно встраивается в синий канал псевдослучайного пикселя. В качестве генератора псевдослучайной последовательности использовал алгоритм ГОСТ 28147-89 в режиме гаммирования. При более-менее высоких значениях коэфициента встраиваемого сигнала, сообщение можно извлеч даже после 75% сжатия JPEG.
2
|
|
|
0 / 0 / 0
Регистрация: 08.05.2015
Сообщений: 4
|
|
| 26.03.2016, 17:10 | |
|
virtuhay266, привет , пишу на счет твоей программы с использованием алгоритма Куттера - Джордана - Боссена . Скинь пожалуйста полный код программы , если не трудно
0
|
|
|
0 / 0 / 0
Регистрация: 12.04.2017
Сообщений: 25
|
|
| 22.11.2017, 23:05 | |
|
Erravielle, Прошу прощения, делаю все, согласно вашему коду. работает все до:
int Shag = MAX_TEXT_SIZE/TEXT_SIZE; char *String = new char[RichEdit1->Text.Length()+1];// создаем переменную для хранения кодируемого текста strcpy(String,RichEdit1->Text.c_str()); // копируем в нее кодируемый текст Изменил на свое: int Shag = MAX_TEXT_SIZE/TEXT_SIZE; AnsiString String = RichEdit1->Text.Length()+1;// создаем переменную для хранения кодируемого текста RichEdit1->Text=String; Далее код комплириуется, вставляю изображение, ввожу текст, кликаю "Зашифровать", но возникает ошибка выхода за границы массива. Дешифрование еще не делал, использую среду С++ Builder 10. Не могли бы вы помочь, пожалуйста?
0
|
|
|
0 / 0 / 0
Регистрация: 06.01.2017
Сообщений: 1
|
|
| 17.10.2018, 20:56 | |
|
Привет,а у тебя не осталось исходников от этой проги?
0
|
|
| 17.10.2018, 20:56 | |
|
Помогаю со студенческими работами здесь
60
Полное руководство (книги, видео и т.д.) Методы GetPixel\SetPixel BMP и стеганография Отличия между книгами Г.Шилдт - C# 3.0 Полное руководство и C# 4.0 PHP 5. Наиболее полное руководство в подлиннике (2-е издание) Г.Шилдт C# 4.0. Полное руководство. Разбор примера работы с массивом Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|