Как стать автором
Обновить

Комментарии 67

Я правильно понимаю, что можно ведь и удалить такой скрытый код со скриншота, а зная структуру кода — и подделать его?
Удалить очевидно можно.
Подделать — не факт, могут добавлять контрольную сумму по неизвестному алгоритму.

Сами аналогичный метод использовали для отслеживания утечек скринов с форума (у каждого юзера был уникальный цветовой код — цветовое пятно, по которому скрин однозначно определялся), а так же для отслеживания нелегальных утечек софта (кол-во пробелом в паре файлов разное на нескольких строках — опять же получалось достаточно точно, и не мешало коду). Очень удобно, если никто об этом не знает:)

Но тут все-таки перебор, одно дело внедрять идентификационную информацию, по которой можно отследить безобразящего юзера. Другое дело вшивать в открытом виде данные о юзере, даже просто ник, не говоря уже о времени скрина и ИП юзера.
IP реалма (сервера), а не юзера.
Ник + время + сервер = ip пользователя.
НЛО прилетело и опубликовало эту надпись здесь
Каким образом?
Даешь закон о защите персональных данных чаров! :)
НЛО прилетело и опубликовало эту надпись здесь
Мне понравилась идея. С выявлением считай разобрались. А как такой знак в свои фото добавить?
Есть такая штука DigiMarc (есть и как плагин фотошопа) — добавляет полностью прозрачный водяной знак.
Держится даже после рекомпрессии с пониженым качеством и размером.
И ресайз с помощью Paint или экспорт Picasa выдерживает?
конечно. до определённых пределов
А что она такое делает, если цвета пикселей не меняются?
Еще один пункт к списку «за что я уважаю команду, работающую над WoW».
p.s. Хоть сам в нее не играю, но уже не первый раз удивляюсь этой игре и профессионализму команды.
Интересно, в связи с чем и каким путём были обнаружены скрытые знаки. Не на авось же кого-то прошибло: «а не выкрутить ли мне контрастность, и не повторить ли мне это несколько раз?»
Если человек уверен в чистоте монитора, то смотря на картинку с равномерно залитой областью может и заметить подобный шум. Ну а дальше уже подключается любознательность :)
Как вариант — хотели увидеть НЕЧТО, что было в тёмной области скриншота. Вместе с желаемым объектом всплыл и водяной знак.
Наоборот, надо снижать контрастность, чтобы прочитать тени.
Вообще непонятно, откуда взялся контраст, когда в источнике говориться про резкость
Алгоритм повышения резкости может быть построен на изменении микроконтрастов локальных зон.
Я, как и среднестатистический анонимус, попробовал бы именно подсветить скриншот.
Как сказал первооткрыватель, он случайно их увидел когда заскриншотил что-то очень яркое.
А есть ли об этом упоминание в EULA?
По сути ведь можно собрать некую информацию из таких картинок.
Одно дело когда это остается внутри компании, а тут получается игрок не подозревая выкладывает эту информацию в сеть.
Интересно будут ли иски от игроков…
Может быть это:
Лицензионное соглашение с конечным пользователем World of Warcraft:
1. <...> Любое использование Игры регулируется данным Лицензионным соглашением, Пользовательским соглашением Battle.net, а также Условиями пользования WoW, каждое из которых нужно принять до того, как вы сможете получить доступ к Услуге посредством использования учетной записи Battle.net®. <...>

Пользовательское соглашение Battle.net:
11.5 Сбор данных, не считающихся личными. Компания Blizzard имеет право без какого-либо уведомления собирать «не являющиеся личными» данные в отношении вашего подключения к Службе с целью определенного демографического анализа в отношении пользователей Службы.
собирать — не публиковать
И то верно. Но надо сказать, что данные-то они не публикуют.
и даже не собирают — данные то на скриншотах, которые вы у себя на компе храните, им на сервер вроде эти скрины не отправляются (если вы сами не зальете конечно)
ну, собирают они их уже по форумам, где люди демонстрируют найденные читы :-)
На скринах нет личных данных, даже айди внутренний.
Респект! Пусть яблоко учится, у братьев, дабы наказывать виновников утечек.
Такие методики в Apple (да и не только в Apple, собственно) применяются уже много лет.

Например, когда первых разработчиков допустили к прототипу айпада, их предупредили, что столы, на которых лежат устройства, имеют уникальный рисунок на столешнице и поэтому легко опознаются на фотографиях, даже по частям. Это к тому, чтобы тайком фотографии не делали.
Специально предупредили, чтоб те газету подложили?
НЛО прилетело и опубликовало эту надпись здесь
Именно поэтому российские разработчики к прототипам допущены не были )
Точно, вырезать в фотошопе то невозможно :)
Освещение комнаты тоже можно сделать уникальным :) (если вы параноик, то это не значит что за вами не следят)
У них игрушка сама создает jpeg'и? А то иначе непонятно, как такой код можно разместить в формат, сохраняющий данные с потерей информации.
Нет движок подсовывает постоянно. Я так понимаю. Просто невооруж глазом не видно.
Да, во многих играх по нажатию PrintScreen игра сохраняет скриншот в определенную папку.
Я обычно пользуюсь Alt-PrtScr — запуск Paint — вставить, кадрировать — сохранить как JPEG. Интересно, сохранились бы «водяные знаки» при этой процедуре.
Вы о чём? Во всех современных 3D-играх изображение формирует видеокарта, по этому если каким-то чудом принт-скрин и захватит средствами Windows изображение — это будет чёрный экран, но не сам скриншот. В современных же играх, это нажатие перехватывается и либо изображение сохраняется игрой в папке, либо игра в буфер обмена самостоятельно помещает скриншот (в который может быть прописано всё что угодно).
Я в современные 3D-игры не играю, поэтому проверить не на чем :( А скриншот, помещенный в буфер обмена, все равно будет преобразован при сохранении файла. И водяные знаки благополучно превратятся в JPEG-артефакты.
Потом, насколько я понимаю, при использовании DirectX или OpenGL изображение тоже формирует видеокарта. Но в использующих их программах Alt-Printscreen прекрасно работает безо всяких специальных ухищрений в коде.
Ну а что мешает использовать стороннюю программу для снятия скриншотов в играх? К примеру HyperSnap или тот же Fraps.
Ни что не мешает, речь чисто про PrintScreen.
Один мой знакомый читер говорил, что при снятии скриншота вызывается определенная фунция DirectX, и перехватив ее, он подсовывал абсолютно чистые скриншоты
А теперь ещё раз прочитайте строчку, но главное, внимательно:
В современных же играх, это нажатие перехватывается и либо изображение сохраняется игрой в папке, либо игра в буфер обмена самостоятельно помещает скриншот.

Кроме этого, такой трюк может удаться в случае если используется программный рендеринг, что в современных 3D-играх (в частности, WoW) — нонсенс.
Я специально использовал TF2 ибо Source создает скриншот своими средствами при нажатии на F5, а не на print screen. Я склонен считать что средства windows для получения скриншота всё-таки просто выдирают значение из видеопамяти, а не получают изображения со всех окон после чего их компонуют.
Не буду загадывать, но на XP из видеопамяти ничего не выдиралось, как в 7 дела обстоят — не в курсе.
UPD: В курсе. Точно также. Killing Floor, результат — чёрный экран.
Собственно, чтоб представляли как оно работает:
В современных играх процессор больше не занимается такими вещами как отрисовка графики, просчёт моделей, их движения, поворота и т. п., по скольку это очень ресурсоёмкая задача. На себя эту задачу берёт видеокарта. Да-да, именно по этому последние 15 лет видеокарта стала не просто средством отображения картинки, именно по этому сейчас идут такие мощные видеокарты. Сама Windows в DirectX-приложениях понятия не имеет что там нарисовано, картинка сразу поступает с видеокарты на монитор, она видит просто «чёрный квадрат», т.е. область отображения данных, но не сами данные. Если нужно получить скриншот — средствами DirectX возможно получить данные с видеокарты в оперативную память, но эта задача достаточно ресурсоёмкая, по этому выполняется исключительно «по запросу» (для этого и перехватывается PrintScreen). В кругах разработчиков игр как бы вообще считается дурным тоном программирования возвращать данные с видеокарты и скриншот — это пожалуй, единственное исключение.
В некоторых играх, в частности на стареньком движке HL (Counter-Strike 1.6 и т.п.), помимо DirectX есть возможность программного рендеринга, но обычно им не пользуются в силу большой загрузки процессора и низкого выдаваемого FPS, но там можно снимать скриншоты просто снимком экрана средствами Windows.
Да, по нажатию PrintScreen в определенном каталоге появляется скриншот.
Размещают как-то. Вон в уроках от CMIVfx код после пережатий и фильтров остается, как говорят люди, пробовавшие его затирать
интересно… надо будет поиграться со скринами.
Обмани систему printscr->run mspaint->ctrl+V, ну или fraps :)
Да легко.
1. Перехватываем нажатие на PrintScreen, отправляем в буфер скорректированное изображение
2. Генерируем водяные знаки прямо на мониторе пользователя. Обманываем вообще все, даже Fraps. Чтобы не было заметно артефактов изображения, сгенерируем эти знаки на каком нибудь разрисованном элементе интерфейса.
Офтопик: пришли те времена, когда крохотная утилитка для такой примитивной задачи требует каркаса на >9000 Мб. Печально, сэры!
Просто для разработки утилиты использован «бульдозер» с реактивными двигателями, ракетницами и защитными полями.
На С++ вполне можно сделать бинарник размером порядка 1 МиБ при полном отсутствии несистемных зависимостей. А если вообще не пользовать фреймворки, то это будет вообще что-то около 200 КиБ, не больше.
Так ото ж! И я про что. Расслабили нас широкие каналы связи и готовые «кирпчики»
Why not, если предполагается, что этот самый каркас установлен на большинстве компьютеров?
Сам то я сейчас на системе, в которой этого в принципе нет (как, впрочем, и нет возможности запустить WoW), однако «предпологается» и «большинство» когда-то для себя вылечил. Был в гостях у отаку. Стоит обычный комп и куча внешних накопителей. Надо было что-то зафиксировать и распечатать. И тут я впервые увидел в своей жизни виндоуз ХР без офисного пакета. Человек открыл вордпад и сделал что надо. Я посмотрел что у него установлено и открыл для себя, что очень много программ «предположительно установленных у большинства» по сути не нужны, если ты не в учреждении работаешь. Ему просто обработка документов не нужна для просомтра аниме и работы с сабами. Было это давно и с тех пор немного шире смотрю на «естьу всех».

К тому же, зачем делать .exe с .NET если можно запилить на флеше, там тоже можно это сделать. А флеш на большем количестве устройств поддерживается ;-)

Понятное дело, что в данном случае что человек умеет, что под рукой то и сделал. Но печальная тенденция разработки мелких штучек объёмами передовых игр 98 года напрягает любого, кто когда-то делал (даже в паскале) утилитки на дискету, чтобы еще и ДОС влез.
А когда я был маленьким, я делал экзешники в 1 или 2 килобайта вроде :) Относительно функциональные приложения укладывались в десятки килобайтов. И то недоумевал, что там пишется, это же НЕСКОЛЬКО ТЫСЯЧ БАЙТОВ! Поэтому мне очень нравились .com приложения, в которых не было ничего лишнего. Есть в этом своя эстетика.
Чётко придумали.
61 комментарий и ещё никто не написал про белорусские метки на скриншотах World of Tanks? Исправляем :)

Они там таки есть, примерно по тому же принципу. С их помощью, в частности, ловили за руку недопросовестных супертестеров, подписавших NDA, а потом сливавших скриншоты :)
Там ID аккаунта, не имя пользователя. Чтобы сопоставить одно с другим нужно иметь доступ к базам Близзарда.
Таки иногда эти базы сливают.
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.