Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Защита видео-контента


Автор: blur 20.3.2009, 12:40
Доброго дня всем,
Есть сайт, который предоставляет различный видео-контент. Как можно сделать, чтобы пользователи не могли сохранить видео у себя?

Автор: MoLeX 20.3.2009, 13:04
Цитата(blur @  20.3.2009,  12:40 Найти цитируемый пост)
Как можно сделать, чтобы пользователи не могли сохранить видео у себя? 

убрать ссылку на скачку файла smile 

Автор: Sanek123 20.3.2009, 13:25
Я так и думал что этот вопрос рано или поздно появиться!
Обычно с сайтов онлайн видео я скачивал фильмы (*.flv) - они мало весят, быстро качаются, еще и если обалденное качество изображения так и вовсе. Делается это так: 
  • открываю исходный код страницы
  • ищу теги типа <obect>, <embed> или просто <img>
  • отслеживаю откуда происходит подгрузка контента например "<img src='http:/online.tv.ru/video/gdrdg1df5g15dfg1d5f1gd65f1g1df56g.flv'>"
  • копирую содержимое атрибута src и вставляю в download master
  • Вуаля! фильмец готов.
Потом наткнулся на сайтик и долго соображал где находиться видео ролик, как оказалось выброс контента на страничку происходит динамически (выполняется сценарий Java Script).
Но и тут разработчики просчитались, нужно: 
  • отследить ссылку на файл содержащий Java Script, например <script language='JS' rel styleshet='text' src='script.js'>
  • в строку браузера после основного текущего адреса надо добавить / и содержимое атрибута src
скачиваем JS-файл смотрим и повторяем метод первый.
Короче мораль: защитить контент от злоумышленников не возможно, особенно если они к тому же обладают некоторыми познаниями в области сайтостроения, программирования или защиты информации.
Единственный верный, если не 100%, то 99,9% способ - это динамический выброс контента.
Причем если только скрипт поместить в отдельный файл, а этот файл разместить на уровень выше уровня страницы.
Пример:
обычно делается так

http://mysite.ru
|_index.html
|_js/script.js
и их адреса соответственно
http://mysite.ru/index.html
http://mysite.ru/js/script.js

а надо сделать так

http://mysite.ru
|_page/index.html
|_js/script.js
и их адреса соответственно
http://mysite.ru/page/index.html
http://mysite.ru/js/script.js

но зато в коде страницы ссылка на файл со скриптом будет иметь вид:
<script src="..\js\script.js">

и именно благодаря подъему на директорию выше "..\" конечный пользователь не сможет воплотить в жизнь методы 1 и 2.
Вот и все.

Автор: skyboy 20.3.2009, 13:52
Sanek123, поставить снифеер запросов(к примеру, закладка NET в https://addons.mozilla.org/ru/firefox/addon/1843'e) и все станет много проще  smile 

Автор: IZ@TOP 20.3.2009, 14:55
ИМХО, пишите свой stream-сервер. Обычными средствами Вы можете только ограничить список тех, кто скачает контент, но никак не защититься на 100%.

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

Автор: nerezus 20.3.2009, 17:17
Цитата

Как можно сделать, чтобы пользователи не могли сохранить видео у себя?
 Никак.
Если клиент просмартивает видео, то может его и скачать.
А зачем нужно ограничивать то? Это удобно, что пользователь может скачать видео.

Цитата

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

Автор: IZ@TOP 20.3.2009, 17:38
Цитата(nerezus @  20.3.2009,  18:17 Найти цитируемый пост)
Перехватываем поток и пишем его в файл. 

Цитата(IZ@TOP @  20.3.2009,  15:55 Найти цитируемый пост)
Обычными средствами Вы можете только ограничить список тех, кто скачает контент, но никак не защититься на 100%.

Это во первых. Во вторых, допустим, я действительно распространяю дорогостоящий контент "напрокат" и мне очень и очень не выгодно отдавать его в чужие руки. В этом случае, я бы использовал десктоп-приложение или Java-аплет. Хотя в случае с Java, толком ничего сказать не могу, поскольку не разбираюсь в этой технологии. На крайний случай, с флеш-плеером я бы шифровал поток.

Автор: skyboy 20.3.2009, 18:31
Цитата(IZ@TOP @  20.3.2009,  16:38 Найти цитируемый пост)
На крайний случай, с флеш-плеером я бы шифровал поток. 

я бы записывал прямо с экрана.  smile  благо программ различных хватает.

Автор: IZ@TOP 20.3.2009, 18:38
Цитата(skyboy @  20.3.2009,  19:31 Найти цитируемый пост)
я бы записывал прямо с экрана.  smile  благо программ различных хватает. 

Тут уж ничего не поделаешь. 

Автор: nerezus 20.3.2009, 18:50
Цитата

На крайний случай, с флеш-плеером я бы шифровал поток.
 Можно пример простого ксора потока? =)

Просто я смотрел ActionScript - самому интересна задача =)

Автор: IZ@TOP 20.3.2009, 18:58
Цитата(nerezus @  20.3.2009,  19:50 Найти цитируемый пост)
 Можно пример простого ксора потока? =)

Просто я смотрел ActionScript - самому интересна задача =) 


Я не делал, но предполагаю, что это реализуемо. По меньшей мере, http://www.adobe.com/products/flashmediaserver/ это умеет.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)