Что такое 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 не получится — это не стриминговый сервис, а инструмент для работы с зашифрованным спутниковым сигналом.
Practical checklist for smooth viewing
Even the best CCCam or OSCam line needs two or three simple preparations. Update your receiver firmware, reset the ECM cache once a week and keep 15–20% free space on the USB stick or internal flash so that the reader can store keys without delays.
When tuning a dish, aim for MER/BER reserve: a two‑degree offset or a loose F‑connector often causes the “freezing” that users blame on cardsharing. Keep a short patch cord to test alternative routers, and save two profiles in OSCam — one for TCP, one for UDP — so you can switch instantly if your ISP starts filtering a protocol.
Utgard.tv monitors each hub 24/7, but you can speed up diagnostics by keeping a short log of your receiver actions. Note the time when you changed the channel, which CAID was active and whether you used Wi‑Fi or Ethernet. This tiny “journal” helps engineers reproduce your environment in the lab and return with a solution in minutes instead of hours.
- Keep two line slots enabled: if the first server hits a maintenance window, the second one instantly takes over without re-entering credentials.
- Run a monthly speed and latency test. Stable 1–2 Mbps with ping <80 ms is enough for SD/HD, but if jitter exceeds 20 ms, switch the router to wired mode.
- Save the Utgard.tv status page and Telegram bot @utgard_tv_bot to bookmarks — they publish maintenance notices before SEMrush or uptime monitors raise alerts.