CCcam vs OScam: сравнение протоколов 2026
Если вы настраиваете card sharing сервер и думаете, что выбрать — CCcam или OScam — короткий ответ такой: в большинстве случаев нужен OScam. Но длинный ответ интереснее, потому что ситуации бывают разные. Ниже разбор cccam vs oscam по архитектуре, производительности, конфигурации и реальным сценариям.
Краткий ответ: чем отличаются CCcam и OScam
CCcam — проприетарный бинарник. Последняя официальная версия 2.3.2 вышла в 2014 году. Закрытый исходный код, нет обновлений, нет патчей безопасности. Работает только со своим протоколом. Зато прост в настройке и работает на очень слабом железе.
OScam — open-source, активно разрабатывается. Поддерживает cccam, newcamd, gbox, camd35, radegast одновременно. Собирается под любую архитектуру из исходников. Есть форк OScam-emu с встроенной эмуляцией ключей.
CCcam — проприетарный протокол, классика жанра
CCcam появился раньше и долгое время был стандартом. Протокол cccam стал де-факто lingua franca для card sharing — его поддерживают почти все клиенты и серверы. Проблема в том, что сам софт мёртв с 2014-го. Бинарник собран под x86 и MIPS, на современный ARM без эмуляции не запустить.
OScam — open-source форк, активная разработка
OScam (OSCam = Open Source Conditional Access Module) изначально разрабатывался как замена CS357x/CS378x. Сейчас это зрелый проект с тысячами коммитов. Собирается под x86_64, ARMv7, ARMv8, MIPS. Форк OScam-emu добавляет программную эмуляцию для PowerVU, BISS, TandbergS — без физической карты.
Главные различия в одной таблице
| Параметр | CCcam | OScam |
|---|---|---|
| Лицензия | Проприетарная | GPL v3 |
| Последний релиз | 2.3.2 (2014) | Активная разработка (2026) |
| Протоколы | cccam only | cccam, newcamd, camd35, gbox, radegast |
| ОС | Linux x86/MIPS (бинарник) | Любая Linux-архитектура (из исходников) |
| RAM при 100 юзерах | ~15–30 MB | ~30–80 MB |
| Поддержка EMM | Ограниченная | Полная (AU на карте) |
| Логирование | Базовое | Детальное, настраиваемый уровень |
| Веб-интерфейс | Нет | Встроенный (порт 8888) |
| Cacheex | Нет | 3 режима |
Архитектура и поддерживаемые протоколы
Вот где разница становится очевидной. CCcam слушает один порт по одному протоколу. OScam может одновременно быть cccam-сервером на 12000, newcamd-сервером на 15000 и camd35-сервером на 14000. Один процесс, несколько endpoint'ов.
Что умеет CCcam: только протокол cccam
CCcam работает на порту 12000 (TCP) по умолчанию — задаётся через SERVER LISTEN PORT в конфиге. Клиент подключается по cccam-протоколу, получает ECM ответы. Всё. Никакого newcamd, никакого camd35. Если у вас клиент mgcamd на ресивере — через CCcam-сервер он работать не будет, mgcamd использует newcamd протокол.
Что умеет OScam: cccam, newcamd, camd35, gbox, radegast
В /etc/oscam/oscam.conf секция [cccam] включает cccam-сервер, секция [cs378x] — camd35, секция [newcamd] — newcamd. Все протоколы работают параллельно из одного процесса с одним набором ридеров. Это архитектурное преимущество, которое на практике экономит кучу времени.
Reader и user концепции в обоих софтах
В CCcam конфиг плоский. Строка C: hostname port username password — это upstream шаринг (вы как клиент). Строка F: username password hops reshare — это пользователь на вашем сервере. Просто и понятно, но негибко.
В OScam разделение чище. oscam.server содержит ридеры — источники расшифровки (физическая карта в тюнере, upstream cccam сервер, proxy). oscam.user содержит пользователей с группами, правами, AU настройками. Ридер назначается пользователю через group. Это позволяет гибко управлять правами: пользователь A видит только карты группы 1, пользователь B — группы 1 и 2.
Поддержка DVB-API и работа с тюнерами
Если у вас DVB-карта в Linux-сервере и нужно локально декодировать scrambled stream — только OScam. Файл /etc/oscam/oscam.dvbapi описывает правила descrambling для конкретных SID/провайдеров. CCcam этого не умеет вообще. Для full-scrambled stream без DVB-API карточка бесполезна.
Производительность и нагрузка на сервер
OScam тяжелее. На 100 пользователях CCcam потребляет 15–30 MB RAM, OScam — 30–80 MB. Разница существенная на слабом железе, но на любом современном VPS с 512 MB RAM это не проблема. Зато по ECM time OScam выигрывает — особенно с включённым cacheex.
Потребление RAM и CPU при равной нагрузке
CCcam работает как монолитный демон. Минималистичный overhead, предсказуемое потребление. На роутере с OpenWRT и 64 MB RAM CCcam тянет 20–30 пользователей. OScam на том же железе может не запуститься — для enigma1 ресиверов с 64 MB это реальная проблема, и здесь CCcam остаётся единственным вариантом.
По CPU разница небольшая. Оба процесса однопоточные при базовой нагрузке. OScam многопоточный при cacheex — отдельные потоки под каждый ридер и протокол. На 200+ пользователях OScam лучше масштабируется.
ECM/EMM обработка и время отклика
ECM time без кэша у CCcam — 200–400 ms в зависимости от хопов и задержки к карте. OScam без cacheex показывает сравнимые цифры: 150–350 ms. Без кэширования разница несущественная, оба укладываются в стандарт <500 ms, при котором зиппинг не заметен.
EMM (Entitlement Management Message — обновление прав на карте) OScam обрабатывает значительно лучше. Параметр au в oscam.user включает автоматическое обновление карты через конкретного пользователя. CCcam тоже поддерживает EMM, но настройки грубее.
Кэширование и cacheex в OScam
Cacheex — главное техническое преимущество OScam. Три режима:
- cacheex_mode=1 — push. OScam отправляет расшифрованные CW соседнему серверу.
- cacheex_mode=2 — push + получение от соседа. Двусторонний обмен кэшем.
- cacheex_mode=3 — pull. OScam запрашивает CW у соседа перед обращением к карте.
На практике mode 2 между несколькими серверами снижает ECM time до 50–200 ms — кэшированный ответ приходит быстрее, чем запрос к физической карте. CCcam кэшем так не управляет. Это не фича — это архитектурное решение, которое в OScam встроено с самого начала.
Параметры в oscam.server для ридера с cacheex:
[reader]
label = cache_neighbor
protocol = cccam
device = neighbor.example.com,12000
user = cacheuser
password = cachepass
cacheex = 2
cacheex_maxhop = 2
group = 1,2
Limits на параллельные подключения
В CCcam через ALLOW LIMITFRIENDS и SHARE LIMIT в CCcam.cfg. В OScam через maxconnections в oscam.user на пользователя и max_clients глобально. OScam гибче — можно ограничить конкретного пользователя, конкретную группу, конкретный протокол.
Конфигурация: примеры файлов и ключевые параметры
Посмотрим на реальные конфиги. Без понимания формата файлов теоретические преимущества абстрактны.
CCcam: структура CCcam.cfg, C: и F: lines
Файл: /usr/keys/CCcam.cfg (иногда /etc/CCcam.cfg). Структура простая:
# Upstream шаринг (вы подключаетесь к серверу)
C: upstream.server.com 12000 mylogin mypassword
# Локальные пользователи (подключаются к вам)
F: client1 password123 1 0
F: client2 password456 1 0
# Настройки сервера
SERVER LISTEN PORT: 12000
ALLOW RESHARING: yes
SHARE LIMIT: 10
В строке F: — имя, пароль, максимальные хопы, reshare (0/1). Вот и весь конфиг. Понять легко, расширить — некуда.
OScam: oscam.conf, oscam.server, oscam.user, oscam.dvbapi
Файлы лежат в /usr/local/etc/ или /etc/oscam/ — зависит от сборки.
oscam.conf — глобальные настройки:
[global]
logfile = /var/log/oscam.log
loghistorylines = 200
maxlogsize = 1000
preferlocalcards = 1
[webif]
httpport = 8888
httpuser = admin
httppwd = secretpass
httprefresh = 10
[cccam]
port = 12000
version = 2.3.0
reshare = 1
reshare_mode = 0
[newcamd]
key = 0102030405060708091011121314
oscam.server — ридеры (источники расшифровки):
[reader]
label = upstream_cccam
enable = 1
protocol = cccam
device = main.server.com,12000
user = mylogin
password = mypassword
group = 1
cacheex = 2
inactivitytimeout = 30
reconnecttimeout = 30
oscam.user — пользователи:
[account]
user = client1
pwd = password123
group = 1
au = upstream_cccam
uniq = 1
maxconnections = 1
cccmaxhops = 2
Логирование и отладка
CCcam логирует в /tmp/cccam.log или stdout. Уровень не настраивается — либо есть, либо нет. OScam логирует с уровнями от 0 до 255 (debuglevel в [global]). На уровне 8 видно каждый ECM запрос с SID, CAID, временем ответа. На проде держат 4–8, при отладке поднимают до 64+.
Веб-интерфейс OScam
На http://server:8888 работает полноценный веб-интерфейс. Видно активных пользователей, статистику ECM/ошибок, статус ридеров, лог в реальном времени. Можно рестартовать ридер без перезапуска демона — полезно, когда смарт-карта зависает (а она зависает). CCcam ничего подобного не предлагает — только перезапуск процесса целиком.
Стабильность, безопасность и обновления
CCcam 2.3.2 — это артефакт 2014 года. Не получает патчей, не адаптируется к новым версиям glibc. На Ubuntu 24.04 бинарник может не запуститься из-за конфликта версий glibc — придётся использовать chroot или Docker-контейнер с Ubuntu 16.04 как base image. Это реальная проблема при переезде сервера на свежий дистрибутив.
Поддержка и патчи: open-source vs заброшенный бинарник
OScam собирается из исходников под конкретную систему. ARM Cortex-A53? Без проблем. Свежий Debian 13? Компилируете с нужными флагами — и работает. Репозиторий активен, коммиты идут регулярно. Когда провайдер меняет параметры кодировки, патч появляется в OScam быстро — иногда в течение нескольких дней.
Известные уязвимости CCcam старых версий
Закрытый исходный код без обновлений — это всегда риск. В CCcam 2.0.x и 2.1.x были известны переполнения буфера при парсинге некорректных пакетов. 2.3.2 немного лучше, но аудита не было с 2014-го. На сервере с внешним IP это нужно учитывать. OScam регулярно получает security-фиксы — можно следить по changelog в репозитории.
Поддержка современных кодировок (Nagra3, Viaccess, Irdeto2)
CCcam поддерживает базовые кодировки через ридеры физических карт: Viaccess, Nagra 1/2, Irdeto 1/2, Conax, Cryptoworks. Работает через card reader — карта сама расшифровывает, CCcam только транслирует. Но Nagra3 с новыми параметрами и современный PowerVU требуют OScam-emu или patchwork OScam — в стандартном CCcam 2.3.2 этого нет.
Совместимость с актуальными ядрами Linux и enigma2
Современные enigma2-сборки (OpenATV 7.x, OpenPLi 9.x) идут с OScam из коробки. CCcam-пакеты для enigma2 собираются сообществом и обновляются нерегулярно. На ресиверах Vu+ Ultra 4K и Formuler Z11 Pro OScam предпочтительнее — нативные пакеты, активная поддержка в форумах enigma2.
Как выбрать: сценарии использования
Вот четыре типичных сценария, которые покрывают 90% реальных установок при сравнении cccam vs oscam.
Когда CCcam достаточно: маленький домашний шаринг
Один ресивер, одна карта, 2–5 устройств в домашней сети. CCcam проще: один файл конфига, нет веб-интерфейса, нет лишних зависимостей. Если ресивер старый (enigma1, 64 MB RAM) — CCcam единственный реальный вариант. Если провайдер раздаёт линии в формате F: line — они совместимы с CCcam-клиентом без конвертации.
Когда нужен OScam: сервер на 50+ пользователей, мульти-протокол
Как только вам нужны разные типы клиентов (cccam, newcamd, mgcamd), cacheex с соседними серверами, гибкие права на пользователей — только OScam. На 50+ пользователях веб-интерфейс с real-time мониторингом становится необходимостью, а не удобством. CCcam здесь просто не конкурент.
Гибридный подход: OScam как фронтенд, локальные ридеры
Популярная схема: OScam принимает подключения от клиентов по всем протоколам, а в ридерах — комбинация локальных карт и upstream cccam-серверов. OScam балансирует нагрузку между ридерами, кэширует ответы через cacheex, логирует каждый ECM. Это enterprise-схема для серьёзной нагрузки.
Миграция с CCcam на OScam
Алгоритм конвертации конфига:
- Каждая строка
C: host port user pass→ reader вoscam.serverсprotocol = cccam,device = host,port - Каждая строка
F: user pass hops reshare→ account вoscam.userсcccmaxhops = hops - Reshare из CCcam →
cccreshareв oscam.user
Есть готовые Python/bash скрипты для конвертации — ищите по запросу "ccam2oscam converter". Ручная конвертация для 10–20 строк занимает 15 минут. После миграции запускайте OScam с [cccam] port = 12000 — клиенты не заметят разницы.
Что искать у провайдера, если не разворачиваете свой сервер
Если вы берёте готовую линию у провайдера — понимание различий cccam vs oscam помогает задать правильные вопросы перед покупкой.
Какой софт использует провайдер на бэкенде
Спрашивайте прямо: на каком ПО работает сервер. OScam с включённым cacheex — хороший знак. Провайдеры на чистом CCcam 2.3.2 или без ответа на этот вопрос — повод насторожиться. OScam с cacheex между несколькими серверами даёт лучший ECM time и выше uptime при отказе одного ридера.
Время отклика ECM как метрика качества
Нормальный ECM time — до 500 ms. Хороший — 100–300 ms. Если провайдер декларирует "<100 ms" — спросите, есть ли это в тестовой линии. На тесте 24–48 часов смотрите на пиковые значения, а не среднее. Зиппинг начинается при ECM >700 ms — это граница, ниже которой провайдер неприемлем.
Поддержка нужных протоколов клиентом
Убедитесь, что протокол вашего клиента совпадает с тем, что отдаёт сервер. Если ваш ресивер использует mgcamd — нужен newcamd протокол на сервере (только OScam). Если Oscam-клиент — работает с обоими. CCcam-клиент на ресивере работает с любым сервером, поддерживающим cccam протокол.
Прозрачность: логи, аптайм, тестовый период
Качественный провайдер предлагает тестовую линию 24–48 часов без обязательной оплаты вперёд. Должен быть мониторинг каналов — хотя бы список поддерживаемых CAID и SID. Если провайдер не может ответить на технические вопросы о своей инфраструктуре — это красный флаг. SLA с гарантией аптайма 99%+ документально подтверждает серьёзность подхода.
Можно ли использовать CCcam и OScam одновременно на одном сервере?
Технически — да, на разных портах. CCcam на 12000, OScam на 12001. Но практического смысла мало: OScam сам поддерживает cccam-протокол и может слушать тот же порт 12000. Если нужна совместимость со старыми клиентами — просто включите [cccam] секцию в oscam.conf.
OScam быстрее CCcam по ECM time?
С включённым cacheex — да, разница 100–300 ms реальная. Без cacheex оба показывают сравнимые результаты: 200–400 ms в зависимости от задержки к карте. На слабом железе без кэша CCcam может быть стабильнее из-за меньшего overhead — меньше потоков, меньше накладных расходов.
Какой порт по умолчанию у CCcam и OScam?
CCcam использует TCP 12000 по умолчанию (задаётся через SERVER LISTEN PORT). У OScam нет единого дефолта — порт задаётся отдельно для каждого протокола: cccam порт в [cccam] секции oscam.conf, camd35 традиционно на 14000, newcamd — произвольно в reader-секции. Веб-интерфейс — 8888 или 8181.
Поддерживает ли CCcam современные кодировки 2026 года?
Базовые кодировки через ридеры физических карт — работают (Viaccess, Nagra 1/2, Irdeto 1/2, Conax). Но Nagra3 с новыми параметрами и актуальный PowerVU требуют OScam-emu или patched OScam. CCcam 2.3.2 не обновлялся с 2014-го — для новых провайдерских схем он просто не адаптируется.
Как мигрировать конфигурацию с CCcam на OScam?
Каждая C: line в CCcam.cfg становится ридером в oscam.server: protocol = cccam, device = host,port, user, password, group = 1. Строки F: становятся аккаунтами в oscam.user. Параметр reshare из CCcam → cccreshare и cccmaxhops в oscam.user. Готовые скрипты конверсии легко найти — для 10–20 строк ручная конвертация занимает 15 минут.
OScam-emu vs обычный OScam — в чём разница?
OScam-emu — форк с встроенной программной эмуляцией для PowerVU, BISS, TandbergS, DRECrypt. Обычный OScam требует физическую карту в ридере или upstream-сервер с картой. Для провайдерских серверов с реальными смарт-картами нужен обычный OScam. OScam-emu актуален для FTA-каналов с программной защитой и специфических setup-ов без физических карт.
Какой минимум железа для OScam-сервера на 50 пользователей?
1 vCPU, 512 MB RAM, 10 GB диск (для логов), стабильный канал 10+ Mbps. На практике — VPS x86_64 с Debian 12 или Ubuntu 22.04. Для 200+ пользователей — 2 vCPU, 1 GB RAM. CCcam на том же сценарии работает на роутере OpenWRT с 64 MB RAM и тянет 20–30 пользователей — это его реальное преимущество на слабом железе.
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.