一种机卡间安全通信的方法及系统的制作方法

文档序号:7918874阅读:193来源:国知局
专利名称:一种机卡间安全通信的方法及系统的制作方法
技术领域
本发明属于数字电视领域,尤其涉及一种机卡间安全通信的方法及系统。
背景技术
在目前数字电视系统或手机电视系统中,机卡(即终端设备和用户卡)分
离是CA系统主要推广模式,采用接收设备与授权卡分离不仅有利于数字电视产 业长期发展,对于运营商和用户来说在选择系统和设备也更加具有灵活性和自 主性,所以采用机卡分离代表数字电视未来绝对发展方向。
无论是基于大卡方式还是基于小卡方式分离,都涉及机卡之间传输一些敏 感数据,所以需要有一种安全措施来保护机卡之间数据传输的安全。如果是大 卡方式,机卡之间需要保护实时传输的节目流;如果是小卡方式,机卡之间需 要保护机卡之间传输的控制字(CW)。
由于目前机卡之间缺乏有效的保护措施,使得目前针对机卡之间通信的攻 击和破解较多,非法用户很容易在机卡之间窃取节目流或CW等敏感数据,然后 将他们实时在网络上共享,使得没有授权的用户也能够方便接收到这些节目, 严重损害运营商的合法利益。

发明内容
本发明的目的在于提供一种机卡间安全通信的方法,旨在解决现有对机 卡间机密数据的传输缺乏有效的保护机制,解决机卡间的通信得不到安全保障 的问题。
本发明的目的是这样实现的
5一种机卡间安全通信的方法,所述方法包括下述步骤
A、 用户卡(终端设备)产生随机数,并使用预存的服务运营商分发的通信 共享密钥(CSK)对所述随机数加密后,发送给终端设备(用户卡);
B、 终端设备(用户卡)使用预存的服务运营商分发的CSK解密获得所述随 机数明文,并将所述随机数明文经散列运算后所得的数据发送给用户卡(终端 设备);
C、 用户卡(终端设备)将所述产生的随机数经散列运算所得值与接收的数 据比较,相同时,则将所述随机数作为机卡之间数据安全传输的通道保护密钥
(CPK),并建立机卡间通信的安全通道,所述安全通道的参数至少包括机卡通 信双方的身份ID、与所述安全通道对应的CPK、通道状态、通道生命周期及通 道建立时间信息,并向终端设备(用户卡)发送通道建立消息,所述消息携带 有所述安全通道的参数信息;
D、 终端设备和用户卡采用所述安全通道传输机密数据,并采用所述CPK 保护机密数据。
所述随机数的个数为1个或多个。
所述随机数的个数为2个。
设所述2个随机数分别为Rl和R2,则
所述步骤A中,用户卡(终端设备)釆用分组密钥算法,以CSK为密钥, 对R1和R2级联后的数据(Rl II R2)加密后,发送给终端设备(用户卡);
所述步骤B中,终端设备(用户卡)采用散列(HASH)算法对解密后获得 的(Rl II R2 )进行散列运算,得RH=H ( Rl II R2 ) -RH1 || RH2,并将其中RH2发 送给用户卡(终端设备);
所述步骤C中,用户卡(终端设备)将采用HASH算法对本地产生的(Rl II R2 ) 运算所得的RH2与接收终端设备(用户卡)发送的RH2进行比较,如果相同, 则将R1作为CPK。
在所述步骤C中,当比较的结果为不相同时,用户卡(终端设备)停止与对方的通信,或者进行下述步骤
用户卡(终端设备)产生注册请求消息,并由终端设备发送给服务运营商,
所述消息包括终端设备和用户卡双方的身份ID信息;
运营商根据所述ID信息对终端设备和用户卡进行验证,并在验证通过后, 产生新的CSK,并分别使用所述终端设备的终端设备密钥(TDK)和所述用户卡 的公钥加密后, 一起发送给所述终端设备;
终端设备使用预存的TDK解密获得所述CSK,并将接收的数据中使用用户 卡的公钥加密的数据部分传送给用户卡,用户卡采用预存的私钥解密获得CSK, 或者,终端设备将接收的数据均传送给用户卡,用户卡采用预存的私钥解密获 得CSK后,将其中使用所述TDK加密的数据部分传送给终端设备,终端设备再 使用预存的TDK解密获得CSK;用户卡(终端设备)返回进行所述步骤A;
所述TDK由所述服务运营商在对终端设备初始化时写入终端设备。 所述方法还包括
终端设备和/或用户卡根据所述安全通道的参数及双方通信的状况对安全 通道实时监控;
当安全通道受到威胁或安全通道生命周期结束时,终端设备和用户卡之间 将重新协商建立新的安全通道,并在建立新的安全通道前停止传输机密数据。
终端设备每次开机时,或者终端设备更换用户卡或用户卡更换终端设备后, 终端设备或用户卡均要进行所述步骤A、 B、 C;用户卡和终端设备中只保存当 前有效的CSK。
本发明的另一目的在于提供一种机卡间安全通信的系统,所述系统包括 随机数生成单元,用于产生1个或多个随机数并输出; 密钥存储单元,用于存储通信共享密钥(CSK)及通道保护密钥(CPK); 数据处理及控制单元,用于控制所述随机数生成单元产生随机数,接收其 产生的随机数并输出,及计算所述1个或多个随机数级联后的散列值并输出,及将接收的散列数据与本地计算的散列数据进行比较,若这两个数据相同,则 设置所述1个随机数或多个随机数中的1个或多个作为CPK,并存入所述密钥 存储单元,及建立通信安全通道,生成包括有所述安全通道的参数信息的安全 通道建立消息并输出,及从接收的安全通道建立消息中获取安全通道的参数信
息,将其中的CPK信息存入所述密钥存储单元;
力口/解密单元,用于根据所述密钥存储单元中的CSK对所述数据处理及控制 单元输出的随机数进行加密后输出,及使用所述CSK对接收的加密过的随机数 数据进行解密后输出给所述数据处理及控制单元;以及
数据收发单元,用于将所述加/解密单元输出的加密后的随机数数据、所述 数据处理及控制单元输出的安全通道建立消息及散列数据发送给通信对方,及 接收通信对方发送的加密过的随机数数据输出给所述加/解密单元,及接收通信 对方发送的安全通道建立消息及散列数据输出给所述数据处理及控制单元;
所述安全通道的参数信息包括机卡通信双方的身份ID、对应的CPK、通道 状态、通道生命周期及通道建立时间。
所述随机数的个数为2个;所述散列运算具体为HASH运算。
本发明的另一目的在于提供一种包含如上所述的机卡间安全通信系统的 终端设备或用户卡。
为两个阶段完成第一阶段机卡通信双方之间相互认证和建立安全通道,第二 阶段是利用安全通道进行密钥等机密数据的传输,从而可以有效地保证机卡之 间通信的安全性。


图1是本发明实施例提供的机卡间安全通信的方法的实现流程图; 图2是本发明实施例提供的机卡间安全通信系统的结构图。
具体实施例方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实 施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅 仅用以解释本发明,并不用于限定本发明。
本发明实施例提供的机卡间安全通信的方法及系统将终端设备与用户卡之
间的安全通信分为两个阶段完成第一阶段机卡通信双方之间相互认证和建立 安全通道,第二阶段是利用安全通道进行密钥等机密数据的传输,从而可以有 效地保证机卡之间通信的安全性。
图1示出了本发明实施例提供的机卡间安全通信的方法的实现流程,以用 户卡先发起安全通道协商为例,详述如下
1、 用户卡产生两个随机数R1和R2。
2、 用户卡采用预存于卡中的通信共享密钥(Communicate Share Key, CSK ) 加密Rl和R2的级联数据,得R, =ECSK ( Rl II R2 )。
3、 用户卡将加密后的数据R,传输给终端设备。
4、 终端设备利用预存于设备中的CSK解密数据R,,获得明文(M II R2 )。
5、 终端设备对(R1 1IR2)进行散列运算,在本发明实施例中,终端设备采 用HASH算法对(Rl II R2 )进行运算,得RH=H ( Rl il R2 ) =RH1 || RH2。
6、 终端设备将散列运算结果回传给用户卡,在本发明实施例中,是将RH2 回传给用户卡。
7、 用户卡处也会计算(Rl II R2)的散列值,并将本地计算所得的散列运算 结果与接收终端设备回传的散列运算结果比较是否相同,在本发明实施例中, 则是比较本地计算的RH2与接收的RH2是否相同。
8、 如果相同,用户卡即可判定其与终端设备的CSK是相同的,也即可判定 该终端设备属于有效和合法的设备,从而,用户卡便可将数据R1作为机卡之间 数据安全传输的通道保护密钥(Channels Protection Key, CPK ),即CPK-R1。
9、 在确定了 CPK后,用户卡便可在机卡间建立安全通道,所述安全通道的参数包括通信双方的身份ID、对应的CPK、通道状态、通道生命周期及通道建 立时间等,用户卡向终端设备发送安全通道建立消息,该消息包括所述安全通 道的参数信息。
在第二阶段中,基于机卡通信双方成功建立的安全通道,终端设备可以向
用户卡请求机密数据(如实时节目流保护密钥(TEK)、下载或点播节目保护密 钥(CEK)等),用户卡也可以主动向终端设备发送机密数据(包括更新TEK 或CEK等)。双方必须是基于建立的安全通道来传输机密数据,并且要使用CPK 保护传输的内容。在安全通道建立后,终端设备和/或用户卡将根据所述安全通 道的参数、通信情况等实时监控安全通道的到期时间、通道状态及通道是否受 到威胁等。
上述第二个阶段的数据通信必须是在第一个阶段完成后才能进行,但不必 在第一阶段结束后立即启动第二个阶段。第一阶段既可以是由用户卡发起,也 可以是由终端设备主动发起,而何时启动第一个阶段则是由终端设备或用户卡 本地策略决定,但要求在以下两种情况下必须重新建立安全通道 一种情况是 双方认为当前安全通道已经受到威胁;另一种情况是当前安全通道生命周期结 束。当前安全通道生命周期结束后新的安全通道未建立之前,可以终止第二阶 段的数据通信。机卡之间在同 一时刻只有一条安全通信通道。
在本发明实施例中,上述R1、 R2均为128bit 二进制随机数,R,为256bit 的密文随机数,RH1、 RH2均为128 bit散列值,RH为256 bit散列值。
在本发明的另一个实施例中,在上述第一阶段中,用于验证双方的CSK是 否相同的随机数个数也可以为1个或2个或更多。当发起方只产生1个随机数 时,则在验证通过后即将该随机数作为CPK;当发起方产生多个随机数时,则 在验证通过后可选择其中的1个或多个作为CPK。
终端设备每次开机时,设备/用户卡都需要用预存的CSK验证用户卡/设备 是否处于有效和合法的状态。如果处于有效、合法状态,便在双方之间协商CPK, 并建立一条安全通道用于内容解密密钥的传输。当更换用户卡或更换终端设备后,也需要重新验证终端设备或用户卡的有效性。用户卡和终端设备中只需要
保存当前有效的CSK, 一旦更换卡或更换设备后,原有的CSK将自动失效。
如果发起方发现对方处于无效状态,则发起方需要向服务运营商重新注册 申请CSK,然后用户卡或终端设备再次验证对方的状态,或者发起方拒绝再与 对方协商。
服务运营商在给用户卡初始化时,服务端系统将为用户卡加载密码算法, 包括用于授权信息解密和保护机卡通信数据传输的分组密码算法(用符号E 表示)、用于保护机卡通信共享密钥CSK分发或用于数字签名的非对称密码算 法(用符号PE表示),以及HASH算法(用符号H表示)。
系统会为每张用户卡产生和分配唯一的TID,并向卡中写入服务端标志SID 和终端标志TID;用户卡则将产生终端非对称密钥对(包括私钥TIKp,.i和公钥 TIKpub),并将TIK一录入服务端系统的数据库。
服务运营商在给终端设备初始化时,服务端系统将为终端设备加载机卡通 信保护使用的分组密码算法以及用于数字媒体解密(扰)用的序列密码算法。 服务端系统将产生终端设备密钥(TDK),并写入到终端设备中。
用户持用户卡和移动终端设备向服务运营商离线或在线申请注册时,服务 端密码系统将向用户卡和终端设备分发机卡通信共享密钥CSK,其中,发给终 端设备的CSK将由服务端系统使用该终端的TDK加密保护后再给该终端设备, 发给用户卡的CSK则由服务端系统使用该用户的公钥(TIKpub)加密保护后再给该 用户。
当终端设备和用户卡在协商建立安全通道的过程中发现双方的CSK不相同 时,以终端设备先发起协商的情形为例,终端设备先获取用户卡的身份ID,再 向服务运营商发送注册请求消息,该消息包括终端设备和用户卡双方的身份ID 信息。服务端系统将根据终端设备和用户卡的身份ID在本地数据库中验证他们 的合法性和有效性,在通过验证后,则产生新的CSK,并分别用该终端的TDK 和该用户的公钥加密后, 一起发送给该终端设备,再由该终端设备将其中经该用户的公钥加密的CSK数据转发给用户卡。终端设备和用户卡分别使用TDK和 私钥解密获得新申请的CSK后,再重新协商建立安全通道。
图2示出了本发明实施例提供的机卡间安全通信系统的结构,所述系统既 可以包含在终端设备中,也可以包含在用户卡中,为了便于说明,仅示出了与 本发明实施例相关的部分,这些部分可以是软件、硬件或软硬件结合的单元。
作为发起方,数据处理及控制单元24控制随机数生成单元25产生1个或 多个随机数,并一方面将所述随机数发送给加/解密单元22,控制加/解密单元 22使用密钥存储单元21中存储的CSK对所述随机数加密后,由数据收发单元 23发送给对方,另一方面,数据处理及控制单元24计算所述1个或多个随机 数级联后的散列值,在本发明实施例中,是计算其HASH值。
数据收发单元23接收对方发送的散列运算后的数据并发送给数据处理及 控制单元24,数据处理及控制单元24则将该数据与本地散列运算所得的数据 进行比较,若两者相同,则将所述随机数生成单元25产生的随机数中的1个或 多个设置为CPK,同时,建立与对方的通信安全通道,并控制数据收发单元23 向对方发送安全通道建立消息,该消息包括通信双方的身份ID、对应的CPK、 通道状态、通道生命周期及通道建立时间等所述安全通道的参数信息。
作为发起方的对方,数据收发单元23接收发起方发送的加密后的随机数数 据,由加/解密单元22使用密钥存储单元21中存储的CSK对所述加密后的随机 数数据进行解密,获得随机数明文,发送给数据处理及控制单元24,数据处理 及控制单元24对该随机数进行散列运算,并控制数据收发单元23将计算所得 的数据发送给发送方,此外,数据处理及控制单元24还从数据收发单元23接 收的安全通道建立消息中获取新建的安全通道的各参数信息,将其中的CPK等 信息存入密钥存储单元21。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发 明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明 的保护范围之内。
权利要求
1、一种机卡间安全通信的方法,其特征在于,所述方法包括下述步骤A、用户卡(终端设备)产生随机数,并使用预存的服务运营商分发的通信共享密钥(CSK)对所述随机数加密后,发送给终端设备(用户卡);B、终端设备(用户卡)使用预存的服务运营商分发的CSK解密获得所述随机数明文,并将所述随机数明文经散列运算后所得的数据发送给用户卡(终端设备);C、用户卡(终端设备)将所述产生的随机数经散列运算所得值与接收的数据比较,相同时,则将所述随机数作为机卡之间数据安全传输的通道保护密钥(CPK),并建立机卡间通信的安全通道,所述安全通道的参数至少包括机卡通信双方的身份ID、与所述安全通道对应的CPK、通道状态、通道生命周期及通道建立时间信息,并向终端设备(用户卡)发送通道建立消息,所述消息携带有所述安全通道的参数信息;D、终端设备和用户卡采用所述安全通道传输机密数据,并采用所述CPK保护机密数据。
2、 如权利要求1所述的机卡间安全通信的方法,其特征在于,所述随机数 的个数为1个或多个。
3、 如权利要求2所述的机卡间安全通信的方法,其特征在于,所述随机数 的个数为2个。
4、 如权利要求3所述的机卡间安全通信的方法,其特征在于,设所述2 个随机数分别为Rl和R2,贝'J:所述步骤A中,用户卡(终端设备)采用分组密钥算法,以CSK为密钥, 对Rl和R2级联后的数据(Rl II R2 )加密后,发送给终端设备(用户卡);所述步骤B中,终端设备(用户卡)采用HASH算法对解密后获得的(Rl II R2 ) 进行散列运算,得RH=H (Rl II R2) =RH1 || RH2,并将RH2发送给用户卡(终端 设备);所述步骤C中,用户卡(终端设备)将采用HASH算法对本地产生的(Rl II R2 ) 运算所得的RH2与接收终端设备(用户卡)发送的RH2进行比较,如果相同, 则将R1作为CPK。
5、 如权利要求1所述的机卡间安全通信的方法,其特征在于,在所述步骤 C中,当比较的结果为不相同时,用户卡(终端设备)停止与对方的通信,或 者进行下述步骤用户卡(终端设备)产生注册请求消息,并由终端设备发送给服务运营商, 所述消息包括终端设备和用户卡双方的身份ID信息;运营商根据所述ID信息对终端设备和用户卡进行验证,并在验证通过后, 产生新的CSK,并分别使用所述终端设备的终端设备密钥(TDK)和所述用户卡 的公钥加密后, 一起发送给所述终端设备;终端设备使用预存的TDK解密获得所述CSK,并将接收的数据中使用用户 卡的公钥加密的数据部分传送给用户卡,用户卡采用预存的私钥解密获得CSK, 或者,终端设备将接收的数据均传送给用户卡,用户卡采用预存的私钥解密获 得CSK后,将其中使用所述TDK加密的数据部分传送给终端设备,终端设备再 使用预存的TDK解密获得CSK;用户卡(终端设备)返回进行所述步骤A;所述TDK由所述服务运营商在对终端设备初始化时写入终端设备。
6、 如权利要求1所述的机卡间安全通信的方法,其特征在于,所述方法还 包括终端设备和/或用户卡根据所述安全通道的参数及双方通信的状况对安全 通道实时监控;当安全通道受到威胁或安全通道生命周期结束时,终端设备和用户卡之间 将重新协商建立新的安全通道,并在建立新的安全通道前停止传输机密数据。
7、 如权利要求1所述的机卡间安全通信的方法,其特征在于,终端设备每 次开机时,或者终端设备更换用户卡或用户卡更换终端设备后,终端设备或用户卡均要进行所述步骤A、 B、 C;用户卡和终端设备中只保存当前有效的CSK。
8、 一种机卡间安全通信的系统,其特征在于,所述系统包括 随机数生成单元,用于产生1个或多个随机数并输出; 密钥存储单元,用于存储通信共享密钥(CSK)及通道保护密钥(CPK); 数据处理及控制单元,用于控制所述随机数生成单元产生随机数,接收其产生的随机数并输出,及计算所述1个或多个随机数级联后的散列运算结果并 输出,及将接收的散列运算结果与本地计算的散列运算结果进行比较,若二者 相同,则设置所述1个随机数或多个随机数中的1个或多个作为CPK,并存入 所述密钥存储单元,及建立通信安全通道,生成包括有所述安全通道的参数信 息的安全通道建立消息并输出,及从接收的安全通道建立消息中获取安全通道 的参数信息,将其中的CPK信息存入所述密钥存储单元;力口/解密单元,用于根据所述密钥存储单元中的CSK对所述数据处理及控制 单元输出的随机数进行加密后输出,及使用所述CSK对接收的加密过的随机数 数据进行解密后输出给所述数据处理及控制单元;以及数据收发单元,用于将所述加/解密单元输出的加密后的随机数数据、所述 数据处理及控制单元输出的安全通道建立消息及散列运算结果发送给通信对 方,及接收通信对方发送的加密过的随机数数据输出给所述加/解密单元,及接 收通信对方发送的安全通道建立消息及散列运算结果输出给所述数据处理及控 制单元;所述安全通道的参数信息包括机卡通信双方的身份ID、对应的CPK、通道 状态、通道生命周期及通道建立时间。
9、 如权利要求8所述的机卡间安全通信的系统,其特征在于,所述随机数 的个数为2个;所述散列运算具体为HASH运算。
10、 一种包含如权利要求8所述的机卡间安全通信系统的终端设备或用户卡。
全文摘要
本发明适用于数字电视领域,提供了一种机卡间安全通信的方法及系统,所述方法将终端设备与用户卡之间的安全通信分为两个阶段完成第一阶段机卡通信双方之间相互认证和建立安全通道,第二阶段是利用安全通道进行密钥等机密数据的传输,从而可以有效地保证机卡之间通信的安全性。
文档编号H04N7/16GK101442656SQ20081014806
公开日2009年5月27日 申请日期2008年12月26日 优先权日2008年12月26日
发明者周明权, 王孙谷, 肖红跃 申请人:成都卫士通信息产业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1