Привет!! Такая проблема. Написана программка для внедрения ЦВЗ методом LSB (Least Significant Bit, наименьший значащий бит) — суть этого метода заключается в замене последних значащих битов в контейнере( в данном случае – рисунке формата BMP). Также использую шифрование методом DES. Но тут же возникает вопрос, можно ли защитится от таких атак:
1) Зашумленные.
2) Удаление последних значащих битов.
3) Обрезка рисунка.
4) Замена формата, например на JPG.
Как можно защититься от всего этого??? Или метод LSB здесь не поможет???
17 июня 2009 в 18:04
+ 1 к тому, что сказал Кирилл.
Одним резервированием тут делу не поможешь. Проблема в том, что есть не только шумы, часто изменяется пространственная структура изображения. На это влияет даже сжатие.
Кирилл, правда, не отметил, что с применением Рида-Соломона (это получше Хемминга будет =), многократного дублирования и т.п. потреря данных будет означать, что изображение *уже* даже отдалённо не напоминает оригинал. То есть на практике способ 100% рабочий.
Более того, не надо изобретать велосипед!
Подробнее о деталях реализации (включая, собственно, реализацию) можно почитать погуглив, например, по фразе DataMatrix. Ну и вообще по всяким штрих кодам и т.п.
Ещё раз повторю – важна пространственная устойчивость, работа в условиях шума здесь второстепенный результат =)))) Штрихкоды как раз разработаны для возможности чтения под любым углом, с потерей части и т.п.
Там же можно найти и оценку устойчивости такой визуальной записи инфы.
P.S. Если потребуется реализация DataMatrix или желание сделать что-то наподобие, но тебе не хватит- обращайся в личку, есть готовый код и опыт. Хотя, судя по тому, что это всего лишь работа – на заказ расчитывать не приходится :'(
P.P.S Владислав, ну и как там, в ПТУ, учат вас?
16 июня 2009 в 0:04
при использовании многозонного ффт должно переживать даже и масштабирование с поворотами
15 июня 2009 в 23:04
Мы делали примерно десятикратное резервирование каждого бита сообщения + модификация синего канала, а не младшего бита (не помню, как алгоритм называется, но он чуть устойчивее), в результате сообщение переживало даже несильное сжатие. На диплом должно сработать ))
13 июня 2009 в 20:02
1) мля, задачки для 1-го курса ВУЗа…
2) задача ддля самост. решения. Если не можете решить – дорога в ПТУ.
3) ЙОПТ. )
13 июня 2009 в 19:00
ну разве что сказать, что использованный метод не переносит преобразования в форматы с потерями (и, соответственно, зашумления/уменьшения битности). устойчивость к обрезке рисунка опциональна (зависит от того, как именно вы сохраняли свои данные).
13 июня 2009 в 18:00
Большое спасибо Всем за ответ. Это у меня балкарская такая. Да так глупо вышло, что сначала написала ее, а теперь вот столкнулась с такими радостями.. И времени переписывать уже нет… ивижу что не особо устойчив.
Программа моя зашивает текстовое сообщение в изображение формата BMP.
А как же можно выкрутиться с такой ситуации, чтобы не реализовывать еще одного алгоритма шифрования, времени уже нет… защита на носу(((???
Помогите, советом…
12 июня 2009 в 21:02
водяной знак и подпись – разные вещи.
в первом случае достаточно исказить изображение так, чтобы не осталось независимого куска, не закрытого водяным знаком (защита от кропа). часть информации в соответствующих участаках изображения (возможно, значительную) при этом придется загубить – тогда зашумление/уменьшение битности раньше сделают изображение неюзабельным. замена формата не вредит водяному знаку.
во втором случае задачи и методы их решения другие. при этом, как правило, изображение должно визуально остаться неизменным, но по нему можно было определить, что его предоставил правильный источник. в этом случае имеет смысл использовать fft – это даст устойчивость к небольшому зашумлению (например, при изменении формата или при переносе на бумагу и обратно).
12 июня 2009 в 21:02
Можно повторять циклически твои данные. Можно использовать помехоустойчивое кодирование. Ключевые слова: Код Хэмминга, Код Боуза-Чоудхури-Хоквингема, ну и всякие прочие избыточные коды. От сильного зашумления, например, пересохранение в джпег низкого качества, вряд ли что-то спасёт.
12 июня 2009 в 21:00
Писал курсовую, сталкивался с этим. Владимир mapron Смирнов все правильно написал. В принципе, от зашумления в BMP может помочь только дозапись в блоки кратные 4 байтам, а также от обрезки тоже(не уверен в этом). Если что, пиши ЛС.
12 июня 2009 в 19:03
4) от конвертации формата точно не спасешься.
1) – искажение данных, тоже никак
2) использовать ПРЕДпоследние значащие биты
3) располагать данные не по всей плоскости рисунка, а где-нибудь в центре.
12 июня 2009 в 19:03
кстати, нужна подпись или водяной знак все-таки?