Bambuk Posted June 29, 2012 Posted June 29, 2012 Кто-нибудь реализовывал шифрование IPTV мультикаста и открытие его на STB и PCPlayer сам? Зашифровать с помощью CSA не проблема и сервер ключей сделать тоже. Вопросы есть на клиентской стороне. В STB можно написать плагин, который будет устанавливать нужные ключи. На MAG250 я такой тестовый плагин со статическими ключами написал. Теперь вопрос в том, как получать их с сервера ключей периодически. Производитель на вопросы о том что можно использовать в плагине молчит, методом проб и ошибок - долго. Может у кого-нибудь уже есть наработки на эту тему? vlc с прописанными ключами тоже все открывает. Но опять же ключи нужно периодически получать с сервера. Поэтому PCPlayer видимо придется писать на основе vlc и webkit на Qt. Имеются ли у сообщества наработки на эту тему? Вставить ник Quote
danilbal Posted June 29, 2012 Posted June 29, 2012 эээ... ECM смультиплексировать не выходит? Вставить ник Quote
Bambuk Posted June 29, 2012 Author Posted June 29, 2012 Если в ECM отправлять зашифрованные CW то ключи для их открытия тоже нужно как-то получать. А слать CW в открытую или закрытые постоянным алгоритмом/ключем не есть хорошо. Вставить ник Quote
VVG Posted June 29, 2012 Posted June 29, 2012 Эмм... В принципе, у меня написано. Плагин, мукс со скремблером и сервер, раздающий ключи. Но пока непригодно к выкладыванию... Вставить ник Quote
VVG Posted June 29, 2012 Posted June 29, 2012 Не знаком. Это тот, который виндовый клиент Verimatrix-а? Вставить ник Quote
VVG Posted June 30, 2012 Posted June 30, 2012 Плагин для VLC? Ну, напишу когда-нибудь, если время будет... Вставить ник Quote
Bambuk Posted June 30, 2012 Author Posted June 30, 2012 Лучше webkit с интегрированным vlc. Вставить ник Quote
tipok Posted July 2, 2012 Posted July 2, 2012 (edited) А почему-бы не использовать для получения ключей тот-же curl+ssl (у клиента), можно обойтись и без CURL'а если HTTP-не нужен. А раздавать - каким-нибудь питоновским скриптом. При этом каждому клиенту генерим свой сертификат, которым он и будет авторизоваться на сервере. Я что-то подобное сделал для DIB-120 (но с использованием EMM/ECM). Для начала можно почитать вот это или это. Edited July 2, 2012 by tipok Вставить ник Quote
VVG Posted July 2, 2012 Posted July 2, 2012 Как бы, так и написано, только сервер всё-таки на сях. HTTP совершенно не нужен, только мешает. Лишние хендшейки по SSL будут грузить проц на сервере. Вставить ник Quote
tipok Posted July 2, 2012 Posted July 2, 2012 А если не секрет, как именно вы реализовали дескремблирование? Просто если по ssl отдавать CW-ключи, то можно сразу-же блочить "читеров", которые одновременно запускают один и тот-же софт на разных машинах, но при этом значительно выростет нагрузка на сервер ключей. Если-же использовать связку ECM с зашифрованными CW, а ключи для их раскрытия - передавать по ssl (с бóльшим интервалом), то нагрузки - практически нет, но есть шанс, что запустив второй экземпляр клиентского ПО, показывать будут оба плеера. Ну а привязка к серийникам, макам, ид дисков, и т.п. - всё это обходится. Вставить ник Quote
VVG Posted July 2, 2012 Posted July 2, 2012 Передаю ECM в потоке, зашифрованные ключами, которые передаются по SSL. Ключи у меня меняются раз в день. Причем есть возможность не перекодировать сам поток, а только перепаковывать ключи в новые ECM-ки. Плейер для PC я не писал, а под MAG у меня закрытый ключ к сертификату зашифрован паролем, генерящимся из MAC адреса. Одновременно в любом случае не будут -- два соединения с одним сертификатом не прокатят. Вставить ник Quote
Bambuk Posted July 2, 2012 Author Posted July 2, 2012 А как на MAG вы периодически раз в сутки ключи обновляете по SSL? В каком callback'е? Или при инициализации плагина запускаете свои threads, которые делают что надо когда нужно? Вставить ник Quote
VVG Posted July 2, 2012 Posted July 2, 2012 Да, там запускается отдельный поток, и в нем уже происходит вся работа с сервером через OpenSSL. Плагину всё равно, как часто обновляются ключи, ему в ECM приходит его ID, если его нет в кеше, он запрашивается. Вставить ник Quote
Bambuk Posted July 2, 2012 Author Posted July 2, 2012 под MAG у меня закрытый ключ к сертификату зашифрован паролем, генерящимся из MAC адреса.Одновременно в любом случае не будут -- два соединения с одним сертификатом не прокатят. Если ключ меняется раз в сутки, то получил его на одну STB, отключился, получил на другую, прикинувшись первой, и смотри в течении суток. MAC адрес известен, т.е. если узнать алгоритм генерации из него пароля то можно смотреть везде? Вставить ник Quote
VVG Posted July 2, 2012 Posted July 2, 2012 получил на другую, прикинувшись первой, и смотри в течении суток Ага, и так каждый день. Меняйте ключ чаще. Это один из моментов, почему я не выкладываю свой мукс -- там пока многое заточено под нашу сеть с минимумом настроек в конфиге. т.е. если узнать алгоритм генерации из него пароля то можно смотреть везде? А если ещё и дизассемблировать модуль, можно вообще без приставки смотреть. Есть идеи -- предлагайте... Вставить ник Quote
Bambuk Posted July 2, 2012 Author Posted July 2, 2012 Да, расковырять можно что угодно. Но в небольшой сети этим вряд ли кто-то будет заниматься. Поэтому вариант для STB, если не публиковать алгоритмы шифрования и получения ключей, вполне пойдет. С PC player в этом плане сложнее, т.к. расковырять значительно проще. Вставить ник Quote
VVG Posted July 2, 2012 Posted July 2, 2012 Ну, самый надежный вариант -- USB ключ :) Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.