背景技术
有条件接收(CA,Conditional Access)系统是开展付费电视、广播服务的核心技术,就是保证合法的用户(称之为授权者)能够接收音、视频节目和数据服务业务,而对于非法用户则无法获取相关信号。
有条件接收经历了两代的发展,第一代的特征是以设备为基础,一般用于模拟系统。为了实现有线电视的有效收费,在前端将模拟信号进行加扰,使普通电视机无法收看,只有安装了解扰器的用户才能正常收看。这样的系统可以通过前端的寻址来控制单个用户的解扰器开关。系统可实现全频段加扰和频道加扰,实现的方法通常是采用视频倒相、水平同步重叠、垂直同步重叠、数字随机视频行抖动等技术,该种方式下通常会对信号产生损耗。
第二代的基本原理是采用加扰控制字(CW,Control Word)加密传输的方法,用户端利用智能卡解密。由于采用的是数字技术,对信号没有损耗,系统的保密性、可靠性均大大提高。对传输流的加扰,有些系统如数字电视广播(DVB,Digital Video Broadcasting)已有标准;对控制字的加密算法一般采用RSA(由Rivest、Shamir、Adleman所提出)以及3DES(数据加密标准,DataEncryption Standard)算法,对加密体制,不同系统差别很大,其技术大体有两种:一种是以Irdeto系统为代表的密码循环体制,另一种是以NDS系统为代表的利用专有算法来进行保护。
在第一代有条件接收系统中,由于系统的密钥体系依赖于设备及解扰器,信号比较容易破解和复制。而第二代,由于加密系统、密钥体系与设备是分开的,依靠智能卡提供加、解密的安全性来保障系统的安全,破解难度有所提高。
在第二代有条件接收系统的密钥体系设计中,不同的终端使用不同的密钥,并且因为不同终端定制的节目各不相同,所以前端需要为每个终端,生成不同的授权控制信息。这样的设计虽然在系统安全性上有所加强,但是付出的代价是授权控制信息随着用户的增加而大幅上升,加重了前端的负载,占用了大量的带宽,降低了系统的效率。这样的密钥体系对于有线电视,带宽充足、用户数量相对较少的有线网络尚且能够适应,但显然,在无线广播系统带宽有限、但潜在用户数量巨大的现实情况下,第二代有条件接收系统的方案是不能满足无线广播系统要求的。
为了满足无线广播系统带宽小,用户多的需求,在第二代有条件接收系统基础上,引入电子钱包的设计,所需费用从终端电子钱包中扣除。电子钱包的状态会根据业务的需要进行调整,因为电子钱包本身安全性的要求,其是一个相对封闭需要特殊设备进行读写管理的模块,同时每个终端均有自己的电子钱包,进行电子钱包管理时,需要逐个对终端的电子钱包进行调整。这导致管理上的不便利,同时不能迅速全面的修改终端的电子钱包,对应业务也就不能及时开展。
发明内容
本发明提供一种远程管理电子钱包状态的方法,用以解决现有广播领域的有条件接收系统的终端电子钱包状态维护不方便,不能迅速全面的进行修改的问题。
本发明提供了一种远程管理电子钱包状态的方法,包括如下步骤:
步骤A:生成对终端电子钱包的管理命令;
步骤B:发送端根据管理命令,按照报文格式组装电子钱包信令,并选择密钥和算法进行加密处理;
步骤C:通过广播信道将电子钱包信令发送到终端;
步骤D:终端解密并解析电子钱包信令,根据信令内容维护电子钱包状态;
较佳的,电子钱包信令由报文头和信令载荷组成;报文头包括加密参数和信令载荷长度,加密参数记录加密时所使用的密钥和/或算法;信令载荷包括信令类型、被管理的电子钱包标识、被管理的对象标识和管理动作,还可以包括用于验证信令合法性的随机数和消息认证码。
较佳的,电子钱包信令包括钱包状态管理信令、增值方式管理信令和钱包密钥管理信令三种信令类型,由信令载荷中的信令类型唯一标识;三种类型的电子钱包信令具有相同的长度。
较佳的,所述电子钱包信令的信令载荷部分是加密的,加密使用的密钥和/或算法由发送端确定,并记录在加密参数中。
较佳的,所述广播信道是指逻辑上的授权管理信息(EMM)通道,是通过发送端的加密授权模块对多个终端的加密授权模块广播发送的可寻址逻辑通道。
较佳的,所述对终端电子钱包的管理命令,包括终端寻址标识、管理命令类型、被管理的电子钱包标识、被管理的对象标识和管理动作;其中,终端寻址标识用于广播信道寻址使用,其它内容用于电子钱包信令的封装。
较佳的,所述步骤B具体包括如下步骤:
解析管理命令的具体内容;
选择密钥和算法,生成随机数,利用密钥和随机数计算消息认证码,根据电子钱包信令载荷报文格式,组装信令载荷;
使用密钥和算法加密信令载荷;
根据报文格式,组装信令报文。
所述步骤D具体包括如下步骤:
解析电子钱包信令的报文头,根据加密参数确定密钥和/或算法,使用密钥和算法解密信令载荷;
解析信令载荷中的被管理电子钱包标识,与自身标识比对,比对错误丢弃该信令;
解析信令载荷中的随机数和消息认证码,利用密钥、随机数和消息认证码进行信令合法性比对,比对错误丢弃该信令;
解析信令载荷中的信令类型、被管理对象标识和管理动作,更新电子钱包状态。
较佳的,所述终端电子钱包状态包括下述状态的任意组合:钱包的消费状态、增值状态、在线圈存增值状态、智能充值卡增值状态、充值码增值状态、EMM充值增值状态以及记录在密钥存储文件中的钱包密钥状态。
较佳的,还包括步骤E:终端的电子钱包在进行数据处理时,需要检查电子钱包对应的状态,根据状态的有效性,决定是否进行该数据处理。
较佳的,所述终端根据所述电子钱包信令的被管理的电子钱包标识来判定该电子钱包信令是否对该终端电子钱包生效。
使用本方法能在广播领域中实现有条件接收系统电子钱包状态的远程管理,解决了现在有条件接收方式下引入电子钱包所带来的管理不便问题,使终端电子钱包的管理更全面更迅速,同时保证了数据的安全性,也便利了根据电子钱包对应业务的状态有效性,开展相应的业务。
具体实施方式
下面结合附图对本发明的具体实施方式进行说明。
本发明提供一种实现远程管理电子钱包状态的方法。
图1示出了远程管理电子钱包状态的方法流程。
步骤101:生成对终端电子钱包的管理命令
管理命令可以是由服务运营支撑系统(BOSS)统一生成并进行传递,也可以是单独生成的一组管理命令,依据管理命令进行电子钱包信令的组装。
管理命令,包括终端寻址标识、管理命令类型、被管理的电子钱包标识、被管理的对象标识和管理动作;其中,终端寻址标识用于广播信道寻址使用,其它内容用于电子钱包信令的封装。
管理命令类型包括三种类型,钱包状态管理信令、增值方式管理信令、和钱包密钥管理信令。
被管理的电子钱包标识:用来判定该管理命令对哪个终端生效。
被管理的对象标识:与命令类型共同决定信令对电子钱包中的哪一个对象进行管理。
管理动作:对被管理的对象进行管理,如使电子钱包的各项状态生效/失效,修改钱包中各种密钥,管理钱包进行充值实现增值方式的生效/失效。
步骤102:发送端根据管理命令,按照报文格式组装电子钱包信令,并选择密钥和/或算法进行加密处理;
电子钱包信令由报文头和信令载荷组成。表1表示了电子钱包信令的具体报文编码格式。
说明 |
长度(字节) |
取值 |
保留 |
2 |
缺省为0xFF FF |
加密参数 |
2 |
第一字节:密钥索引;第二字节:算法标识,取值参见表2。 |
载荷长度 |
1 |
字节数,载荷长度相同,Lc=0×20。 |
信令类型 |
1 |
取值参见表3。 |
数据 |
Lc-1 |
数据格式取值参见各子类型描述。 |
表1电子钱包信令的具体报文编码格式
报文头包括加密参数和信令载荷长度;加密参数分别记录加密时使用的密钥的索引和/或算法的标识,算法可以预先定义,如表2所示,算法标识0X01代表使用DES算法,算法标识0X02代表使用Tri-DES算法,算法标识0X03代表使用AES算法,也可以为其他的算法,只需要在加密参数中表示出即可。当然记录的加密参数也可以根据具体加密的方法作相应的调整,例如用固定的一个密钥和可选择的多个算法,此时加密参数则可以只记录算法标识;同样,也可以用固定的一个算法和可选择的多个密钥,此时加密参数则可以只记录密钥索引;当然,也可以用固定的密钥和算法,但是安全性相对偏低了,还可以用多个密钥和多个算法,只需在加密参数中对应记录即可。
算法标识 |
说明 |
0x00 |
保留 |
0x01 |
DES |
0x02 |
Tri-DES |
0x03 |
AES |
0x04~0xFF |
保留 |
表2算法标识报文编码
信令载荷包括信令类型、被管理的电子钱包标识、被管理的对象标识、管理动作、随机数和消息认证码,具体报文编码格式参见表4。其中信令类型、被管理的电子钱包标识、被管理的对象标识、管理动作(管理动作报文编码参见表5)分别与步骤101中生成的管理命令的管理命令类型、被管理的电子钱包标识、被管理的对象标识和管理动作相对应,相应的信令类型也对应分为三种:钱包状态管理信令、增值方式管理信令和钱包密钥管理信令,由该信令类型唯一标识,具体标识参加表3。较佳的,为保证信令组装发送时的通用性,三种类型的电子钱包信令具有相同的长度,32字节。
三种信令类型分别实现对电子钱包中各种状态的管理。
钱包密钥管理信令,管理指定电子钱包中对应的各种类型的密钥,如:圈存密钥、充值密钥、消费密钥等。被管理的密钥由信令载荷中2字节的管理对象标识唯一确定;其中,高位字节标识密钥类型,低位字节标识密钥索引,反之亦可。
增值方式管理信令,管理指定电子钱包的各种可以实现增值的方式,如:在线圈存、智能充值卡充值、充值码充值、EMM充值等。被管理的增值方式由信令载荷数据中2字节的管理对象标识唯一确定。
钱包状态管理信令,管理指定电子钱包的各种钱包状态,如消费状态、增值状态等。被管理的钱包状态由信令载荷数据中2字节的管理对象标识唯一确定。
子类型取值 |
说明 |
0x00 |
保留 |
0x01 |
钱包密钥管理 |
0x02 |
增值方式管理 |
0x03 |
钱包状态管理 |
0x04~0xFF |
保留 |
表3信令类型标识
载荷数据项 |
长度(字节) |
说明 |
电子钱包标识 |
8 |
被管理的电子钱包标识 |
管理对象标识 |
2 |
被管理的对象标识 |
管理动作 |
1 |
取值参见管理动作表 |
保留 |
12 |
取值为0xFF...FF |
随机数 |
4 |
由发送端产生的4字节随机数 |
MAC |
4 |
与随机数相关的4字节消息验证码 |
表4信令载荷报文编码
管理动作取值 |
说明 |
0x00 |
生效 |
0x01 |
失效 |
0x02~0xFF |
保留 |
表5管理动作报文编码
随机数和消息认证码用来验证此信令的合法性,具体实现方法后面描述。
为保证信令的安全性,电子钱包信令的信令载荷部分是加密的,加密使用的密钥和/或算法由发送端确定,并记录在报文头的加密参数中。电子钱包信令具体报文编码格式如图2所示。
电子钱包信令由报文头和信令载荷组成,其中报文头为明文,信令载荷为密文,报文头包括2字节的加密参数、1字节的载荷长度,另外为后续通讯扩展可以保留2字节,加密参数记录对信令载荷进行加密时所使用的密钥索引和/或算法标识,以方便终端能够依照加密参数解密信令载荷;信令载荷包括1字节的信令类型和31字节的数据,根据数据进行电子钱包的管理,数据内容具体可以包括被管理的电子钱包标识、被管理的对象标识、管理动作,还可以包括用于验证信令合法性的随机数和消息认证码。
下面结合图3详细说明步骤102如何生成电子钱包信令:
301解析管理命令的具体内容,获得信令类型、被管理的电子钱包标识、被管理的对象标识、管理动作;
302选择密钥和算法,生成随机数;
303利用密钥和随机数计算消息认证码;
计算消息认证码时,可以利用二级密钥体系密钥、过程密钥来计算,可以更好的提高安全性,具体为:利用密钥和随机数生成过程密钥,使用过程密钥计算消息认证码;同样的道理,也可以使用一级密钥体系实现,即直接利用密钥和随机数计算消息认证码,只是安全性偏低,这种类似的变通加密方法思想基本一致。
下面介绍一下利用二级密钥体系计算消息认证码:
消息认证码(MAC)由过程密钥SK对表6数据,使用约定的MAC生成算法进行加密,取加密结果的高位4字节作为MAC。
数据 |
长度(字节) |
取值 |
电子钱包标识 |
8 |
- |
管理对象标识 |
2 |
- |
管理动作 |
1 |
- |
Padding |
5 |
0x80 00 00 00 00 |
表6消息认证码计算参数
过程密钥SK的计算:
使用密钥对包括随机数的表7数据,使用约定的过程密钥生成算法,加密生成的16字节的过程密钥SK。
数据 |
长度(字节) |
取值 |
随机数 |
4 |
- |
Padding |
12 |
0x8000...00 |
表7过程密钥SK计算参数
304根据电子钱包信令载荷报文格式,组装信令载荷;
305使用密钥和算法加密信令载荷,根据报文格式,组装信令报文。
组装报文时,需要将加密使用的密钥索引和算法标识记录在报文的加密参数中,计算出信令的长度,记录在报文的信令长度中,并把上述加密得到信令载荷组装到信令中。
步骤103:通过广播信道将电子钱包信令发送到终端;
广播信道是指有条件接收系统中逻辑上的授权管理信息(EMM)通道,是通过发送端的加密授权模块对多个终端的加密授权模块广播发送的可寻址逻辑通道。
步骤104:终端解密并解析电子钱包信令,根据信令内容维护电子钱包状态。
电子钱包的状态主要包括下述状态:钱包的消费状态、增值状态、在线圈存增值状态、智能充值卡增值状态、充值码增值状态、EMM充值增值状态以及记录在密钥存储文件中的钱包密钥状态,这些状态与电子钱包信令中的被管理对象标识对应,均可以通过信令内容进行维护。
终端根据电子钱包信令中被管理的电子钱包标识来判定该电子钱包信令是否对其生效。
结合图4对步骤104进行详细描述,具体为:
401解析电子钱包信令的报文头,根据加密参数确定密钥和/或算法;
402使用密钥和算法解密电子钱包信令载荷;
403解析信令载荷中的被管理电子钱包标识,与自身标识比对,比对错误丢弃该信令;
404解析信令载荷中的随机数和消息认证码,利用密钥、随机数和消息认证码进行信令合法性验证。
验证方法可以有多种,如:按照与发送端对应的过程,利用密钥和随机数计算消息认证码,并与信令载荷中的消息认证码进行比对;或按照与发送端对应的过程,利用密钥和消息认证码计算随机数,并与信令载荷中的随机数进行比对,比对错误丢弃该信令。利用随机数、密钥和消息认证码进行信令合法性验证的方法有多种,在此不一一列举。
需要说明的是步骤403是为了判断接收到的信令是否对该终端的电子钱包生效,步骤404是为了判断接收到的信令是否是合法的,均是为了保证信令对终端电子钱包状态修改的安全性,先进行任何一种判断均可,没有先后之分。
405解析信令载荷中的信令类型、被管理对象标识和管理动作,更新电子钱包状态。
通过上述方法就可以方便的实现远程管理电子钱包状态,方便各项业务的开展和管理。终端的电子钱包在进行各种数据业务处理时,检查电子钱包对应于该数据处理的状态,根据状态的有效性,决定是否执行该数据处理。
本发明提供对电子钱包的远程管理,利用本发明能在广播领域中实现有条件接收系统电子钱包的远程管理,为利用电子钱包开展各项业务提供了便利,方便的解决了现在有条件接收方式下引入电子钱包所带来的管理不便问题,使终端电子钱包的管理更全面更迅速。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。