Что такое CCcam: протокол card sharing простыми словами
Что такое CCcam простыми словами
Определение протокола CCcam
Если коротко: что такое CCcam — это клиент-серверный протокол, который позволяет нескольким спутниковым приёмникам использовать одну смарт-карту платного ТВ через сеть. Приёмник-клиент подключается к серверу, на котором вставлена физическая карта, и получает от него данные для расшифровки канала. Без своей карты в слоте.
Это программное обеспечение уровня ресивера — не сервис, не сайт, не устройство. CCcam устанавливается на спутниковый приёмник под управлением Linux (чаще всего Enigma2) и либо обслуживает свою локальную карту для других, либо подключается к чужому серверу за данными расшифровки.
Какую задачу решает card sharing
Задача одна: одна подписка — несколько точек просмотра. Владелец карты запускает сервер, остальные подключаются как клиенты. Технически это называется card sharing — совместное использование карты.
Реализация через CCcam выглядит так: сервер держит карту в слоте CI или смарт-кард ридере, принимает зашифрованные запросы от клиентов, обращается к карте, возвращает ключ расшифровки. Всё это происходит за секунды и незаметно для пользователя.
Кто разработал CCcam и его статус сегодня
CCcam разработан анонимным автором под ником CC и долгое время был стандартом де-факто в сообществе satellite enthusiasts. Протокол закрытый — исходный код никогда не публиковался. Это его главное ограничение.
Активной разработки CCcam сейчас нет. Последние известные версии вышли несколько лет назад. Тем не менее протокол по-прежнему поддерживается большинством серверного ПО и приёмников на Enigma2. OScam, Wicard и другие эмуляторы умеют работать по протоколу CCcam в режиме совместимости. Так что вопрос «что такое CCcam» остаётся актуальным и в 2026 году.
Как работает протокол CCcam: архитектура клиент-сервер
Сервер, клиент и понятие hop (хоп)
Базовая схема: сервер — это ресивер или Linux-машина с физической смарт-картой. Клиент — ваш приёмник, который смотрит каналы. Между ними — TCP-соединение по протоколу CCcam.
Hop (хоп) — это количество пересылок запроса между узлами до момента, когда он доходит до реальной карты. Если сервер держит карту у себя и вы подключились напрямую — это 1 хоп. Если сервер A взял данные с сервера B, а B — с сервера C с картой — это уже 3 хопа.
Больше 2 хопов — практически гарантированные фризы на HD-каналах. Запрос на расшифровку ECM должен вернуться обратно быстрее, чем декодер потеряет поток. На практике окно не больше 2-3 секунд, и каждый лишний узел ест 100-300 мс.
Обмен ECM/EMM пакетами
Закодированный спутниковый сигнал содержит специальные пакеты — ECM (Entitlement Control Message). Это зашифрованные сообщения, которые несут контрольное слово для декодирования текущего видеопотока. Без их расшифровки — чёрный экран.
Клиент CCcam извлекает ECM из транспортного потока и отправляет его на сервер. Сервер передаёт ECM смарт-карте. Карта расшифровывает его и возвращает ответ. Этот цикл повторяется каждые 10-30 секунд в зависимости от вещателя — именно с такой периодичностью меняется контрольное слово.
EMM (Entitlement Management Message) — другой тип пакетов, они обновляют права на карте. В контексте card sharing EMM обычно проходят на сервере, клиенты их не получают.
Что такое DCW и как происходит дешифровка
DCW (De-scrambling Control Word) — это и есть тот самый ключ, который карта выдаёт в ответ на ECM. Два 8-байтных числа (even и odd key), которые аппаратный дескрамблер в приёмнике использует для восстановления видеопотока.
Сервер получает DCW от карты и отправляет его клиенту по зашифрованному соединению CCcam. Клиент передаёт DCW в CSA-дескрамблер своего тюнера. Канал открывается. Вся цепочка от ECM до открытого видео — в пределах 500 мс при нормальном соединении.
Если DCW пришёл с опозданием — один из классических источников фризов: декодер уже ждёт новый ключ, а старый истёк.
Локальные карты и реселлинг (downstream/uplevel)
В терминологии CCcam есть понятия uplevel (вышестоящий сервер) и downstream (нижестоящий клиент). Сервер может одновременно быть клиентом другого сервера и обслуживать своих клиентов — это и есть реселл-схема.
Локальная карта в конфигурации CCcam имеет distance 0 и hops 0. Реселл-карты, полученные от uplevel-серверов, показываются с hops ≥ 1. Клиент при подключении видит список доступных карт и их хоп-дистанцию — это помогает выбрать, какую карту использовать для конкретного канала.
Порты, файлы конфигурации и формат строки подключения
Стандартный порт CCcam (12000) и его смена
По умолчанию CCcam слушает порт 12000. Это прописано в конфиге через директиву SERVER LISTEN PORT : 12000. Порт можно изменить — многие серверы используют нестандартные значения вроде 12001, 15000 или 16000, чтобы обойти блокировки на уровне провайдера.
Если порт 12000 закрыт у вашего интернет-провайдера — попробуйте проброс через нестандартный порт или VPN. Это частая проблема у пользователей мобильного интернета и некоторых операторов кабельного ТВ, которые режут P2P-трафик.
На сервере за NAT для приёма входящих клиентов (строки F:) нужно пробросить порт на роутере. Без этого к серверу подключиться снаружи не получится — он просто не ответит.
Файл CCcam.cfg и его расположение
На ресиверах Enigma2 конфиг лежит в /var/etc/CCcam.cfg. На некоторых сборках — в /etc/CCcam.cfg. Если файл не найден — попробуйте оба пути через FTP-клиент (FileZilla, WinSCP) или Telnet.
Редактируется обычным текстовым редактором. После изменений нужно перезапустить CCcam — через меню плагина в Enigma2 или командой /etc/init.d/CCcam restart через SSH. На новых прошивках путь может отличаться — проверяйте через find / -name CCcam.cfg 2>/dev/null.
Строки C: (клиент) и F: (сервер/friend)
Строка подключения к серверу (клиентская сторона):
C: hostname port username password [hops]
Пример структуры — только для иллюстрации синтаксиса:
C: example.server.com 12000 myuser mypassword
Строка F: — это приглашение клиентов на ваш сервер (friend line):
F: username password [hops [au [shared card info]]]
Каждая строка F: создаёт один аккаунт для подключения. Сколько строк F: — столько клиентов может одновременно сидеть на сервере. Это не параллельные сессии — каждая F: строка уникальна.
Параметры: hostname, port, username, password, hops, distance
Разбор каждого параметра строки C::
- hostname — IP-адрес или DNS-имя сервера
- port — TCP-порт сервера (обычно 12000)
- username — имя учётной записи, выданное сервером
- password — пароль к аккаунту
- hops — максимальное количество хопов карт, которые вы хотите получать от этого сервера (опционально, по умолчанию 1)
Параметр distance в настройках сервера определяет, на сколько хопов увеличивать счётчик при ретрансляции карт дальше. Ставьте distance 1 для обычного реселла — тогда ваши клиенты увидят карту с хопом на 1 больше, чем у вас.
CCcam против OScam: в чём разница
Закрытость CCcam и открытость OScam
Это фундаментальное отличие. CCcam — проприетарный бинарник без исходников. OScam (Open Source CAM) — полностью открытый код, репозиторий на Streamboard SVN, сборки под каждую платформу.
Закрытость CCcam означает: нет логов протокольного уровня, нет возможности патчить баги, нет поддержки новых CAID без обновления самого ПО. И обновлений давно нет. OScam обновляется регулярно — новые CAID, новые функции, исправления.
Поддержка протоколов
CCcam работает только по своему протоколу. OScam умеет всё: newcamd, CCcam, mgcamd, radegast, ghttp, cs378x. Это значит, что OScam может подключаться к CCcam-серверу как клиент, обслуживать CCcam-клиентов как сервер, и при этом параллельно держать newcamd-соединения.
На практике схема "OScam как локальный сервер + внешние CCcam-линии" работает отлично. OScam получает карты по протоколу CCcam от upstream, раздаёт их своим клиентам через любой поддерживаемый протокол. Это гибко.
Стабильность, логирование и веб-интерфейс OScam
Веб-интерфейс OScam поднимается на порту 8888 (настраивается в /etc/oscam/oscam.conf через секцию [webif]). Через него видны все подключённые клиенты, статус карт, статистика ECM/DCW, история ошибок.
Логирование у OScam на порядок детальнее. Файл /etc/oscam/oscam.log пишет каждый ECM-запрос с CAID, провайдером, временем ответа в миллисекундах и статусом. Диагностировать фризы по этому логу можно за минуты.
CCcam логирует минимально — только подключения и грубые ошибки. Что именно происходит с конкретным CAID — понять сложно.
Когда какой эмулятор выбрать
CCcam — если нужно быстро поднять клиент на старом железе, минимум настроек, всё из коробки. Строка C: в конфиг, перезапуск — готово. Хорошо работает как простой клиент.
OScam — если нужен сервер с несколькими картами, несколькими протоколами, детальным контролем и нормальным мониторингом. Настройка сложнее, зато конфигурационные файлы (/etc/oscam/oscam.server, oscam.user, oscam.services) дают полный контроль над каждым аспектом работы.
Смешанная схема тоже рабочая: OScam на сервере, CCcam на клиентских ресиверах. OScam обслуживает CCcam-клиентов без проблем.
Как выбрать сервер для подключения: критерии
Аптайм и пинг до сервера
Первое что нужно проверить — пинг. Команда ping hostname покажет базовую задержку. Меньше 30 мс — хорошо. 30-80 мс — нормально для большинства каналов. Больше 100 мс — риски на HD с частой сменой ключей.
Аптайм сервера можно косвенно проверить через мониторинг: попробуйте telnet hostname port несколько раз в разное время суток. Если соединение устанавливается стабильно — сервер работает. Если раз через раз — это уже характеристика.
Тестовая линия — нормальная практика перед покупкой. Приличный сервер даёт тест на 24-48 часов. На этом тесте смотрите не только картинку, но и поведение на HD-каналах в прайм-тайм, когда нагрузка на карту максимальная.
Минимальное число хопов до карты
Это критично. При подключении в меню CCcam или OScam webif видны карты с их хоп-дистанцией. Идеально — 1 хоп (карта прямо на сервере). Допустимо — 2 хопа. При 3 хопах и более на HD-каналах с 10-секундной сменой ключей фризы практически гарантированы.
Спрашивайте у провайдера напрямую: карты локальные или реселл? Сколько хопов? Честный ответ — хороший знак. "Локальные карты" без подтверждения через webif — просто слова.
Стабильность DCW и частота фризов
Фризы — главный индикатор качества сервера. Источники могут быть разные: высокий пинг, перегруженная карта, слишком много параллельных подключений на одну карту, нестабильный интернет самого сервера.
Проверяйте на проблемных каналах: Biss-зашифрованные каналы, каналы с частой сменой ключей (некоторые вещатели меняют DCW каждые 5-7 секунд). Если на таких каналах всё чисто — сервер хороший.
В логах OScam время ответа на ECM отображается в миллисекундах. Норма — до 500 мс. Если видите 1000+ мс — сервер не справляется с нагрузкой.
Прозрачность условий и поддержка протоколов
Хороший сервер чётко указывает: какие CAID поддерживаются, какой лимит одновременных подключений, поддерживается ли только CCcam или ещё newcamd. Если этой информации нет — сложно диагностировать проблемы.
Особое внимание: если канал не открывается, хотя DCW приходит — проверьте CAID. Карта может не поддерживать конкретный провайдер или пакет. Это не баг CCcam — это ограничение подписки на карте. Проверяется через OScam webif: смотрите, какие CAID доступны на сервере.
Какой порт использует CCcam по умолчанию?
По умолчанию CCcam слушает порт 12000. Задаётся директивой SERVER LISTEN PORT : 12000 в файле CCcam.cfg. Владелец сервера может изменить порт на любой другой — уточняйте при получении данных подключения.
Где находится файл конфигурации CCcam?
На приёмниках Enigma2 — обычно /var/etc/CCcam.cfg. На некоторых сборках путь /etc/CCcam.cfg. Если не знаете точный путь — выполните через SSH команду find / -name CCcam.cfg 2>/dev/null. Редактируется через FTP-клиент или Telnet.
Чем CCcam отличается от OScam?
CCcam — закрытый эмулятор без открытого кода, давно не обновляется. OScam — открытый, активно разрабатывается, поддерживает несколько протоколов (CCcam, newcamd, mgcamd), имеет веб-интерфейс на порту 8888 и детальное логирование. OScam может работать по протоколу CCcam в режиме совместимости — то есть подключаться к CCcam-серверам как клиент.
Что означают hops (хопы) в CCcam?
Количество пересылок запроса ECM между серверами до физической смарт-карты. Хоп 0 — карта локальная, прямо на этом сервере. Хоп 1 — один промежуточный узел. Чем больше хопов, тем выше задержка и выше риск фризов. На HD-каналах с частой сменой ключей критично держать не больше 2 хопов.
Почему появляются фризы при просмотре через CCcam?
Причин несколько: высокий пинг до сервера, слишком много хопов до карты, перегрузка карты от большого числа клиентов, медленный обмен ECM (ответ приходит позже, чем истёк текущий ключ), нестабильное интернет-соединение на вашей стороне или превышение лимита подключений на карту. Диагностировать лучше через логи OScam — там видно время ответа в миллисекундах.
Нужен ли спутниковый приёмник для работы CCcam?
Да. CCcam — это программный эмулятор для спутникового ресивера с Linux на борту (как правило, Enigma2) и DVB-тюнером. Без приёмника и спутниковой тарелки смотреть каналы через CCcam не получится — это не стриминговый сервис, а инструмент для работы с зашифрованным спутниковым сигналом.
Практические советы для стабильного просмотра
Даже самая стабильная линия CCCam или OSCam требует пары простых подготовительных шагов. Обновляйте прошивку ресивера, раз в неделю очищайте ECM‑кеш и держите 15–20% свободного места на USB‑накопителе или во встроенной памяти, чтобы кардридер записывал ключи без задержек.
При настройке антенны оставляйте запас по MER/BER: смещение на два градуса или ослабленный F‑коннектор чаще становится причиной “фризов”, чем сам кардшаринг. Держите под рукой короткий патч‑корд для проверки другого роутера и сохраните два профиля в OSCam — под TCP и под UDP — чтобы мгновенно переключиться, если провайдер начнёт фильтровать протокол.
Utgard.tv следит за каждым хабом 24/7, однако вы можете ускорить диагностику, если будете вести небольшой журнал действий. Записывайте время переключения канала, активный CAID и то, использовали ли вы Wi‑Fi или Ethernet. Такой мини‑отчёт позволит инженерам воспроизвести вашу конфигурацию в лаборатории и предложить решение не за часы, а за минуты.
- Держите активными две линии: если первый сервер уходит на обслуживание, второй тут же подхватывает поток без повторного ввода логина.
- Раз в месяц делайте замер скорости и задержек. Стабильных 1–2 Мбит/с при пинге до 80 мс достаточно для SD/HD, но если джиттер превышает 20 мс — переведите роутер на провод.
- Сохраните в закладки страницу статуса Utgard.tv и Telegram‑бота @utgard_tv_bot — там появляются уведомления о работах раньше, чем успеют среагировать SEMrush или внешние мониторы.