一种机顶盒和智能卡安全通信的方法
技术领域
本发明涉及数字家庭通讯技术,尤其涉及机顶盒和智能卡之间安全通信和密钥交换领域。
背景技术
数字电视条件接收(CA)系统是指用来控制用户对数字电视业务进行接收的系统,即用户只能收看经过授权的数字电视节目。其基本目的是运营商在电视系统中对用户进行授权管理,从而实现数字电视的有偿服务。
现在的数字电视条件接收系统主要是基于欧洲的DVB标准,主要原理是:经过前端加密的数字电视信号里有一对周期变更的密钥,称为控制字(CW)。条件接收系统负责对CW进行加密并安全地传输到数字电视接收端的解密器里,同时授予某些接收端的解密器解密的权限。有权限的解密器解密出CW,然后将其传输到解扰器中,解扰器利用CW解出音视频数据流供播放。现在的条件接收系统接收端采用智能卡,解密算法存放在智能卡中,解密过程是将加密的数据送到智能卡中,智能卡将解密后的CW传到接收端中,再通过接收端的CA模块传到解扰器中。
条件接收系统中有两个引起广泛关注的安全问题:
一:机顶盒和智能卡之间的连接对于攻击是非常脆弱的。如果智能卡将解密出的控制字CW以明文的形式传送给机顶盒,攻击者可以通过监测智能卡与机顶盒之间的通信获得控制字,然后通过网络将控制字发给未授权用户,使得他们能够免费收看节目。
二:互相认证机制的缺乏。这将允许一个伪造的机顶盒(例如带黑客智能卡读卡器的计算机)从智能卡中获得控制字,为盗版提供可能;或者一张伪造的智能卡在机顶盒中使用访问受保护的内容。
在信息安全领域,有一个非对称密钥加密法。非对称密钥加密法是一种使用一对非对称密钥的非对称加密手段。公钥用于加密,私钥用于解密。公钥可以让所有人知道,而私钥却必须保密。想从公钥推导出私钥在计算上是不可行的。拥有公钥的人可以加密信息却不能将其解密,只有拥有对应私钥的人才能解密信息。非对称加密法的算法体系可以修改成数字签名算法,从而应用于数字签名领域。
发明内容
本发明旨在解决条件接收(CA)系统在解密控制字过程中的安全问题,提出一种采用密钥控制的机顶盒和智能卡的安全通信方法。为防止使用仿冒的机顶盒或智能卡的接入,本发明加入了机顶盒和智能卡的相互身份验证机制,为防止机顶盒和智能卡之间的连接被攻击,防止非法用户在终端在解密控制字的解密通信过程中截取控制字,本发明的智能卡和机顶盒之间交换的通信信息都是先经过加密,再进行通信交换,从而保证了信息的安全性。
本发明的相互身份验证过程采用了经过个修改的数字签名算法,将数字签名的算法应用于机顶盒和智能卡的身份验证领域。本发明解密控制字的解密通信过程对通信信息的加密采用修改的非对称加密算法体系,将非对称加密算法应用于机顶盒和智能卡的安全通信领域。本发明的数字签名算法和非对称加密算法使用同一个密钥算法体体系,使得本发明在实施时能使用相同的一对非对称,使用相同的算法装置,从而在实施时更加简单容易。
本发明通过下述技术方案实现:
机顶盒在生产时分配一对非对称密钥,包括公钥和私钥,所述的非对称密的公钥对外公开,私钥保密。
智能卡在生产时分配一对非对称密钥,包括公钥和私钥,所述的非对称密的公钥对外公开,私钥保密。
在使用安装时广播运营商将所述的机顶盒和智能卡进行互相配对,记录对方的公钥。
本发明的技术方案包括以下主要流程:
110机顶盒和智能卡进行身份验证,所述的身份验证采用互相认证机制;身份验证时向对方发送的随机信息,要求对方使用密钥进行数字签名,用用对方公钥和数字签名的结果来验证对方身份;
120步骤101所述的身份验证通过后,机顶盒和智能卡方可进行解密控制字的解密通信过程,解密通信过程必须先采用密钥对息信进行加密后,再发送给对方;
所述的主要流程的110步骤(身份验证)采用互相认证机制。在用户收看节目时,智能卡和机顶盒必须先进行身份互相认证,即机顶盒对智能卡进行身份验证,同时智能卡对机顶盒进行身份验证。所述的身份验证使数字签名的算法来执行,将数字签名的算法应用于机顶盒和智能卡的身份验证领域。身份验证过程通过向对方发送随机信息,要求对方使用密钥进行数字签名,用对方公钥和数字签名的结果来验证对方身份。认证通过后才进行解密控制字的解密通信过程。
所述的身份认证步骤如下:
111机顶盒产生随机信息MB,发送给智能卡;智能卡产生随机信息MA,发送到机顶盒;
112智能卡使用自己的密钥对MB进行数字签名,返回给机顶盒;机顶盒使用自己的密钥对MA进行数字签名,返回给智能卡;
113机顶盒使用智能卡公钥对智能卡返回的数字签名进行验证;智能卡使用机顶盒的公钥对机顶盒返回的数字签名进行验证。
身份认证通过后机顶盒和智能卡才会执行解密控制字的120步骤解密控制字的解密通信过程。解密通信过程必须先采用密钥对息信进行加密后,再发送给对方。解密控制字的解密通信过程对通信信息的加密采用修改过的非对称加密算法,将非对称加密算法应用于机顶盒和智能卡的安全通信领域。解密通信过程,用对方的公钥进行加密,解密时必须用到对应的私钥。
解密控制字的解密通信过程的步骤如下:
121机顶盒从信号源释出前端加密的控制字CW1。
122机顶盒使用智能卡公钥对前端加密控制字CW1再次加密为CW2,然后将CW2发送到智能卡
123智能卡先用私钥从CW2中解密出前端加密控制字CW1。
124智能卡使用(CA)系统的解密算法从前端加密控制字CW1中解密出原始明码控制字CW
125智能卡使用机顶盒的公钥将原始明码控制字CW加密为CW3,再将CW3发送回机顶盒中。
126机顶盒使用私钥从CW3解密出原始明码控制字CW。
127机顶盒的解扰器用CW解扰节目流
所述的身份认证过程使用的数字签名和所述的解密通信过程使用非对称加密都通过非对称密钥执行,其所采用的算法为同一个算法体系。即从一个算法体系扩展修改形成的适用于机顶盒和智能卡之间安全通信领域的,用于相互身份验证的数字签名算法和用于相互安全通信的非对称加密算法。因此,其所使用的非对称密钥可以采用同一对非对称密钥,其运行时可以使用共同的的装置。
通过本发明,可以保证在智能卡与机顶盒之间的控制字信息安全地交换。通过机顶盒和智能卡之间的相互认证机制,可以防止伪造的机顶盒(或智能卡)与合法的智能卡(或机顶盒)进行通信交换密钥,防止非法人员使用非法的机顶盒或智能卡(带有黑客功能)进行破解。同时机顶盒与智能卡的通信信息都经过加密处理,可以有效地防止智能卡和机顶盒间的连接被攻击,即使交换的信息被非法导出也能保证安全,从而保证了控制字交换的安全性。
本发明的身份认证过程的数字签名算法和解密通信过程的非对称加密算法使用同一个钥密算法体系,因而可以使同一对密钥,并且可以使用共同的装置,从而在生产实施时更为方便且节约成本。
本发明使用非对称密钥算法,并且同时为机顶盒和智能卡都分配了密钥以识别,机顶盒和智能卡的密钥无需在生时互通信息,可以分别由不同的生产商进行生产分配,符合机卡分离标准,利于机顶盒和智能卡的批量规模生产。
附图说明
图1:身份验证示意图;
图2:解密通信示意图;
图3:实施例身份验证示意图;
图4:实施例解密通信示意图。
具体实施方式
下面将给出本发明的具体实施例和附图,以便对本发明作进一步的说明。
本实施方式采用ELGamal算法密码体制,ELGamal算法是基于求解离散对数问题的困难性来保证安全的,普遍认为其具有可靠的安全性,而且ELGamal算法有广泛的应用。
本实施方式通过如下技术方案实现:
首先,机顶盒在生产制造时分配一对非对称密钥,包括公钥YA,gA,pA和私钥XA,所述的非对称密的公钥对外公开,私钥保密。
密钥按如下方法产生:
先选定一个足够大的素数pA和GF(pA)上的本原元素gA,再选取定一个随机数作为私钥XA,
计算:
则YA,gA,pA作为公钥对外公布,XA作为私钥保密
智能卡在生产制造时也分配一对非对称密钥,公钥YB,gB,pB对外公布,私钥XB保密
其中:
安装用户端时机顶盒和智能卡配对,机顶盒记录智能卡的公钥YB,gB,pB,智能卡记录机顶盒的公钥YA,gA,pA
210.机顶盒和智能卡在执行解密控制字的解密通信过程之前,必须先进行身份认证。认证通过后才执行行解密控制字的解密通信过程密钥交换通信。身份认证采用互相认证机制,机顶盒对智能卡进行身份验证,同时智能卡对机顶盒进行身份验证。
机顶盒和智能卡的身份验证步骤如下:
211机顶盒产生随机数MB作为随机信息,将MB发送到智能卡中,要求智能卡对其进行数字签名。智能卡产生随机数MA作为随机信息发送到机顶盒中,要求机顶盒对其进行数字签名。
212智能卡对MB进行数字签名,签名方法如下:
智能卡选择随机数kB满足GCD(kB,pB-1)=1
计算SB=[kb -1(MB-XB□KB)]mod(pB-1)
则数字签名为(KB,SB),返回(KB,SB)给机顶盒。
机顶盒对MA进行数字签名:
机顶盒产生随机数kA,满足GCD(kA,pA-1)=1
计算
S
A=[k
A -1(M
A-X
A□K
A)]mod(p
A-1)
则数字签名为:(KA,SA),返回(KA,SA)给智能卡。
213对数字签名进行验证:
机顶盒计算等式两边的值,若值相等则对智能卡验证通过,否则不通过。
智能卡计算等式
两边的值,若值相等则对机顶盒验证通过,否则不通过。
互相验认通过后机顶盒和智能卡才可以进行加密解密通信。
220.身份认证通过后机顶盒和智能卡会执行解密控制字的解密通信过程。机顶盒和智能卡的通信信息都会先使用使用对方的公钥加密进行,再发送给对方。
机顶盒和智能卡的解密控制字的解密通信过程的步骤好下:
221机顶盒从信号源释出前端加密的控制字CW1。
222机顶盒使用随机数x1和智能卡的公钥YB,gB,pB加密CW1得到CW2即(C1,C2),将CW2发送到机顶盒中。
其中加密方法为:
223智能卡收到CW2后使用私钥解密出CW1,解密算法如下:
224智能卡再使用CA系统的解密算法从CW1中解密出原始的控制字CW
225智能卡使用随机数x2和机顶盒的公钥YA,gA,pA加密CW得到CW3即(D1,D2),并将CW3发送机顶盒中。其中:
226机顶盒收到CW
3后,使用自己的私钥进行解密,得到CW。其中解密算法如下:
227机顶盒的解扰器再用CW解扰节目流。
上述实施例是供本领域普通技术人员实现和使用本发明的,本领域的普通技术人员可以在不脱离本发明的发明思想的的情况下,对实施例作出种种变化。因而本发明的保护范围不应受实施例所限,而应该是符合权利要求书提到的分新性特征的最大范围。