用于通信系统中的内容加扰的方法和装置的制作方法

文档序号:7679715阅读:436来源:国知局
专利名称:用于通信系统中的内容加扰的方法和装置的制作方法
用于通信系统中的内容加扰的方法和装置
背景技术
为了保护视频/音频内容被未授权的消费,通常在递送过程中或者 在记录过程中使用加密技术对视频/音频内容加扰。数字视频广播 (DVB)标准已规定了对以MPEG-2形式编码的视频/音频传输流分组 进行加扰的通用加扰算法(CSA) 。 DVB通用加扰算法是一种专利算 法并且该算法的细节仍未公开。然而,在通信业界中长期以来认为DVB 通用加扰算法不强大并且应由更强大的基于现代密码技术的加密算法 替换。
美国电缆电信工程师协会(SCTE)已标准化了一种用于在密码块 链接(CBC)模式下使用数据加密标准(DES)对MPEG-2传输流分组 加扰的被称为SCTE-52的方法。然而,SCTE加扰标准未规定如何生 成初始化向量(IV),该初始化向量(IV)是在密码块链接模式下由 DES加密使用的参数。而且,由于在近二十年中许多严格的密码分析 学,该DES加密算法不再是强大的算法。出于此原因,由高级电视系 统委员会(ATSC)开发的通用加扰标准使用具有168比特密钥的密码 增强三倍的DES (cryptographically stronger triple隱DES, TDES)替换 DES。 ATSC通用加扰标准还要求密码块链接模式下的三倍DES的初 始化向量均为零。然而,DES算法和三倍DES算法在安全强度和实现 效率方面均劣于高级加密标准(AES)。鉴于上文,有利的是,开发利 用AES用于对互联网协议(IP)网络上的视频/音频传输流分组加扰的 方法和装置。


图1包括用于说明根据多种实施例的对例如MPEG-2传输流分组 加扰的示图。图2是说明根据多种实施例的示例性加扰相关操作的示图,其中 被称为残余块的分组载荷的最后部分的宽度具有縮小的尺寸。
图3是说明根据多种实施例的用于生成初始化向量(IV)的示例 性方法的示图。
图4包括用于说明根据多种实施例的对例如加扰的MPEG-2传输 流分组解扰的示图。
图5是说明根据多种实施例执行的示例性解扰相关操作的示图, 其中还被称为加扰残余块的最后密文部分的宽度具有縮小的尺寸。
图6是说明根据多种实施例的用于对单端块加扰的示例性方法的示图。
图7是说明根据图6执行的示例性操作的示图。 图8是说明根据多种实施例的用于对单端块解扰的示例性方法的 示图。
图9是说明根据图8执行的示例性操作的示图。 图IO是示例性通信系统的示图。
图11包括图IIA、图IIB、图11C和图11D的组合,是根据多 种实施例的操作通信设备的示例性方法的流程图的示图,所述方法包 括加扰。
图12包括图12A、图12B、图12C和图12D的组合,是根据多 种实施例的操作通信设备的示例性方法的流程图1200的示图,所述方 法包括解扰。
具体实施例方式
多种实施例涉及用于对传输流分组加扰的方法和装置,例如互联 网协议(IP)网络上的MPEG-2传输流分组,。根据多种实施例,密 码块链接(CBC)下的高级加密标准(AES)用于对传输流分组,例如 MPEG-2传输流分组加扰。示例性方法包括计算由AES密码块链接模 式使用的初始化向量(IV)。在某些实施例中,该初始化向量可被设 定为常数或者可编程的随机数。某些实施例涉及一种用于对传输流分 组中的残余块,例如MPEG-2传输流分组中的小于128比特(16字节)的残余块加扰的方法。某些实施例还涉及一种用于对传输流分组中的
单端块,例如MPEG-2传输流分组中的小于128比特(16字节)的单 端块加扰的方法。
将描述根据实施例的对MPEG-2传输流分组的示例性加扰。示例 性加扰方法使用密码块链接模式下的AES对MPEG-2传输流分组加 扰。每个MPEG-2传输流分组具有188字节的固定长度。MPEG-2传输 流分组包括4字节的报头、可变长度的可选适配字段、和至少1字节 的载荷。在该示例性实施例中,传输流分组的载荷被加扰,而报头和 可选适配字段未被加扰。
图1包括用于说明MPEG-2传输流分组102的加扰的示图100。 输入MPEG-2传输流分组102包括报头和适配字段(HAF)部分104 以及载荷部分106。在图1中,Ek框(134、 136、 138、 ...、 140、 142) 表示在加扰密钥K 110的控制下使用AES加密算法的模块。在某些实 施例中,例如,利用输入随时间切换,使用单个Ek模块对应于模块(134、 136、 138、 ...、 140、 142)。框IV 108表示在加扰方法中使用的初始 化向量。还存在对应于载荷106的部分的按位异或运算模块(124、
126..... 128、 130、 132)。在某些实施例中,例如,利用输入随时
间切换,单个异或模块对应于模块(124、 126、 128、 130、 132)。加 扰密钥K 110和初始化向量IV 108均为16字节或128比特宽。为了对 MPEG-2传输流分组加扰,载荷被分为16字节块,最后的块,即残余 块可以具有小于16字节的长度。因此载荷102被分为块(P! 116、 P2 118、 ...、 120),每个块均是16字节块,并且块Pm 122是16或 更少字节的残余块。如果最后的块Pm是16字节,则模块154用于加 扰;然而如果Pm小于16字节,则模块156用于加扰。
模块124使第一载荷块Pi 116与IV 108按位异或,并且Ek模块 134对该结果加密以产生第一密文块d 144。接下来,模块126使第二 载荷块P2 118与第一密文块d 144异或,并且Ek模块136对该结果加密以产生第二密文块C2 146。该运算继续直至生成第(m-l)个密文块 Cm.! 150,其中第(m-l)个载荷块Pw 120与第(m-2)个密文块Cm.2 148异或,并且Ek模块138对该结果加密以产生第(m-l)个密文块 Cm.! 150。
如果最后的载荷块Pm 122的长度具有等于16字节的长度,则通
过与Q^相同的方式生成最后的密文块Qn 152,即C^Ek (Pm与Cm.!
异或)。换言之,模块130使第m个载荷块Pm 122与第(m-l)个密 文块Cm.! 150异或,并且Ek模块140对该结果加密以产生第m个密文 块CJ52。
如果最后的载荷块Pm 122具有小于16字节的由t表示的长度,则 模块133使输入常数H (例如,H=0或者11=十六进制格式的 7884fe536c3588b73c2f604e4813fbel)与密文块Cm.!异或并且在加扰K 的控制下模块142通过Ek对于该异或的结果加密。模块132通过使Pm 122与加密Ek (Q^出H)的t个最低有效比特按位异或,生成密文块 Cm 152。输入常数H可以是例如基于某个输入的预定的数或组。
分组生成模块151利用未加扰的报头和适配字段104的复本重组 表示加扰载荷114的生成的密文块(Q 144、 C2 146、 ...、 Cm.2 148、
150、 Cm 152)以形成加扰的MPEG-2传输流分组112,在发射、 解码和/或其他处理之前,该加扰的MPEG-2传输流分组112可以存储 在例如存储器中。
图2是说明例如由模块156执行的示例性操作的示图200,其中 最后的载荷部分Pm 122的宽度")具有例如小于128比特的縮小的尺 寸。加密模块142的输出是Ek (Cm.^H) 202,其包括最高有效部分 204和最低有效部分206。模块132使载荷部分122与最低有效部分206 按位异或,生成加扰的载荷部分Cm (t个比特宽)152。图3是说明根据多种实施例的用于生成初始化向量(IV)的示例
性方法的示图300。 IV 108可被设定为常数或者可编程的随机数。在图 3中,初始化向量标志(/IV) 312是控制IV生成的一个比特的标志并 且可以在MPEG-2传输或程序流中接收。该标志可以例如基于分组或 程序,随时间改变值。初始化向量标志312被输入到控制开关312的 开关控制模块314。当/IV 312等于0时,IV 108被设定为输入常数304, 例如0。当/IV 312等于1时,模块306的AES加密算法Ek首先在加扰 密钥K110的控制下,对输入常数302,例如O加密。然后,模块308 的AES加密算法Ek在新的密钥Ek (常数302),例如Ek (0)的控制 下对输入常数302,例如O加密,并且将生成的密文指配给IV108。可 以针对每个程序或者针对程序中的每个MPEG-2传输流分组设定标志 位IV。该标志位可以通过信令消息,例如授权控制消息(ECM)或授 权管理消息(EMM)递送到接收设备中的解扰器,或者可以在接收设 备的引导过程中被配置为缺省值(例如,/IV=0)。在某些实施例中, 输入常数302与输入常数304相同。在某些实施例中,输入常数302 可以并且有时不同于输入常数304。应认识到,加密模块308的输出可 以被认为具有第一值,输入常数304具有第二值并且输入常数302具 有第三值。输入常数302、 304可以是例如基于某个输入的预定的值或 组。这些值302、 304可以是相同的或不同的。
图4包括用于说明加扰的MPEG-2传输流分组412的解扰的示图 400。输入的加扰MPEG-2传输流分组412包括报头和适配字段(HAF) 部分404和加扰载荷部分414。在图4中,Dk框(434、 436、 ...、 438、 440)表示在加扰密钥K 410的控制下使用AES解密算法的模块。在某 些实施例中,例如,利用输入随时间切换,单个Dk模块对应于模块(434、 436、 438、 440) 。 Ek框442表示在加扰密钥K 410的控制下使用AES 加密算法的模块。框IV 408表示在解扰方法中使用的初始化向量。还
存在对应于加扰载荷414的部分的按位异或运算模块(424、 426.....
428、 430、 432)。在某些实施例中,例如,利用输入随时间切换,使 用单个异或模块对应于模块(424、 426、 428、 430、 432)。加扰密钥K410和初始化向量IV408均为16字节或128比特宽。为了对MPEG-2 传输流分组解扰,载荷被分为16字节块,最后的块可以具有小于16 字节的长度。因此载荷414被分为块(C!444、 C2 446、…、Cm.! 450), 每个块均是16字节密文块,并且残余块Cm 452是16或更少字节的密 文块。如果最后的块Cm是16字节,则模块454用于解扰;然而如果 Cm小于16字节,则模块456用于解扰。
Dk模块434对第一密文块C! 444解密,并且模块424使该解密的 结果与iv 408按位异或以产生第一明文块P! 416。接下来,Dk模块436 对第二密文块C2 446解密,并且模块426使该解密的结果与Q 444按 位异或以产生第二明文块P2418。该运算继续直至生成第(m-l)个明 文块P^ 420,其中第(m-l)个密文块C^ 450由模块Dk 438解密, 并且模块428使该解密的结果与Cm.2 448按位异或以产生第(m-l)个
明文块Pm.i 420。
如果最后的密文块Cm 452的长度具有等于16字节的长度,则通
过与Pm.i相同的方式生成最后的明文块Pm 422,即Pm等于Dk (Cm)
与Cw异或。换言之,由Dk模块440解密第m个密文块Cm 452,并 且模块430使该解密的结果与第(m-l)个密文块C^ 450按位异或以 产生第m个明文块Pm 422。
如果最后的载荷块Cm 452具有小于16字节的由T表示的长度, 则模块433使输入常数H (例如,H=0或者H-十六进制格式的 7884fe536c3588b73c2f604e4813fbel)与密文块Cn^异或并且在加扰K 的控制下模块442通过Ek对于该异或的结果加密。模块432通过使Cm 452与加密Ek (C^④H)的T个最低有效比特按位异或,生成也具有 长度T的明文块Pm 422。输入常数H可以是例如基于某个输入的预定 的数或组。
分组生成模块407利用未加扰的报头和适配字段404的复本重组表示解扰载荷406的生成的明文块(Pi 416、 P2418、…、P^ 420、 Pm 422)以形成解扰的MPEG-2传输流分组402。报头和适配字段404包 括至少一个报头字段和一个或多个附加的字段。
图5是说明例如由模块456执行的示例性操作的示图500,其中 最后的密文部分(其还被称为加扰载荷部分)Cm452的宽度(t)具有 例如小于128比特的縮小的尺寸。加密模块442的输出是Ek(Cm.^H) 502,其包括最高有效部分504和最低有效部分506。模块432使加扰 载荷部分452与最低有效部分506按位异或,生成明文载荷部分Pm (t 个比特宽)422。
由于可选适配字段的可变长度,MPEG-2传输流分组可以包含小 于16字节的非常小的载荷。在该情形中,该载荷将是第一和最后的块, 被称为单端块。图6是说明根据多种实施例的用于对单端块加扰的示 例性方法。输入MPEG-2传输流分组602包括报头和适配字段(HAF) 部分604以及载荷部分606,该载荷部分606是表示Po的单端块。在 图6中,Ek框608表示在加扰密钥K IIO控制下使用AES加密算法的 模块。框iv 108表示在加扰方法中使用的初始化向量。还存在按位异 或运算模块610。加扰密钥K 110和初始化向量IV 108均为16字节或 128比特宽。"c表示Po的长度,例如Po中的比特数目。模块611使输 入常数H (例如,H=0或者H=十六进制格式的 7884fe536c3588b73c2f604e4813fbel)与初始化向量IV 108异或以产生 加密输入。模块608在密钥110的控制下对输入常数H与IV 108的异 或的值加密。模块610通过使Po 606与加密,即Ek (IV④H)的t个 最低有效比特按位异或,生成密文块Q) 612。比特控制模块609用于 将加密输出的t个最低有效比特选择为异或模块610的输入。分组生成 模块607利用未加扰的报头和适配字段604重组表示加扰载荷606的 生成的密文块Co 612以形成加扰的MPEG-2传输流分组614。尽管在 图6的实施例中,加密输入是异或模块611的输出,但是在其他实施 例中,初始化向量108用作加密输入并且可省略异或模块611。图7是说明根据图6执行的示例性操作的示图700。加密模块608 输出包括最高有效部分704和最低有效部分706的Ek (IV④H)。模块 610使t个比特宽的Ek (IV H)的最低有效部分与也为t个比特宽的 载荷P。 606按位异或。结果是t个比特宽的加扰载荷Cq 612。
图8是说明根据多种实施例的用于对单端块解扰的示例性方法的 示图800。输入的MPEG-2加扰传输流分组814包括报头和适配字段 (HAF)部分804和加扰载荷部分812,该加扰载荷部分812是表示为 Co的单端块。在图8中,Ek框808表示在加扰密钥K410控制下使用 AES加密算法的模块。框IV 408表示在解扰方法中使用的初始化向量。 还存在异或运算模块810。加扰密钥K 410和初始化向量IV 408均为 16字节或128比特宽。t表示Co的长度,例如Q中的比特数目。模块 811使输入常数H (例如,H=0或者H-十六进制格式的 7884fe536c3588b73c2f604e4813fbel)与初始化向量IV 408异或。模块 808在密钥410的控制下对输入常数H与IV 408的异或的值加密。在 该情况中,异或模块811的输出是对加密模块808的加密输入。模块 810通过使Q)812与加密,g卩Ek(IV0H)的t个最低有效比特按位异 或,计算明文块PQ 806。分组生成模块807利用未加扰的报头和适配字 段804的复本重组表示解扰载荷的生成的明文块Po 806以形成解扰的 MPEG-2传输流分组802。未加扰的报头和适配字段804包括至少一个 报头字段和一个或多个附加的字段。尽管在图8的实施例中,对模块 808的加密输入由异或模块811产生,但是在其他实施例中,由模块 408生成的初始化向量用作加密输入并且可省略异或模块811。
图9是说明根据图8执行的示例性操作的示图900。加密模块808 输出包括最高有效部分904和最低有效部分906的Ek (IV①H) 902。 比特控制模块809选择t个比特宽的Ek (IV6H)的最低有效部分并且 模块810使其与宽度也为t个比特的加扰载荷Co 812按位异或。结果 是t个比特宽的解扰载荷Po 806。图10是示例性通信系统的示图1000。例如,示例性通信系统1000
可用于将有线电视信息从内容提供商分送到消费者,并且至少某些通
信信号包括加扰的分组,例如加扰的MPEG-2传输流分组。示例性通
信系统1000包括多个内容提供商(内容提供商1 1002.....内容提供
商n 1004)、前端1006,例如有线电视前端、以及多个内容消费者的 机顶盒(内容消费者l的机顶盒1008、...、内容消费者N的机顶盒1010)。 前端1006经由本地电缆基础设施1012耦合到机顶盒(1008、...、1010)。
前端1006包括经由总线1018耦合在一起的接收机模块1014和本 地电缆分送模块1016。接收机模块1014从内容提供商(1002、...、 1004)
接收信号(1026..... 1028)。例如,内容提供商l 1002可以是卫星
广播内容提供商1,其向接收机模块1014提供下行链路电视节目信号; 内容提供商n 1004可以是地面发射源发射内容提供商2,其经由光纤 链路或微波链路向接收机模块1014提供电视节目信号。本地电缆分送 模块1016与接收机模块1014对接,例如,接收对应于多个频道的电 视节目信息,并且与本地电缆基础设施1012对接。经由基础设施1012, 将模块1016耦合到机顶盒(1008、 1010)。本地电缆分送模块1016 包括加扰/解扰模块1020,例如,用于支持IP网络上的电视信号,即 IPTV。加扰/解扰模块1020确定初始化向量,对待发射的传输流分组 加扰,并且对接收的加扰传输流分组解扰。
每个机顶盒(1008、 1010)分别包括加扰/解扰模块(1022、 1024)。 加扰/解扰模块(1022、 1024)支持IPTV通信,例如,确定初始化向 量,对待发射的传输流分组加扰,并且对接收的加扰传输流分组解扰。
图11包括图IIA、图IIB、图11C和图11D的组合,是根据多 种实施例的操作通信设备的示例性方法的流程图1100的示图。操作开 始于步骤1102,其中通信设备上电并且初始化。操作从开始步骤1102 前进到步骤1104。在步骤1104中,通信设备接收分组,例如待加扰的MPEG-2传输流分组。操作从步骤1104前进到步骤1106。在步骤1106 中,通信设备确定加扰密钥K。操作从步骤1106前进到步骤1108。
在步骤1108中,通信设备确定初始化向量。步骤1108包括子步 骤1110,其中操作前进到初始化向量子程序,例如流程图1130的初始 化向量子程序。
现将描述流程图1130的初始化向量子程序。操作开始于步骤1132 并且前进到步骤1134,其中通信设备获得输入常数。然后,在步骤1136 中,通信设备获得初始化向量(IV)标志位值。在可用于获得初始化 向量标志位值的步骤1136中示出了四个可替换的子步骤(1138、 1140、 1142、 1144)。在子步骤1138中,通信设备通过信令消息,例如接收 的ECM或EMM消息获得该值。在子步骤1140中,通信设备利用缺 省值,例如存储的缺省值。在子步骤1142中,通信设备由对应于节目 的信息确定该值。在子步骤1144中,通信设备由对应于节目中的分组 的信息确定该值。操作从步骤1136前进到步骤1146。在步骤1146中, 作为初始化向量标志位值的功能通信设备沿不同的路径前进。如果IV 标志位=1,则操作从步骤1146前进到步骤1148;然而如果IV标志位 =0,则操作从步骤1146前进到步骤1154。
在步骤1148中,通信设备使用AES加密程序(Ek)在加扰密钥K 的控制下对在步骤1134中获得的输入常数加密以获得Ek(输入常数), Ek (输入常数)将用做新的加扰密钥。然后在步骤1150中,通信设备 使用AES加密算法(Ek)在新的加扰密钥,即由步骤1148获得的新的 加扰密钥的控制下对输入常数加密。接下来,在步骤1152中,通信设 备将初始化向量设定为步骤1150的加密运算的输出。
返回步骤1154,在步骤1154中,通信设备将初始化向量设定为 等于步骤1134的输入常数。操作从步骤1152或步骤1154之一前进到 返回步骤1156。在步骤1156中,初始化向量程序返回关于初始化向量的值并且操作前进以回到主程序,例如回到流程图1100的步骤1108。
操作从步骤1108前进到步骤1112。在步骤1112中,通信设备处 理步骤1104的分组以获得报头和适配字段部分以及载荷部分。接下来, 在步骤1114中,通信设备划分载荷部分以获得包括如下至少之一的分 组部分(i) 一个或多个起始固定尺寸部分,例如128比特部分,和 (ii)剩余部分,所述剩余部分小于所述起始固定尺寸部分。
接下来,在步骤1116中,通信设备确定是否存在至少一个起始固 定尺寸载荷分组部分。如果确定存在至少一个起始固定尺寸载荷分组 部分,则操作从步骤1116前进到步骤1118,其中操作被导向块加扰子 程序;否则,操作从步骤1116前进到步骤1122,其中操作被导向单端 块加扰子程序。
现将描述流程图1180的示例性块加扰子程序。在流程图1180中, 通信设备在步骤1182中开始块加扰子程序并且前进到步骤1184。在步 骤1184中,通信设备执行第一起始固定尺寸载荷分组部分与初始化向 量的按位异或。然后,在步骤1186中,通信设备使用AES加密算法 Ek在加密密钥K的控制下对第一起始固定尺寸载荷分组部分与初始化 向量的按位异或的结果(步骤1184的结果)加密以获得第一起始固定 尺寸加扰载荷部分。
操作从步骤1186前进到步骤1188。在步骤1188中,通信设备确 定是否存在待处理的另一起始固定尺寸载荷部分。如果存在待处理的 另一起始固定尺寸载荷部分,则操作从步骤1188前进到步骤1190;否 则,操作从步骤1188前进到步骤1194。
在步骤1190中,通信设备执行下一起始固定尺寸载荷分组部分与 前一起始固定尺寸加扰部分的按位异或,例如对于步骤1190的第一迭 代,执行P2与C!的按位异或。操作从步骤1190前进到步骤1192。在步骤1192中,通信设备使用AES加密算法Ek在加密密钥K的控制下 对所述下一起始固定尺寸载荷分组部分与前一起始固定尺寸加扰部分 的按位异或的结果(来自步骤1190的结果)进行加密以获得附加的固 定尺寸加扰载荷部分,例如对于步骤1192的第一迭代,获得<32。操作 从步骤1192前进到步骤1188,其中通信设备考虑是否存在另一待处理 的起始固定尺寸载荷部分。
在步骤1194中,通信设备依赖于是否存在来自划分载荷的剩余部 分,沿不同的路径前进。如果存在剩余部分,则操作从步骤1194前进 到步骤1195;否则操作从步骤1194前进到步骤1198。
在步骤1195中,通信设备执行输入常数H与前一起始固定尺寸加 扰部分的按位异或。然后通信设备使用AES加密算法Ek在加密密钥K 的控制下对输入常数H与前一起始固定尺寸加扰载荷部分的异或的结 果(来自步骤1192的结果)进行加密。操作从步骤1195前进到步骤 1196。在步骤1196中,通信设备确定划分载荷的剩余部分的比特尺寸 t。然后在步骤1197中,通信设备执行所述加密结果的t个最低有效比 特与剩余部分的按位异或以获得加扰剩余部分。因此步骤1197执行来 自步骤1195的结果的t个最低有效比特与剩余部分的按位异或以获得 加扰剩余部分。操作从步骤1197前进到步骤1198。
在步骤1198中,如果生成了加扰剩余部分,则通信设备组建生成 的起始固定尺寸加扰载荷部分和加扰剩余部分。接下来,在步骤1199 中,块加扰子程序返回一个或多个加扰载荷块,例如一个加扰固定尺 寸载荷部分,并且有时返回附加的加扰固定尺寸载荷部分,并且有时 返回加扰剩余部分。
现将描述流程图1160的示例性单端块加扰子程序。在流程图1160 中,通信设备在步骤1162中开始单端块加扰子程序并且前进到步骤 1164。在步骤1164中,通信设备执行输入常数H与初始化向量IV的按位异或。然后通信设备使用AES加密算法Ek在加密密钥K的控制 下对输入常数H与初始化向量IV的按位异或的结果进行加密。然后, 在步骤1166中,通信设备确定剩余部分的比特尺寸t,该剩余部分是 载荷部分,例如单端块载荷部分P。。接下来,在步骤1168中,通信设 备执行Ek (IV6H)的t个最低有效比特与载荷部分P。的按位异或运 算以获得加扰块。然后在步骤1170中,操作从返回在步骤1168获得 的加扰块的单端块加扰子程序返回到主程序。
返回步骤1118,操作从步骤1118前进到步骤1120,其中通信设 备自块加扰子程序返回至少一个加扰块。返回步骤1122,操作从步骤 1122前进到步骤1124,其中通信设备自单端块加扰程序返回一个加扰 块。操作从步骤1120或步骤1124前进到步骤1126,其中通信设备将 报头和适配字段部分与获得的加扰块组合以形成加扰分组,例如加扰 的MPEG-2传输流分组。然后,在步骤1128中,通信设备发射加扰分 组,例如加扰的MPEG-2传输流分组。
图12包括图12A、图12B、图12C和图12D的组合,是根据多 种实施例的操作通信设备的示例性方法的流程图1200的示图。操作开 始于步骤1202,其中通信设备上电并且初始化。操作从开始步骤1202 前进到步骤1204。在步骤1204中,通信设备接收分组,例如待解扰的 MPEG-2传输流分组。操作从步骤1204前进到步骤1206。在步骤1206 中,通信设备确定解扰密钥K。操作从步骤1206前进到步骤1208。
在步骤1208中,通信设备确定初始化向量。步骤1208包括子步 骤1210,其中操作前进到初始化向量子程序,例如流程图1230的初始 化向量子程序。
现将描述流程图1230的初始化向量子程序。操作开始于步骤1232 并且前进到步骤1234,其中通信设备获得输入常数。然后,在步骤1236 中,通信设备获得初始化向量(IV)标志位值。在可用于获得初始化向量标志位值的步骤1236中示出了四个可替换的子步骤(1238、 1240、 1242、 1244)。在子步骤1238中,通信设备通过信令消息,例如接收 的ECM或EMM消息获得该值。在子步骤1240中,通信设备利用缺 省值,例如存储的缺省值。在子步骤1242中,通信设备由对应于节目 的信息确定该值。在子步骤1244中,通信设备由对应于节目中的分组 的信息确定该值。操作从步骤1236前进到步骤1246。在步骤1246中, 作为初始化向量标志位值的功能通信设备沿不同的路径前进。如果IV 标志位=1,则操作从步骤1246前进到步骤1248;然而如果IV标志位 0,则操作从步骤1246前进到步骤1254。
在步骤1248中,通信设备使用AES加密程序(Ek)在加扰密钥K 的控制下对在步骤1234中获得的输入常数加密以获得Ek(输入常数), Ek (输入常数)将用做新的加扰密钥。然后在步骤1250中,通信设备 使用AES加密算法(Ek)在新的加扰密钥,即由步骤1248获得的新的 加扰密钥的控制下对输入常数加密。接下来,在步骤1252中,通信设 备将初始化向量设定为步骤1250的加密运算的输出。
返回步骤1254,在步骤1254中,通信设备将初始化向量设定为 等于步骤1234的输入常数。操作从步骤1252或步骤1254之一前进到 返回步骤1256。在步骤1256中,初始化向量子程序返回关于初始化向 量的值并且操作前进以回到主程序,例如回到流程图1200的步骤1208。
操作从步骤1208前进到步骤1212。在步骤1212中,通信设备处 理步骤1204的加扰分组以获得报头和适配字段部分和加扰载荷部分。 接下来,在步骤1214中,通信设备划分加扰载荷部分以获得包括如下 至少之一的分组部分(i) 一个或多个起始固定尺寸加扰部分,例如 128比特部分,和(ii)加扰剩余部分,所述加扰剩余部分小于所述起 始固定尺寸加扰部分。
接下来,在步骤1216中,通信设备确定是否存在至少一个起始固定尺寸加扰载荷分组部分。如果确定存在至少一个起始固定尺寸加扰
载荷分组部分,则操作从步骤1216前进到步骤1218,其中操作被导向 块解扰子程序;否则,操作从步骤1216前进到步骤1222,其中操作被 导向单端块解扰子程序。
现将描述流程图1280的示例性块解扰子程序。在流程图1280中, 通信设备在步骤1282中开始块解扰子程序并且前进到步骤1284。在步 骤1284中,通信设备使用AES解密算法Dk在解扰密钥K的控制下对 第一起始固定尺寸加扰载荷分组部分进行解密。然后,在步骤1286中, 通信设备在解密密钥K的控制下执行第一起始固定尺寸加扰载荷分组 部分的解密结果(来自步骤1284的结果)和初始化向量的按位异或运 算以获得第一载荷分组部分。操作从步骤1286前进到步骤1288。
在步骤1288中,通信设备检查是否存在待处理的另一起始固定尺 寸加扰载荷部分。如果存在待处理的另一起始固定尺寸加扰载荷部分, 则操作从步骤1288前进到步骤1290;否则,操作从步骤1288前进到 步骤1294。
在步骤1290中,通信设备使用AES解密算法Dk在解扰密钥K的 控制下对下一起始固定尺寸加扰载荷分组部分的结果进行解密。然后, 在步骤1292中,通信设备执行所述下一起始固定尺寸加扰载荷分组部 分的解密结果与前一加扰载荷部分的按位异或以获得另一起始尺寸载 荷部分。操作从步骤1292前进到步骤1288,其中通信设备检查是否存 在剩余任何附加的待处理的起始固定尺寸载荷部分。
在步骤1294中,通信设备检查是否存在来自划分的加扰载荷的加 扰剩余部分。如果存在加扰剩余载荷部分,则操作从步骤1294前进到 步骤1295;否则操作从步骤1294前进到步骤1298。在步骤1295中, 通信设备执行输入常数H与前一起始固定尺寸加扰载荷部分的按位异 或。然后通信设备使用AES加密算法Ek对输入常数H与前一起始固定尺寸加扰载荷部分的按位异或进行加密。然后,在步骤1296中,通 信设备确定划分的加扰载荷的剩余部分的比特尺寸t。接下来,在步骤
1297中,通信设备执行所述加密结果的t个最低有效比特与加扰载荷 的剩余部分的按位异或以获得剩余部分。操作从步骤1297前进到步骤 1298。
在步骤1298中,如果生成了剩余部分,则通信设备组建生成的固 定尺寸载荷部分和剩余部分。接下来,在步骤1299中,块解扰程序返 回一个或多个解扰载荷块,例如起始固定尺寸载荷部分,并且有时返 回一个或多个附加的起始固定尺寸载荷部分,并且有时返回剩余载荷 部分。
现将描述流程图1260的示例性单端块解扰子程序。在流程图1260 中,通信设备在步骤1262中开始单端块解扰子程序并且前进到步骤 1264。在步骤1264中,通信设备执行输入常数H与初始化向量IV的 按位异或。然后通信设备使用AES加密算法Ek在加密密钥K的控制 下对输入常数H与初始化向量IV的按位异或进行加密。然后,在步骤 1266中,通信设备确定剩余部分的比特尺寸t,该剩余部分是加扰载荷 部分,例如单端块加扰载荷部分C。。接下来,在步骤1268中,通信设 备执行Ek (IV④H)的t个最低有效比特与加扰载荷部分C。的按位异 或运算以获得解扰块。然后在步骤1270中,操作从返回在步骤1268 的获得的块的单端块解扰子程序返回到主程序。
返回步骤1218,操作从步骤1218前进到步骤1220,其中通信设 备从块解扰程序返回至少一个解扰块。返回步骤1222,操作从步骤1222 前进到步骤1224,其中通信设备从单端块解扰程序返回一个解扰块。 操作从步骤1220或步骤1224前进到步骤1226,其中通信设备将报头 和适配字段与获得的解扰块组合以形成解扰分组,例如IP传输流分组。 操作从步骤1226前进到步骤1204,其中接收待处理和解扰的另一分组。在某些实施例中,使用模块实现多种特征。可以使用软件、硬件 或者软件和硬件的组合实现该模块。可以使用诸如软件的机器可执行 指令实现许多上文描述的方法或方法步骤,所述软件包含在诸如存储 器设备,例如RAM、软盘等的机器可读介质中,用于控制机器,例如 具有或不具有额外的硬件的通用计算机,以在例如一个或多个节点中
实现所有或部分上文描述的方法。因此,除其他事项外,本申请涉及 一种包括机器可执行指令的机器可读介质,用于使机器,例如处理器 和关联的硬件执行上文描述的方法的一个或多个步骤。
在前面的说明书中,参考附图描述了多种优选实施例。然而,显 而易见的是,在不偏离如附属权利要求中阐述的本发明的更广泛的范 围的前提下,可以进行多种修改和改变,并且可以实现额外的实施例。 因此说明书和附图应被视为说明性的而非限制性的。
权利要求
1.一种方法,包括当载荷部分小于预定单位尺寸时处理包括第一部分和所述载荷部分的第一分组,其中所述第一部分包括至少一个报头字段,所述处理包括通过使加密输入经历使用加密密钥执行的加密运算,生成第一组τ个比特;处理第一分组的载荷,当所述载荷部分小于预定单位尺寸时,所述载荷是第二组τ个比特,所述处理包括所述第一组个τ比特与所述第二组个τ比特的按位异或以产生新的载荷,所述第一分组包括第一部分和载荷部分,其中所述第一部分包括至少一个报头字段;以及通过将所述新的载荷附加到包括所述至少一个报头字段的报头来生成第二分组。
2. 如权利要求1所述的方法,其中,所述加密输入是初始化向量。
3. 如权利要求l所述的方法,进一步包括 通过初始化向量与常数的异或,生成所述加密输入; 其中,所述加密输入包括多于T个比特,以及其中,所述加密运算产生多于T个比特;以及其中生成所述第一 组T个比特包括将所述加密运算的输出的T个最低有效比特取为所述第 一组T个比特。
4. 如权利要求3所述的方法,其中,所述载荷包括至少某些MPEG视频内容;以及 通过将所述新的载荷附加到包括所述至少一个报头字段的报头生 成第二分组,包括将所述新的载荷附加到所述第一分组的所述第一部分的复本。
5.如权利要求4所述的方法,其中所述第一分组是MPEG-2传输 流分组并且其中所述第二分组是包括加扰载荷的MPEG-2传输流分组。
6.如权利要求5所述的方法,其中,t是大于或等于1并且小于128的整数;以及 其中,所述加密运算是AES加密运算。
7.如权利要求4所述的方法,其中,所述第一分组是包括加扰载 荷的MPEG-2传输流分组,并且其中所述第二分组是包括解扰载荷的 MPEG-2传输流分组。
8.如权利要求7所述的方法,其中,t是大于或等于1并且小于128的整数;以及 其中,所述加密运算是AES加密运算。
9. 一种装置,所述装置包括加密模块,用于通过使加密输入经历使用加密密钥执行的加密运 算,生成第一组t个比特;异或模块,用于处理包括第一部分并且包括载荷的第一分组的所 述载荷,其中所述第一部分包括至少一个报头字段,所述载荷是第二 组t个比特,所述处理包括所述第一组t个比特与所述第二组t个比特 的按位异或以产生新的载荷;以及分组生成模块,用于通过将所述新的载荷附加到包括所述至少一 个报头字段的报头来生成第二分组。
10.如权利要求9所述的装置,进一步包括异或模块,其通过初始化向量与常数H的异或,生成所述加密输其中,所述加密输入包括多于t个比特, 其中,所述加密模块产生多于t个比特;以及其中,所述装置包括比特控制模块,用于将所述加密运算的输出 的T个最低有效比特取为所述第一组T个比特。
11. 如权利要求10所述的装置,其中,所述载荷包括至少某些MPEG视频内容。
12. 如权利要求ll所述的装置,其中,通过将所述新的载荷附加到包括所述至少一个报头字段的报头来生成第二分组,包括将所述新的载荷附加到所述第一分组的所述第一部分的复本。
13. 如权利要求12所述的装置,其中,T是大于或等于l并且小于128的整数;以及其中,所述加密模块是AES加密模块。
14. 如权利要求12所述的装置,其中,所述第一分组是包括加扰 载荷的MPEG-2传输流分组,并且其中所述第二分组是包括解扰载荷 的MPEG-2传输流分组。
15. —种处理包括第一部分和载荷部分的第一分组的方法,其中 所述第一部分包括至少一个报头字段,所述方法包括通过在至少第一和第二初始化值之间的可控选择生成加密初始化 向量;以及作为所述生成的加密初始化向量的功能对所述载荷部分的至少一 部分执行加密运算。
16. 如权利要求15所述的方法,进一步包括 通过使用生成的加密控制密钥对第三常数执行加密运算来生成所述第一初始化值。
17. 如权利要求16所述的方法,其中,生成所述第一初始化值进一步包括通过在另一加密控制密钥的控制下对所述第三常数执行加密运算 来生成所述生成的加密控制密钥。
18. 如权利要求17所述的方法,其中,在初始化向量标志的控制 下实现所述可控选择。
19. 如权利要求18所述的方法,其中,在MPEG-2传输流中接收所述初始化向量标志。
20. 如权利要求18所述的方法,其中,所述初始化向量标志用于 处理MPEG-2节目流中包括的分组。
21. 如权利要求18所述的方法,其中,所述初始化向量标志基于 每个分组进行更新。
22. 如权利要求17所述的方法,其中,所述第二初始化值是常数。
23. 如权利要求22所述的方法,其中,所述第二初始化值与所述 第三常数相同。
24. 如权利要求17所述的方法,其中,作为所述生成的加密初始 化向量的功能对所述载荷部分的至少一部分执行加密运算,包括将所述载荷划分为划分载荷,其中,所述划分载荷包括第一预定 尺寸部分;使用所述初始化向量作为异或模块的输入,所述异或模块接收所 述第一预定尺寸部分作为输入;以及使所述异或运算的输出经历第一载荷加密运算以生成第一加扰载 荷部分。
25. 如权利要求24所述的方法,其中,所述第一载荷加密运算是 AES加密运算。
26. 如权利要求24所述的方法,其中,所述划分载荷进一步包括第二预定尺寸部分;并且 其中,对所述载荷部分的至少一部分执行加密运算进一步包括 使用所述第一载荷加密运算的输出作为附加的异或模块的输入, 所述附加的异或模块接收所述第二预定尺寸部分作为输入。
27. 如权利要求24所述的方法,其中,所述划分载荷进一步包括具有第一组T个比特的第一剩余部分,其中T小于所述预定部分尺寸,以及其中,对所述载荷部分的至少一部分执行加密运算进一步包括执行所述第一组T个比特与第二组T个比特的按位异或以产生加扰载荷剩余部分。
28. 如权利要求27所述的方法,进一步包括通过将包括至少所述第一加扰载荷部分和所述加扰载荷剩余部分 的加扰载荷附加到所述第一分组部分的复本来生成第二分组。
29. —种处理包括加扰分组载荷的第一分组的方法,所述加扰分 组载荷包括具有第一预定尺寸的第一加扰块和具有小于所述第一预定尺寸的第二尺寸的一个加扰剩余块,所述方法包括使所述第一加扰块经历解密运算以产生第一解密结果; 使用所述第一解密结果执行异或运算以产生第一解扰载荷部分;并且使所述加扰剩余块经历与从加密运算获得的一组比特的异或运算 以产生解扰剩余载荷部分。
30. 如权利要求29所述的方法,进一步包括将所述第一解扰载荷部分和解扰剩余载荷部分与从所述第一分组 获得的报头部分的复本组合以生成包括解扰载荷的第二分组。
31. 如权利要求30所述的方法,其中,所述解密运算是AES解密 运算,并且其中所述加密运算是AES加密运算。
32. 如权利要求31所述的方法,其中,所述第二分组是符合 MPEG-2的传输分组。
33. 如权利要求30所述的方法,进一步包括 执行所述加密运算,所述加密运算包括使用位于所述第一分组中的紧邻所述加扰剩余载荷部分的前面的加扰载荷分组部分与作为加密 输入的常数H的异或运算的结果。
34. —种装置,包括第一解密模块,用于使第一加扰块经历解密运算以产生第一解密 结果,所述第一加扰块来自包括加扰分组载荷的第一分组,所述加扰 分组载荷包括具有第一预定尺寸的第一加扰块和具有小于所述第一预 定尺寸的第二尺寸的一个加扰剩余块;第一异或模块,用于使用所述第一解密结果执行异或运算以产生 第一解扰载荷部分;以及第二异或模块,用于使所述加扰剩余块经历与从加密运算获得的 一组比特的异或运算以产生解扰剩余载荷部分。
35. 如权利要求34所述的装置,进一步包括 分组生成模块,用于将所述第一解扰载荷部分和解扰剩余载荷部分与从所述第一分组获得的报头部分的复本组合以生成包括解扰载荷 的第二分组。
36. 如权利要求35所述的装置,其中,所述解密模块是AES解密模块,并且其中所述加密模块是AES加密模块。
37. 如权利要求36所述的装置,其中,所述第二分组是符合 MPEG-2的传输分组。
38. 如权利要求35所述的装置,进一步包括加密模块,用于执行所述加密运算,所述加密运算包括使用位于 所述第一分组中的紧邻所述加扰剩余载荷部分的前面的加扰载荷分组 部分与作为加密输入的常数H的异或运算的结果。
全文摘要
描述了通信网络中的改进的分组加扰和/或解扰的方法和装置,例如互联网协议网络上的MPEG-2传输流分组的改进的加扰/解扰。在加扰某些传输流分组中利用密码块链接下的高级加密标准(AES)。还描述了用于计算AES使用的初始化向量的方法和装置。该初始化向量可被设定为常数或者可编程随机数。还描述了涉及加扰具有缩小的尺寸的分组载荷,例如MPEG-2传输流分组中的小于128比特的分组载荷的单端块的加扰方法和装置。多种特征可用于机顶盒和前端中的IPTV加扰器并且可以在机顶盒和前端中的IPTV加扰器中实现。
文档编号H04K1/00GK101554004SQ200780039891
公开日2009年10月7日 申请日期2007年10月25日 优先权日2006年10月25日
发明者张木想 申请人:维里逊服务机构有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1