线性 DVB/IPTV 广播中的内容保护

线性 DVB/IPTV 广播中的内容保护

SimulCrypt 与 BISS 加扰技术:无需 FPGA 的实现原理

引言

在 DVB/IPTV 领域,内容加密通常被称为“加扰”,其作用是限制对付费电视频道和视频服务的访问。

广播运营商(包括卫星、有线电视和 IPTV 服务商)在内容制作与采购方面投入巨大。借助加密技术,他们能够通过销售订阅服务、控制访问权限来实现内容变现。这种技术手段相当于构筑起一道屏障:若无解密密钥,未经授权的信号复制和分发行为变得毫无意义。

如今,加密技术不仅用于 OTT 服务,也广泛用于线性电视广播(DVB 和 IPTV)。在 OTT 领域,内容保护由 Widevine、FairPlay、PlayReady 等数字版权管理 (DRM) 系统负责。这些系统与传统广播中的条件接收系统 (CAS) 功能相同,但内容分发方式略有差异,因此不在本文的讨论范围内。

DVB 和 IPTV 广播主要采用两种内容保护技术:同密 (SimulCrypt) 和基本互操作加扰系统 (BISS)。


SimulCrypt:灵活性与可扩展性兼具

SimulCrypt 是 ETSI TS 103 197 技术规范定义的一种机制,允许同一频道使用一种或多种 CAS。在该机制中,加密密钥动态更新,CAS 负责管理访问权限并向合法订阅用户分发密钥。

SimulCrypt 需要一套先进的基础设施,包含 CAS 服务器、授权控制信息/授权管理信息 (ECM/EMM) 生成模块以及复用器集成组件。它能为广播运营商提供高度可靠性与灵活性:运营商可组合不同的 CAS,并根据具体的业务目标定制系统。
 

BISS:面向专业场景的简易解决方案

BISS 是一种更简单的轻量化解决方案,常用于临时频道或业务专用频道。其最基础的版本 BISS-1 采用静态密钥,在整个广播期间保持不变。这一设计简化了部署过程——只需在收发两端手动输入密钥即可,便于电视台或承包商之间的信号传输,也适用于直播场景。

然而,一旦密钥泄露,保护机制便会失效。因为 BISS-1 本质上是一种“共享密钥”系统,所有参与方均知晓密钥。该方案仅能防止无意的非法观看,无法抵御蓄意攻击。

虽然存在支持动态密钥更新的 BISS-CA 模式,但并未得到广泛应用,因此在实际场景中,“BISS”几乎均指代简化版的 BISS-1。
 

SimulCrypt 与 BISS 的共存

在现代网络中,这两种方案常并行使用:

SimulCrypt 用于保障广播和最终用户订阅的安全;BISS 则用于临时频道和业务专用频道,这类场景的核心需求是快速简易的部署。

有时,BISS-1 也被用于“保护”面向最终用户的内容,但由于其静态密钥最终难免泄露,该方案的可靠性极低。

加扰的主要目的是防止内容被未经授权观看和分发。但需注意的是,加扰无法防范前端站点的内容篡改行为。若篡改发生在未加密信号进入扰码器之前,篡改后的内容会被正常加密并传输给订阅用户。若篡改发生在信号进入加扰器之后,但信号仍以未加密形式存在,也大概率会成功,因为这类信号进入用户接收端时已完成解密。
 

SimulCrypt 的工作原理

SimulCrypt 架构包含三个核心组件——扰码器、复用器和 CAS,三者紧密协作。

图 1 - DVB SimulCrypt 架构 
(源自 ETSI TS 103 197 标准)


系统核心组件(参见图 1)

蓝色模块代表条件接收 (CA) 系统的组件:

  • ACG(接收标准生成器):判定哪些用户有权观看内容
  • EMMG(授权管理消息生成器):生成包含用户访问权限的授权管理消息
  • ECMG(授权控制消息生成器):生成包含解密密钥(控制字 (CW))的授权控制消息
  • PDG(专用数据生成器):生成业务数据(可选模块)
  • PDG、CPSIG、CSIG:为 PSI/SI(节目特定信息/业务信息)生成额外的 CA 系统业务信息

黄色模块代表复用器和扰码器的组件:

  • MUXCONFIG:控制复用器 (MUX) 设置,但实际场景中极少部署
  • PSIG(节目特定信息生成器):生成标准 PSI 表格(如 PAT/PMT)
  • SIG(业务信息生成器):生成 SI 表格(如 SDT/EIT)
  • SCG(加扰控制组):定义哪些节目使用哪些密钥加密,以此控制加密流程
  • CWG(控制字生成器):生成加密密钥(控制字)
  • MUX(复用器):将所有流(视频、音频、PSI/SI、ECM、EMM)合并为统一的 MPEG-TS 传输流
  • 扰码器:使用 CW 密钥对传输流进行加密(加扰)

CAS 通常包含 ECMG 和 EMMG 服务器,负责密钥生成与分发,以及机顶盒 (STB) 控制。知名 CAS 厂商包括 Verimatrix、Irdeto 和 Secure TV。
需要注意的是,不同厂商的 CAS 实现方式存在差异,并非都支持规范中描述的全部功能。

扰码器可作为独立程序或硬件模块部署。尽管不同厂商、不同 CAS 的扰码器的实现方式差异显著,但均会加密 TS 数据包负载,并在 TS 包头的传输加扰控制 (TSC) 字段中设置相应的标识位,告知解码器此数据包已加密,需使用解密密钥才能播放。若用户尝试在无密钥的情况下播放该流,将看到“黑屏”或失真画面。在某些实现方式中,扰码器还负责按照特定规则(SimulCrypt 协议)与 CAS 进行通信,从 CAS 获取密钥并修改 PSI/SI 表格。这种情况下,复用器可能完全不参与这一过程。

复用器通常会与扰码器集成,将从 CAS 接收的 ECM/EMM 插入传输流,并修改 PSI/SI 表格——例如,当存在 EMM 时添加 CAT 表格,在 PMT 中为 ECM、EMM 和 CAT 创建新的 PID。
在加密的 DVB 流中,ECM 始终存在,而是否包含 EMM 则视情况而定。在 IPTV 中,更常见的做法是通过独立的双向 IP 信道(带外)将 EMM 按需下发至机顶盒,因此主媒体流仅传输 ECM。
 

加密算法及其可靠性

DVB 和 IPTV 主要使用以下加密算法:DVB-CSA1、DVB-CSA2、DVB-CSA3、CISSA (AES)。这些算法的密钥长度不同,因此计算复杂度和加密强度也存在差异。使用 DVB-CSA 系列算法需获得授权,这是选择方案时需考虑的因素。下表对上述算法进行了对比:

加密算法

密钥长度(比特)

加密强度

计算复杂度

建议用途

DVB-CSA1

48 (+16)*

仅用于兼容现有的老旧机顶盒

DVB-CSA2

64

建议用于新系统

DVB-CSA3

128

AES

128

* 实际密钥长度为 48 比特,因为 64 比特中仅 48 比特具有唯一性。从 0 开始计数,密钥的第 3 和第 7 字节为前 3 个字节的模 2 校验和。

在实际应用中,DVB-CSA2 被认为在安全性和性能之间取得了理想的平衡。DVB-CSA1 已过时,不建议使用。有报道称该算法已被破解,其唯一合理用途是支持存量的老旧用户终端设备。DVB-CSA3 计算复杂度过高,却未带来实质性优势;AES 在线性广播中的应用则仅限于 IPTV 系统。


Elecard 扰码器的特性

如前所述,不同厂商的扰码器实现方式各异。Elecard 的解决方案除具备标准加扰功能外,还提供了适用于实际场景的额外功能:

  • 选择性加密:例如,仅对 16 个 TS 数据包中的 1 个进行加密。该模式可大幅降低加密和解密的计算量,这对于兼容算力较低的老旧机顶盒尤为重要,同时在无密钥解码时会造成画质显著下降,从而达到保护效果。

F图 2:选择性加密

  • 灵活的流选择:仅加密音频或仅加密视频。
  • ECMG 连接丢失应对机制:支持备用方案;若未配置备用 ECMG 或备用不可用,可设定应对操作,如继续使用上次的密钥加密,或暂时暂停保护。
  • EMM 代理:支持建立单个 TCP 连接至 EMMG,再通过本地网络组播 EMM。扰码器既可直接通过 TCP 从 EMMG 接收 EMM,也可通过组播接收。这一设计能减少 EMMG 连接数,此类连接通常受授权数量限制。

图 3:EMM 代理


性能表现与 FPGA 的替代方案

Elecard CodecWorks 解决方案完全基于软件实现,无需专用硬件。
现场可编程门阵列 (FPGA) 虽具备高速、高能效的优势,但依赖专用驱动程序,因此限制了平台和操作系统的选择。此外,FPGA 需在服务器中安装物理模块,而模块的生产和供货会增加物流复杂度,降低部署的灵活性。
相比之下,Elecard 的纯软件扰码器可在任意 x86 服务器(包括虚拟机)上运行,并可通过常规软件补丁完成更新。这无疑是一项显著优势:更新软件远比更换硬件设备甚至重刷固件更简便、成本更低。 

为在无硬件加速器的情况下实现高性能,该方案采用 SIMD (AVX2) 向量指令,可同时对多个数据执行同类型操作。如需了解更多细节,可参考我们的文章:

我们使用的 x86 指令集扩展 AVX2,在 Intel Haswell(2013 年起)和 AMD Zen(2017 年起)架构的 CPU 上也受支持。
在不支持 AVX2 的老旧 CPU 上,扰码器仍可运行,但性能会有所下降。

下图为同一文件在启用和禁用优化后的加密耗时对比:

图 4:AVC 文件加密耗时

或将性能换算为每个 CPU 核心的 Mbps

图 5:UDP AVC

在实际应用中,要对 20 路 MPTS(每路平均码率 100 Mbps)进行完整加扰,一台配置普通的服务器即可满足需求(基于 Intel Xeon Silver 4316 CPU,2.3 GHz,20 核/40 线程):

图 6:Intel 服务器 CPU 配置

也可选择基于 AMD CPU 的系统(可支持 64 路 MPTS,每路平均码率 100 Mbps):

图 7:AMD 服务器 CPU 配置

 

Evaluate CodecWorks

 

如有任何问题,欢迎发送邮件至: sales@elecard.com


shmakov作者

Dmitriy Shmakov 是 Elecard 首席工程师,自 2021 年起从事视频分析相关工作,负责为 Telstra、Globo、Amagi、Innet 等 Elecard 的大客户提供技术支持。


 

2025年10月28日