一种条件接收系统中对用户跨区进行管理的方法 【技术领域】
本发明涉及利用一种有条件接收系统通过智能卡中的可由运营商编程的GCA(Geographic Card Address地域智能卡寻址)地址并结合修改下级网络中的PSI(Program Service Information)表实现用户跨区管理的方法。
背景技术
在数字电视网络大发展的情况下,如何在一个较大范围内(省级网络中)控制用户的定点收看,防止用户在节目相同收费不同的地市之间随意移动,成为一个困扰有线电视网络公司的难题。
出现这种难题是由我国的特殊国情决定地。在上一级网络公司下传加密的节目到各个地市有线电视网络公司,各个地市有线电视网络公司将转发这些节目而不是解开节目或者重新进入复用器。由于各个地市个人收入水平的不同会产生同一套节目在各地的收视费不同的状况。一些用户会利用这种状况从收视费低的地方购买节目,而到收视费高的地方收看甚至贩卖。这样将严重影响我国现行有线电视网络公司体制下的利益分配的均衡,打乱现有的有线电视网络的格局。因此如何防止的用户异地移动收看电视成为网络公司需要解决的一个重要问题。
传统的加密传输模式如图1所示:首先数字节目以及增值业务的数据通过复用器复用成传输流TS流;条件接收系统EMMG通过HUB连接到复用器的EMMI接口上,条件接收系统ECMG通过HUB连接到复用器的ECMI接口上。复用器中的DVB标准的加扰器产生控制字CW,复用器使用控制字CW对选中的节目(或服务)进行加扰。复用器通过DVB同密标准接口协议与条件接收系统ECMG通讯,把控制字CW传送给ECMG。通过条件接收系统ECMG产生相应的ECM流,并经过复用器的ECMI接口把生成的ECM流注入到传输流TS流中。用户管理系统SMS通过条件接收系统的用户管理系统接口(SMS-I)向条件接收系统的用户授权系统SAS发送授权请求,用户授权系统SAS响应请求产生一个用户授权信息EMM。用户授权系统SAS生成的EMM通过EMM-INJECTOR注入器按照DVB同密标准接口协议把EMM注入到复用器中。复用器把接收到的用户授权信息EMM复用到传输流TS流中。
用户端机顶盒STB中的智能卡在接收到用户授权管理信息EMM后,产生授权。在收看加密节目时,机顶盒需要从PMT表中找到与加密节目对应的ECM_PID。将ECM_PID设入滤波通道,过滤出加密节目所使用的ECM数据。接收到ECM数据后,智能卡中必须有该节目的授权,才能正确地解开用户控制信息ECM中加密了的控制字CW。由于智能卡和用户端机顶盒STB之间的通信是加密的。所以STB在接收到通信的数据,要再次解密才能得到智能卡解出控制字。STB把控制字写入DVB标准的解扰芯片中,就可以还原被加扰的视音频或者数据了。
由于传统方案中EMM和ECM没有特殊的用户的地址的标识,因此在整个运营商的网络中用户的移动时,用户的机顶盒和智能卡接收时在各个地方的接收流程都是一致的,并没有可以控制的有效手段。就会造成一些人会利用这种状况从收视费低的地方购买节目贩卖到收视费高的地方。从而严重影响我国现行有线电视网络公司体制下的利益分配的均衡,打乱现有的有线电视网络的利益格局。
【发明内容】
本发明要解决的技术问题是提出一种条件接收系统中对用户跨区进行管理的方法,即通过条件接收系统定义并生成PSI表中的ca(conditionalaccess)私有数据列表,限制用户随意异地移动。
本发明所述条件接收系统中对用户跨区进行管理的方法,包括如下步骤:
基于条件接收系统,把用户按照所在地市不同而划分成不同的地区分址,条件接收系统向每个用户发送EMM授权设置用户的用户地区分址GCA的值;
在小的地区子网范围,前端系统生成PSI表中的ca私有数据列表的数据,并添加包含ca私有信息;
在收看节目时候,机顶盒上的条件接收系统模块首先接收来自子网络的PSI表的ca私有数据列表的数据,过滤并解析出EMM的pid值;
机顶盒上的条件接收系统模块将ca私有信息中包含的GCA的值与用户智能卡中的用户地区分址GCA的值进行比较,两者一致时,则说明该用户是本地用户,如果有授权,则进行解密并收看节目;否则,说明该用户不是本地用户,不论该用户是否有授权都不能解密并收看节目。
当用户因为搬家或者其他合理的原因,从一个地市移动到另一个地市时可以向运营商请求更换自己的用户地区分址GCA。运营商经验证后,可以重新为该用户发送新的用户地区分址GCA,保证合理移动的用户可以继续在新的城市收看到加密的数字电视节目。
本发明使用条件接收系统设置用户的用户地区分址,并结合在子网络前端生成ca私有数据的PSI(Program Service Information)表。本发明所述方法可以在一个较大范围内(省级网络中)控制用户的收看,防止用户在节目相同收费不同的地市之间移动。
【附图说明】
图1是传统的数字电视解密流程示意图;
图2是本发明所述方法的流程示意图;
图3是GCA的客户地理分区地址数据结构的示意图。
【具体实施方式】
本发明所述方法主要是使用条件接收系统设置用户的用户地区分址,并结合在子网络前端生成ca私有数据的PSI(Program Service Information)表。本发明所述方法的具体原理说明如下:
定义基于条件接收系统的按用户实际地址进行分区编码的格式。即用户地区分址GCA;在一个大的范围例如一个省,制定一个用户地区分址的列表。即把用户按照所在地市不同而划分成不同的地区分址。在相同的地区用户有相同的地区分址编码。
通过条件接收系统按照上述实际地址分区编码的规则,向每个用户发送EMM授权设置用户的用户地区分址GCA的值。
在小的地区子网范围,如地市的网络,前端生成PSI表中的ca私有数据列表的数据,并添加包含ca私有信息。
在收看节目时候,机顶盒上的条件接收系统模块首先接收来自子网络的PSI表,过滤并解析出EMM的pid值;同时处理ca私有信息。
子网络生成并发送的ca私有信息中,所包含的GCA的数值与用户智能卡中的用户地区分址GCA的值一致时,则说明该用户是本地用户如果有授权就可以正常收看节目;否则,说明该用户不是本地用户,不论该用户是否有授权都不能解密并收看节目。
由于用户智能卡中的用户地区分址GCA值是由运营商通过条件接收系统设置的,用户无法通过其他任何方式自行修改。而用户一旦离开自己缴费的地市网络,移动到其他地市,就无法收看节目了。从而实现了控制用户的跨区移动。
本发明所述方法中所述按用户实际地址进行分区编码的格式,实际上就是定义一个客户地理分区地址的数据结构,它是基于智能卡所有者所在的地理位置来划分的(如城市,区县,小区,街道等等)。智能卡中的每个密钥集都有自己的GCA用来指明地理位置。每个客户地理分区地址中有4个字节,供运营商自己按用户的不同的地理位置进行设置。参见图3,包括3byte的地理位置编码和1byte的属性编码,地理位置编码用于精确地表明用户的位置,而属性编码可以把用户区分成不同的类,最大可以达到256个不同的类。
下面表1所示是一个GCA设置的例子:
表1 位 描述例子 1 15个城市0x0→北京0x1→上海0x2→天津0xE→....0xF→所有城市 2 15个区县In case digit 1 is set to 0x1(USA):0x0→海淀区0x1→东城区0x2→西城区0x3→丰台0x4→Central states0xE→....0xF→指定市中所有的区县 3 15个小区0x0→0x1→0xE→.............0xF→指定区县中的所有小区 4 15个街道0x0→0x1→.......0xE→0xF→指定小区中所有街道 位 描述例子 5 15个路0x0→0x1→0x2→0xE→.......0xF→街道中的所有路 6 15个楼 0x0→0x1→0x2→0xE→.......0xF→路中的所有楼
节目供应商可以根据实际情况组合各个数据位,并指定它们所代表的实际地址。比如街道,可以把第3,4位合并使用,这样最大可以表示255个街道。
参见表2,属性编码可以把用户区分成不同的类,最大可以达到255个不同的类。
表2 属性代码 描述 0x00 医生 0x01 老师 0x02 律师 0x03 学生 0x04 ....... 0xFE ....... 0xFF 所有职业
本发明所述方法中定义的客户地理分区地址是由运营商通过用条件接收系统自行定义和修改的。在定义和修改用户智能卡中的客户地理分区地址时,是需要经过安全引擎加密和签名的。用户是无法自己调整设置的客户地理分区地址的。
下面具体说明子网内的PSI信息的生成机制。
在子网络生成ca私有数据的PSI的目的,是将物理上实际是同一个网络的网络环境,根据收费标准的不同,以PSI信息重新划分出若干个子网络,以区分各个网络的收费差别;利用条件接收系统可以鉴别修改后的不同PSI信息的GCA功能,作为校验不同网络区域的依据。
每一个子网内的PSI信息和其指定的GCA编码是完全匹配的,所以即使用户带着智能卡和机顶盒一起移动,由于他所在其它子网络内收到的PSI信息和智能卡的GCA不匹配,这样,将使该机顶盒无法正常还原出加密的数字电视节目。
但是,当合法用户因为各种原因由一个子网络搬到另一个子网络内,就需要运营商使用条件接收系统发送EMM更改该用户的GCA编码,就可以顺利完成合法用户网络迁移的工作,而不必要求用户到营业大厅退回机顶盒和智能卡,即不需要重新购买另外的机顶盒和智能卡,从而减少麻烦。
省级网络公司前端系统和标准的数字电视前端没有任何的区别。在各个地市向下传输到用户家之前,在各个地市的前端系统对从省级网络公司发送来的数字电视的传输流进行修改。主要修改的是PMT(program map table)中的ECM的PID,把这个值改成一个其他的无效值,即切断了加密的数字电视节目与相关的ECM间的联系。用户的机顶盒将无法找到与该加密的数字电视节目对应的ECM_PID。
由于该ECM_PID的正确与否将决定用户的机顶盒能否找到正确的ECM数据,从而可以还原在ECM中包含的加密的控制字。这样也就直接控制用户能否正常收看与该ECM_PID对应的加密数字电视节目了。
为了让本地区的合法用户能正常收看加密的数字电视节目,同时还在修改了ECM_PID的描述子中添入自定义的一个私有数据,将正确的ECM_PID按照RSA算法生成一段数据放入私有数据段中。此算法将和用户的客户地理分区地址相关。
例如:使用条件接收系统ID,为0X4901的条件接收系统使用密钥0X06对节目A加密,在原有传输流中的PMT中,修改节目对应的ECM_PID为0X101条件接收CA描述子,其格式参见表3。
表3 数据名称或作用 数据长度(BIT) 具体数值 描述子标识符 DES_TAG 8 09 描述子长度 DES_LENGTH 8 2 条件接收系统ID CAS_ID 16 4901 保留字段reserved 3 0 ECM_PID 13 101
在地市1的前端,定义该地市的GCA是0X01 ** ** **,调整后条件接收CA描述子的格式参见表4。
表4 数据名称或作用 数据长度(BIT) 具体数值 描述子标识符 DES_TAG 8 09 描述子长度 DES_LENGTH 8 2 条件接收系统ID CAS_ID 16 4901 保留字段reserved 3 0 ECM_PID 13 999(无效的) 使用GCA标志 2 1 GCA的密钥 8 06 有效GCA长度 (使用的GCA长度) 2 1(使用GCA的第一 个字节01作参数) GCA_ECM_PID 32 *01
在地市2的前端,定义该地市的GCA是0X02 ** ** **,调整后条件接收CA描述子的格式参见表5。
表5 数据名称或作用数据长度(BIT) 具体数值 描述子标识符DES_TAG 8 09 描述子长度DES_LENGTH 8 2 条件接收系统ID CAS_ID 16 4901 保留字段reserved 3 0 ECM_PID 13 999 使用GCA标志 2 1 GCA的密钥 8 06 有效GCA长度 (使用的GCA长度) 2 1(使用GCA的第 一个字节02作参 数) GCA_ECM_PID 32 *02
地区1的用户在收到授权接收加密节目A时,需要先从PMT(program maptable)中寻找对应ECM_PID。该用户的机顶盒在收到地区1前端修改后的描述子后,先从智能卡中读出对应密钥集06的GCA的值,并根据描述子私有数据中的GCA_ECM_PID值就可以正确还原出真实的ECM_PID的值。将ECM_PID设入滤波通道,过滤出与加密节目对应的ECM数据。
如果智能卡中已经有该节目的授权,就能正确地解开用户控制信息ECM中加密了的控制字CW。由于智能卡和用户端机顶盒STB之间的通信是加密的。所以STB在接收到通信的数据后,要再次解密才能得到智能卡解出控制字。STB把控制字写入DVB标准的解扰芯片中,就可以还原被加扰的视音频或者数据了。
如果地区2的用户跑到地区1,来接收加密节目A时。需要先从PMT中寻找对应ECM_PID。该用户的机顶盒在收到地区1前端修改后的描述子后,先从条件接收系统的模块中读出对应密钥集06的GCA的值,根据描述子私有数据中的GCA_ECM_PID值,并不能正确还原出真实的ECM_PID的值。这样,将错误的ECM_PID设入滤波通道后,无法过滤出与加密节目对应的ECM数据。也就不能还原被加扰的视音频或者数据了。从而达到了控制用户异地移动的要求。
最后应说明的是:以上实施例仅用以说明而非限制本发明的技术方案,尽管参照上述实施例对本发明进行了详细说明,本领域的普通技术人员应当理解:依然可以对本发明进行修改或者等同替换,而不脱离本发明的精神和范围的任何修改或局部替换,其均应涵盖在本发明的权利要求范围当中。