Как спрятать картинку от сохранения через копию экрана?

Хочется в браузере на компе или телефоне показать картинку, но максимально усложнить её сохранение зрителем. Популярная нынче тема «исчезающих» сообщений, Snapchat, эфемерный мессаджинг.

Сценарий: Оля сфотографировала duck-face в новых модных очках в зеркало для своего друга Вани, и отправила ему картинку. Но она точно никак не хочет, чтобы тот показал её кому-то ещё, или опубликовал во ВКонтакте. Более того, желательно, чтобы он только разок посмотрел на картинку, а потом та бесследно исчезла.

Т.е. картинку нужно защитить от скачивания по ссылке, и, главное и сложное, от скриншота средствами устройства, на котором показывается — десктопа или смартфона.

Пока «придумал» только показывать анимацию: быстро менять по кругу несколько кадров, каждый содержащий фрагментарные точки картинки, в сумме, за счёт инертности человеческого зрения, создающих представление о картинке целиком. JS + canvas или webGL.

Понятно, что эти кадры можно сохранить по отдельности и совместить в фотошопе.

Какие ещё могут быть способы?
  • Вопрос задан
  • 3832 просмотра
Пригласить эксперта
Ответы на вопрос 10
iiil
@iiil
Инженер и вэб-дизайнер, рисую.
а зачем? лучший способ - не показать картинку вообще.
Ответ написан
1) Делайте див, размером с картинку, в нем фоновым рисунком вставляйте картинку. В див img с прозрачным pix.gif и растягивайте img на весь див. Таким образом нельзя будет сохранить картинку тыкнув правой кнопкой и нажав "Save image as". Если нажать F12 и открыть developer tools то все конечно всплывет наружу и можно будет вытащить картинку. Поэтому мы переходим к ...
2) Одноразвый урл для картинки. Т.е. мы вставляем не site.ru/my.jpg а site.ru/getmyjpg?toket= Токен вы генерируете вместе с html кодом, а в обработчике getmyjpg проверяете его, инвалидируете (удаляете из БД) и этот урл перестает быть валидным. Т.е. если открыть девелопер тулс и скопировать упл до картинки, то он окажется уже не рабочим.

Правда это не спасет от того, чтобы скачать html без картинок, взять еще рабочий урл и скачать картинку. Но также это не спасет от того, чтобы снять скриншот или сфоткать экран на фотоаппарат. Так что в общем-то это приемлимый и, с моей точки зрения, максимально возможный уровень "усложнения скачки" картинки.
Ответ написан
усложнение жизни посетителю вместо грамотного способа монетизации прямой путь к фейлу
Ответ написан
VasiliyIsaichkin
@VasiliyIsaichkin
Web front/back-end (JS-full stack) app developer
А что помешает нажать print screen? От него какая защита?
Ответ написан
mrstrictly
@mrstrictly
Показывать ее в OpenGL-ном окошке загружая с сервера в проприетарном формате. :)
Ответ написан
Комментировать
@IntenT
добавьте водяные знаки и не мучайтесь
Ответ написан
Никак. Любой человек с базовыми навыками верстальщика сможет её вытянуть. Даже если попытаетесь заблокировать правую кнопку мыши.
И действительно на самый худой конец, например если flash, есть print screen
Ответ написан
iiil
@iiil
Инженер и вэб-дизайнер, рисую.
Вы пытаетесь нарушить основной принцип, поделиться с кем-то чем-то и одновременно не делиться. Если Ваше изображение столь уникально, столь дорого - то зачем им делиться? Хотите его продать - найдите способ, сделайте маленькое превью, поделитесь куском или как-нибудь так. Если не хотите делиться с конкурентом, например, то Вы должны понимать риск - если Вы сами фотографируете товар - то миритесь с тем, что через пару дней кто-то может поставить себе это фото под видом собственного фото.
С таким же успехом можно стараться запретить кому-то перепечатывать Ваши тексты или певцу запрещать напевать людям его песни.
Ответ написан
AnDRUidale
@AnDRUidale
Полагаю что Ваня ввиду своей "хитрости" и не узнает об Print screen и просто сфотографирует на телефон =)
Ответ написан
@worldaround
1й способ защиты: картинка должна быть никому не нужна.
2й - картинка должна вызывать отвращение, а не симпатию
3й - уведомить человека о серьезной ответственности и неменуемом наказании
4й - проследить за просмотром самому

Вообще, задача поставлена очень неопределенно.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы