Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.118.126.11] |
|
Сообщ.
#1
,
|
|
|
Существует ли способ защиты картинок (jpg) от воровства, чтобы можно было потом доказать своё авторство? Я думал сначала делать едва-едва видимые штрихи на картинке, которые не были бы видны при оригинальном размере, но при большом увеличении (700-1000%) эти заметки можно было бы увидеть..но на практике этот метод оказался нерабочим, т.к. ОЧЕНЬ мало можно нанести на картинку, да и чуть-чуть все-таки, да видно, что там что-то написано..
Может, кто-то знает другие более действенные методы защиты? |
Сообщ.
#2
,
|
|
|
стеганография
|
Сообщ.
#3
,
|
|
|
Полупрозрачная надпись по всей картинку! Обзору не мешает, а от воровства защитит!
|
Сообщ.
#4
,
|
|
|
мыш, поподробнее, плз!
Chups, каким образом? Я делал прозрачность более чем на 70%, всё равно видно надпись! |
Сообщ.
#5
,
|
|
|
dark0ut, http://www.yandex.ru/yandsearch?rpt=rad&text=%F1%F2%E5%E3%E0%ED%EE%E3%F0%E0%F4%E8%FF, подробнее некуда
|
Сообщ.
#6
,
|
|
|
Сообщ.
#7
,
|
|
|
Chups, нет, ты меня не понял! Смысл в том, чтобы этого совсем не было видно! Так можно делать, просто выкладывая авторские фотки и где-нить в углу писать чьи это фотки..либо как ты сделал по всей картинке. Мне же нужно было другое. Конкретно мой пример: я делал сайт на заказ, рисовал элементы дизайна, затем отдавал заказчику на просмотр. Он мог сказать, что его всё не устраивает и нужно всё передеывать, а тем временем он взял бы и выдал моё творение за своё!
Поэтому мне нужны какие-л. невидимые или почти невидимые знаки на картинке, что доказать,что картинки действительно мои! Не могу же я по всей менюшке или логотипу пустить такую огромную надпись, типа как "Образец" на купюрах =)) мыш, большое 10х! Пойду изучать! |
Сообщ.
#8
,
|
|
|
Фотожоп "водяные знаки" умеет ставить каким-то из фильтров, говорят даже сканирование распечатки не помогает от них избавится...
|
Сообщ.
#9
,
|
|
|
Watermark называется! Но от него Принт Скрин действует!
|
Сообщ.
#10
,
|
|
|
Да, у мя был фильтр этот. Только вот чтобы их увидеть надо тоже иметь этот фильтр! Просто так не увидишь..
|
Сообщ.
#11
,
|
|
|
dark0ut, я тоже над этим думал. И вот что надумал. Предположим, у нас фрагмент на картинке чёрный (#000000 в коде HTML). Тогда почему бы не сделать на нём надпись цвета #000001? Тогда разница не будет заметна визуально, но в случае чего, можно сделать постеризацию твоей картинки и всё это увидеть. Конечно пример утрирован, но идея, думаю, ясна.
Но при использовании подобного подхода, нужно точно знать, с какой палитрой сохраняется картинка, и не будет ли такая защита затёрта оптимизацией. |
Сообщ.
#12
,
|
|
|
EL[michlen], да, так можно сделать. Вот только это подойдет, если достаточно большой фрагмент картинки будет ГАРАНТИРОВАНО одного цвета. А как быть, если у меня пестрая картинка? Тем более, что большинство изображений используют градиент, поэтому там как правило не бывает областей с одинаковым цветом..
|
Сообщ.
#13
,
|
|
|
Цитата dark0ut @ Так это не намного сложнее =)А как быть, если у меня пестрая картинка? Скажем, у нас градиент. Мы накладываем надпись таким образом, что каждая точка градиента, на которую ляжет эта надпись, меняет цвет на +1 по тому же принципу. Программно это сделать не трудно. Добавлено Но всё это теория, я не делал этого на практике. Но задумка мне кажется интересной, вот только не верится мне, что я первый до этого додумался... Поправьте меня, кто этим занимался! |
Сообщ.
#14
,
|
|
|
EL[michlen], я думаю мало кто этим занимался =) Все молчат =) Так что надо попробовать самим! Что скажешь?
|
Сообщ.
#15
,
|
|
|
Скажу... В общем можно на досуге. Получается, задача написать функцию, которая будет накладывать надпись на картинку с разницей в цвете на одно-два значения RGB, а также функцию, которая будет это дело распознавать, что сложнее. Задачка кажется интересной, особенно её вторая часть.
Для упрощения распознавания предлагаю в качестве входных данных давать текст, который мы и писали на этой картинке. Шрифт берём 100% одинаковый, иначе у нас получится тот же Finereader, только круче =)) Кстати, не обязательно использовать текст. Можно вставлять некий набор точек, или ещё что-нибудь. В общем, будем думать и, возможно, делать. Насчёт проверки на практике. Вот у меня в аттаче синенький квадратик. А на нём что-то написано! =) Прикреплённая картинка
|
Сообщ.
#16
,
|
|
|
EL[michlen], "test" там написано =) #0E2970 (цвет фона) и #0E2971 (цвет текста)
|
Сообщ.
#17
,
|
|
|
dark0ut, вот видишь, разобрать при желании можно, а если не знать об этой недозащите, то и не видно =))
|
Сообщ.
#18
,
|
|
|
EL[michlen], это точно! Если я б не знал, что там что-то написано, точно не догадался бы..да вообще в голову такая мысль не пришла бы!
|
Сообщ.
#19
,
|
|
|
Может, программно запихать свою информацию в EXIF ?
|
Сообщ.
#20
,
|
|
|
Тоже мысль =) Хотя тоже просто от этого избавиться.
|
Сообщ.
#21
,
|
|
|
Гхм... При максимальном приближении эту надпись видно невооруженным глазом!
|
Сообщ.
#22
,
|
|
|
Астарот, никто не отрицает. Но если ты не знаешь, что там что-то написано, а тем более, если написать её помельче, не думаю, что ты что-то там заметишь.
|
Сообщ.
#23
,
|
|
|
Да я к тому, что не стойкая эта штука - в прямрм виде надписи накладывать. Лучше будет по какому-то алгоритму располагать на картинке точки с чуть смещенными параметрами цвета, а потом их собирать, и... и... и чего-нибудь там с ними делать, во!
В общем уходите от надписи в явном виде - при практически любой работе с цветом она сразу вылезет наружу, а амба |
Сообщ.
#24
,
|
|
|
Астарот, ты прав, но я об этом уже сказал:
Цитата EL[michlen] @ Кстати, не обязательно использовать текст. Можно вставлять некий набор точек, или ещё что-нибудь. |
Сообщ.
#25
,
|
|
|
ребята, вы опоздали... стеганография давно и неплохо исследована, в этом можно убедиться поГуглив...
самая известная это Steganos Security Suite, но есть и много других... |
Сообщ.
#26
,
|
|
|
EL[michlen], проглядел очевидно
Цитата Max404 @ ребята, вы опоздали... А ну ша! Люди творят сами, свое, так что пусть творят, авось натворят чего-нить. |
Сообщ.
#27
,
|
|
|
Цитата Астарот @ Лучше будет по какому-то алгоритму располагать на картинке точки с чуть смещенными параметрами цвета, а потом их собирать, и... и... и чего-нибудь там с ними делать, во! , только надо придумать, как это реализовать... |
Сообщ.
#28
,
|
|
|
Цитата dark0ut @ Я знаю, я знаю! (усиленно тянет руку к потолку) только надо придумать, как это реализовать... Только нужно ли это в реале? В смысле, неужели не достаточно того, что уже сделали? |
Сообщ.
#29
,
|
|
|
EL[michlen], ну не знаю, что тебе сказать...Конечно можно обойтись тем, что есть..Но если бы все так рассуждали, то мы сейчас сидели бы под DOS-ом или еще чем-нить более ранним и юзали Paint вместо PS.
|
Сообщ.
#30
,
|
|
|
http://securengine.isecurelabs.com/features.htm
(Data is embeded in all complex zones of the picture.) а вообще - http://www.securitylab.ru/?ID=37343&R=0.ML.CGI Цитата dark0ut @ Конечно можно обойтись тем, что есть..Но если бы все так рассуждали, то мы сейчас сидели бы под DOS-ом или еще чем-нить более ранним и юзали Paint вместо PS. да, движение должно быть, но не стоит тратить силы на ИЗОБРЕТЕНИЕ велосипеда, когда вокруг ездят на мотоциклах... |
Сообщ.
#31
,
|
|
|
Практически не обнаруживаемый способ, правда, не стойкий к фильтрованию.
Пусть нужно внести нек. битовую последовательность. 1) С помощью датчика псевдослучайных чисел задать последовательность номеров изменяемых точек изображения. 2) Дальше внедряем биты: если 0, то округляем цвет соотв. точки, до ближайшего четного, 1 - до нечетного. |
Сообщ.
#32
,
|
|
|
nvm, а как ты собираешься извлекать это? Ведь надо, чтобы потом можно было легко (!) проверить это!
|
Сообщ.
#33
,
|
|
|
Пореж картинку на мозайку. Кусочков так 1000 и пусть потом парятся.
А если зделать так чтоб не плотно к другдругу, а накладывались то собрать будет нереально. |
Сообщ.
#34
,
|
|
|
makedonskij, Точно! А проще эту картинку вообще не давать врагам! Записать на болвань, и отправить в сейф в Цюрих! Пусть оттуда сами добывают!
|
Сообщ.
#35
,
|
|
|
Цитата dark0ut @ nvm, а как ты собираешься извлекать это? Ведь надо, чтобы потом можно было легко (!) проверить это! Тем же датчиком восстанавливаем последовательность псевдослучайных номеров, и по каждому если цвет четный - пишем 0, иначе - 1. |
Сообщ.
#36
,
|
|
|
Цитата nvm @ Тем же датчиком восстанавливаем последовательность псевдослучайных номеров так она ж псевдослучайная |
Сообщ.
#37
,
|
|
|
Цитата Krott @ Цитата nvm @ Тем же датчиком восстанавливаем последовательность псевдослучайных номеров так она ж псевдослучайная Не пойму возражения. Датчик псевдослучайных чисел генерирует всегда одну и ту же последовательность, поэтому восстанавливать и нечего. Важно, конечно, знать, с какого номера начали. Но это как раз секретный параметр, не позволяющий расшифровать ием, кто его не знает. |
Сообщ.
#38
,
|
|
|
nvm, тогда нужно писать свою собственную функцию, _математически_ генерирующую псевдослучайные числа. Зачем, если в ключе можно указывать не только то, что нужно кодировать, но и сам принцип кодирования.
|
Сообщ.
#39
,
|
|
|
Кстати, возможно сделать код, очень устойчивый к фильтрованию.
Пусть для простоты у нас не изображение, а одномерный сигнал. Берем и добавляем к нему в некоторых псевдослучайных позициях по периоду синусоиды очень малой амплитуды. А для восстановления просто вычисляем корреляцию того же фрагмента синусоиды с сигналом по всем позициям. То есть 1 бит информации прописывается много раз (напр. 10000). Это та же идея, что и связь при очень больших помехах - корреляция позволяет надежно извлекать сигнал, конечно, если он достаточное число раз продублирован. Здесь в роли шума выступает само изображение. |
Сообщ.
#40
,
|
|
|
Ну..вас что-то совсем в дебри унесло... Проще надо быть, проще! Мне понравилась идея, изложенная в посте #13 EL[michlen]-ом. Думаю дальше уже изощряться не стоит, ведь первоначально задача стояла скрыть изображение от простых клиентов, и не от интерпола (последние все равно найдут, как ни прячь)!
|
Сообщ.
#41
,
|
|
|
Цитата dark0ut @ задача стояла скрыть изображение от простых клиентов, и не от интерпола тогда действительно не стоит изощряться |
Сообщ.
#42
,
|
|
|
Цитата dark0ut @ не от интерпола (последние все равно найдут, как ни прячь)! бааааааааааальшое заблуждение, IMHO |
Сообщ.
#43
,
|
|
|
Цитата Астарот @ бааааааааааальшое заблуждение, IMHO Хорошо, что IMHO Не думаю, что там сидят глупые люди...по крайней мере не глупее, чем с Исходников. Ру (IMHO) |
Сообщ.
#44
,
|
|
|
Цитата Существует ли способ защиты картинок (jpg) от воровства, чтобы можно было потом доказать своё авторство? modified Цитата Seva Цитата Kamenev_D Цитата Seva Достаточно отправить себе заказное письмо с рисунком - этого достаточно для предъявления в суде. А зачем себе что-то отправлять? Чтобы на конверте дата стояла. Понятно, что вскрывать его не надо! Иными словами, отправлете себе письмо с дискетой с файлом перед тем, как какому-нибудь дядьке дать этот файл, конверт не вскрываете, и если ваши авторские права нарушены этим дядькой, то идете в суд с этим конвертом. Для пущей надежности на рисунке достаточно поставить одну малозаметную точку в углу картинки, и вы будете говорить, что знаете одну особенность рисунка. Дядька про эту особенность ничего знать не будет. Если никаких точек на рисунке нет, и так получится, что у дядьки будет возможность заявлять, что он нарисовал рисунок еще раньше той даты, которая на конверте, то вас и дядьку отдельно попросят приблизительно нарисовать картинку заново. Вобщем дядька дело проиграет. Или возможно, если вы так подготовитесь, то дядька вообще связываться с вами не будет, и до суда дело не дойдет. Добавлено Думаю, что можно файл посылать и по мылу. Там ведь тоже даты прихода писем есть. |
Сообщ.
#45
,
|
|
|
Цитата Gazon @ Его сымитировать легко. А серверные логи хранятся не вечно.Думаю, что можно файл посылать и по мылу. Там ведь тоже даты прихода писем есть. В случае с dark0ut всё проще. У него есть исходники фотошопа и корела, а у заказчика только gif и/или др. такие форматы. Так что доказать своё авторство можно просто предоставив исходники. |
Сообщ.
#46
,
|
|
|
Цитата него есть исходники фотошопа и корела, а у заказчика только gif и/или др. такие форматы. Что за исходники фотошопа? Можно чуть подробнее. |
Сообщ.
#47
,
|
|
|
Цитата Что за исходники фотошопа? Можно чуть подробнее. psd-шные файлы. Ну там слои всякие и.т.д... Кстати, немного не понял насчёт стенографии. Ладно, скроете вы информацию. Но что мешает её испортить ? Допустим, проходим по рисунку и кажный пиксел меняем на похожий. Чуть размывем. Или наоборот придаём резкости. Развве информация не затеряется ? |
Сообщ.
#48
,
|
|
|
Ну это мы в привате разговаривали. Просто у него есть исходные файлы со всеми слоями в PSD-формате и кореловском. А у заказчика нету. Вот и доказательства. =)
Добавлено Цитата SmK @ Затеряется. Но мы говорим о случаях, когда заказчик не знает о "защите". Развве информация не затеряется ? |
Сообщ.
#49
,
|
|
|
Ааа, понятно.
|
Сообщ.
#50
,
|
|
|
Цитата SmK @ Кстати, немного не понял насчёт стенографии. Ладно, скроете вы информацию. Но что мешает её испортить ? Допустим, проходим по рисунку и кажный пиксел меняем на похожий. Чуть размывем. Или наоборот придаём резкости. Развве информация не затеряется ? Можно сделать так, что информация сохранится почти при любом преобразовании, не сильно ухудшающем качество. |
Сообщ.
#51
,
|
|
|
nvm, да это не нужно ведь!
EL[michlen] Уже сказал, что это сработает в случае, если неизвестен факт скрытия информации! А вообще мы говорим не о том, чтобы скрыть текст в картинке, а чтобы сделать на рисунке незаметные штрихи для заказчика! А если он не знает об этом, то уж не думаю, что будет изучать какие-то там "скрытые письмена" |