在两个装置之间交换安全数据的方法

文档序号:7856946阅读:115来源:国知局
专利名称:在两个装置之间交换安全数据的方法
技术领域
本发明涉及在两个本地地相互连接的装置之间特别是在一个接收装置与一个安全模块之间的安全数据交换方法。
本发明还涉及为实现本发明的方法而设计的接收装置。
背景技术
当前存在一些安全方法使数据可以在诸如在收费电视领域内一个接收装置与一个安全模块之类的两个装置之间交换。
在公开的国际专利申请No.WO 97/38530中具体揭示了这样一种方法。按照这种方法,接收装置含有一个公开的不对称加密密钥,而安全模块含有相应的秘密的不对称加密密钥。在方法初始化时,也就是说例如在安全模块插入接收装置时,接收装置产生一个随机数A和一个随机密钥Ci。这两个随机元用接收装置的公开密钥加密后以加密形式发送给安全模块。
然后,随机数和随机密钥用秘密密钥解密。
按照一个具体实施例,在安全模块内用秘密密钥解密得到的随机数A用随机密钥Ci加密后传送给接收装置,再在接收装置内用最初产生的同样的随机密钥解密。将这时得到的随机数A′与接收装置所产生的相比较,以核实这个安全模块是否与必须与这个接收装置配合使用的安全模块一致。在使另一个安全模块与这个接收装置配合使用时,这两个随机数A和A′将不会一致,于是就中断通信。如果安全模块和接收装置识别为能互相交换数据,就将随机密钥Ci用作对话密钥,也就是说在给定的对话期期间(例如直到撤走安全模块)用这个随机密钥对在安全模块与接收装置之间以安全形式交换的所有数据加密。
这种实现形式在安全性上存在着一些缺点。实际上,接收装置不同于安全模块,不能认为是一个可靠的部件,因为一个接收装置的公开密钥可以通过技术措施和计算机分析确定。因此,可以将一个接收装置修改成使它产生一个预定密钥而不是一个随机密钥Ci。
在这种情况下,与安全模块通信的验证将用一个预定密钥执行。
这样,这个“随机”密钥Ci就是已知的,消息可以得到解密,特别是在收费电视的情况下,系统例如利用一个诸如互联网之类的网络进行工作必需的数据,特别是“控制字”,可以被解密而被第三方使用。应指出的是,Ci是一个对称密钥。
在Ci已知时,无论是因为它被预先确定还是以其他方式得到,可同时用它对来自接收装置的消息和来自安全模块的消息解密。

发明内容
本发明提出了一种在一个接收装置与一个安全模块之间安全数据传送的过程,使得对未被授权的数据解密特别复杂,从而避免了这个缺点。
这个目的是用一种在两个本地地相互连接的装置之间特别是在一个安全模块与一个接收装置之间的安全数据交换方法来实现的,第一装置包括一对不对称加密密钥中的至少一个第一加密密钥而第二装置包括所述这对不对称加密密钥中的至少一个第二加密密钥,这两个密钥都预先在第一和第二装置内初始化,这种方法包括下列步骤在第一装置内产生至少一个第一随机数;在第二装置内产生至少一个第二随机数;用所述第一加密密钥对所述第一随机数加密;用所述第二加密密钥对所述第二随机数加密;将所述经加密的第一随机数发送给第二装置;将所述经加密的第二随机数发送给第一装置;在所述第二装置内对经加密的第一随机数解密;在所述第一装置内对经加密的第二随机数解密;组合由所述装置中的一个装置产生的而由另一个装置接收的所述随机数,产生一个对话密钥;以及用所述对话密钥对在第一装置与第二装置之间交换的所有或部分数据加密。


从以下结合附图对本发明的各个具体实施例的说明中可以对本发明及其优点有更好的理解,在这些附图中;图1示出了本发明的第一实施例;图2示出了本发明的第二实施例;图3原理性地示出了一种诸如在按照本发明设计的方法中使用的数字结构;以及图4示出了本发明的第三实施例。
具体实施例方式
在这些附图中,安全模块标为10,而接收装置标为11。
安全模块10和接收装置11在说明中都称为装置。如有经验的人员所知,安全模块10可以具体呈现为一个诸如称为“硬件钥匙(dongle)”的连接器的微芯片卡或含有一个芯片的模块。显然,可以设想其他一些实现方式,这并不背离本发明的专利保护范围。安全模块10含有一对不对称密钥中的一个秘密的不对称密钥PAKV。这个密钥可以例如在模块制造时或其他阶段,在数据管理中心或由于在所述管理中心与安全模块之间的安全连接,植入安全模块10。它存储在模块的一个非易失性存储器内。
接收装置11,特别是在收费电视的情况下,通常由一个接到电视接收机上的盒形成。它含有所述这对不对称密钥中的一个公开的不对称密钥PAKB。这个公开密钥与安全模块的秘密密钥匹配。公开密钥通常在制造接收装置时或者在受保护的环境中初始化阶段期间编排。它也可以通过广播远程安全装入。
特别是在收费电视领域内,所希望的是一个接收装置只能与唯一的一个安全模块配合工作。这可以避免装入一个安全模块的属于一个给定属主的权利在属于其他属主的一些接收装置内使用。因此,安全模块与接收装置匹配成只有唯一的一个安全模块与唯一的一个接收装置才能配合工作,反之亦然。这种匹配是通过不对称密钥对实现的,其中的一个密钥装入安全模块而另一个密钥装入接收装置。原则上,这些不对称密钥对是唯一的。然而,实际上,在用户非常多时,可以将同样的密钥对分配若干次,但仍保持权利交换的可能性非常低。可以用一个唯一的辅助对称密钥将这个风险减小到零,如以下结合附图4所作的说明。
在附图1所示的实施例中,本发明的过程以下面的方式进行在两个装置即安全模块10和接收装置11之间发起通信时,安全模块首先产生一个随机数A。这在图1中示为由一个圆圈所围的。这个随机数在安全模块10内用秘密密钥PAKV加密,得到一个经加密的随机数A′(A′=PAKV(A))。它被发送给接收装置11。经加密的随机数A′在接收装置内用公开密钥PAKB解密,从而可以得到初始随机数A。
另一方面,接收装置11产生一个随机数B,在图1中示为由一个圆圈所围的。这个随机数B在接收装置内用公开密钥PAKB加密。因此可以得到一个经加密的随机数B′(B′=PAKB(B)),它被发送给安全模块10。经加密的随机数B′在安全模块内用秘密密钥PAKV解密后,可以得到初始随机数B。
这样,无论是安全模块还是接收装置都配置有安全模块产生的随机数A和接收装置产生的随机数B。在第一实施例中,将这两个随机数组合起来,产生一个要用的新的随机数,作为对话密钥SK。这个组合可以通过将两个数简单拼接(concatenation)、异或操作或任何其他适当组合执行。
因此产生的对话密钥SK用于安全模块与接收装置之间的所有安全通信。
这个实施例为用户提供了显著的安全性,因为要想知道包含在安全模块内的秘密密钥几乎是不可能的。即使有可能在接收装置内强加一个确定的数代替随机数B,但不可能在安全模块内强加一个随机数A。
同样,用复杂的技术手段,可以确定公开密钥PAKB,但不能推导出秘密密钥PAKV。因此,由于每个装置产生一个随机数而这些数用不对称密钥加密,从而防止了通过强加密钥和随机数来伪装这种装置。
在图2所示的实施例中,如图1所示那样,每个装置产生一个随机数。这个随机数用相应密钥加密后以加密形式发送给另一个装置。接收装置11接收到的随机数A这时用接收装置的公开密钥PAKB再次加密后得到一个新的经加密的数A″(A″=PAKB(A)),发送给安全模块10。
在安全模块10内,A″用秘密密钥PAKV解密。如果分别在安全模块10内和在接收装置11内使用的秘密密钥PAKV和公开密钥PAKB匹配,因此得到的数A就与安全模块原来产生的随机数A一致。如结合图2所说明的,这种方法具有一个比较级12,将从对在接收装置11内的加密的数A″解密得到的随机数A与安全模块10产生的随机数A进行比较。如果这两个数不一致,就可以推断安全模块不与接收装置匹配,因此就必须中断通信或数据传送。这可以发生在例如一个安全模块插入不同于与它匹配的接收装置时或者安全模块例如用一个计算机模仿时。
同样,安全模块10接收到的随机数B也用本模块的秘密密钥PAKV加密,得到一个经加密的数B″(B″=PAKV(B))。
B″发送给接收装置11,在接收装置11内用公开密钥PAKB解密。因此,得到一个随机数B,将它与接收装置11原来产生的随机数B进行比较。如前面那样,这两个随机数在比较级12内进行比较。如果这两个随机数不一致,就中断通信。
如果随机数的比较得到一个肯定的结果,也就是说如果安全模块10与接收装置11匹配,就用随机数A和B的一个组合产生一个对话密钥SK。这个对话密钥用于在安全模块与接收装置之间以后的安全通信。
这个实施例有着安全模块10和接收装置11都对加密前后的随机数进行比较的优点。这样,即使第三者窃取了接收装置的公开密钥,也不能用来对安全模块与接收装置之间交换的消息解密。同样,如果一个安全模块用在一个不是预期的接收装置上,数据就不能解密。
在图3所示的方法中,为如前面所说明的随机数,例如如结合图1和2所作的说明中的随机数A,添加了两个各具有一个内建功能的部分b和c。b是一个在安全模块10内产生的随机数。c是一个称为“模式”的固定预置数,存储在安全模块10内和接收装置11内。模式c例如可以由一个由0和1组成的序列形成。
按照第一实施例,将这三个元,即随机数A、随机数b和模式c,一起用秘密密钥PAKV加密。因此得到的一个数A-,为A-=PAKV(A,b,c)。数A-发送给接收装置11,在接收装置11内用公开密钥PAKB解密。如果安全模块10与接收装置11匹配,这解密必然产生三个数A、b和c。由于数c具有一个预置的已知值,接收装置很容易执行对这个值的验证。为此,接收装置将存储在接收装置内的c的值与解密得到的c的值进行比较。如果这两个值不一致,就停止与安全模块的数据交换。
随机数b发回给安全模块10进行验证。因此,首先在接收装置11用公开密钥PAKB对它加密,得到数b″,(b″=PAKB(b))。然后,将数b″发送给安全模块10,在安全模块10内用秘密密钥PAKV解密。将这样解密的数与初始数b相比较,如果这两个数不一致,就中断数据交换。
按照第二实施例,这三个元,即随机数A、随机数b和模式c在安全模块10分别用秘密密钥PAKV加密。
于是得到三个经加密的数。在解密时,如果安全模块与接收装置匹配,就可以得到如前面那样的随机数A和b以及模式c。
对话密钥SK通过按照一个已知规则组合安全模块10产生的随机数A、接收装置产生的随机数B和安全模块产生的可能随机数b和/或模式c形成。
由于无论是安全模块10还是接收装置11都知道所有这些元,因此可以形成对话密钥。
这个实施例就不同角度来看都是有益的。
一方面,它可以用两个装置之间的单向通信执行按模式c的对安全模块10和接收装置11的匹配的第一验证。在这两个装置不匹配时,所希望的是执行尽可能少的数据交换,这是由于验证模式c的内容来实现的。
另一方面,通过回发随机数b,就有可能确保可靠地核实这两个装置之间的匹配而不需要两次发送随机数A。这进一步改善了数据交换的安全性,因为可以使在两个装置之间交换的机密数据最少。
应指出的是,也可以为随机数A只添加一个模式c。对两个装置之间匹配的验证只是在有模式c时执行。同样,也可以只为随机数A添加另一个随机数b而不是模式c,在安全模块10内根据随机数b进行验证。
在图4所示的实施例中,这种方法的前一些步骤以与图2所示的相同的方式进行。随机数A和B分别由安全模块10和接收装置11产生。将它们交换并加以验证,以保证安全模块10与接收装置11得到良好匹配。在这个实施例中,安全模块和接收装置还配置有一个对称密钥PHK13。随机数A和B不是象在图2所示的实施例中那样简单地相互组合而是还与对称密钥13组合以得到一个对话密钥SK。这三个元的组合可以象前面那样通过拼接或任何其他适当的操作完成。按照本发明的一个具体形式,对话密钥SK通过用对称密钥13对两个拼接的数A和B加密形成(SK=PHK(A,B))。
这样做的优点是使未得到授权的对消息的解密更为困难,需要知道所有的密钥才能得到一段有用的信息。因此装置的安全性得到进一步增强。这个实施例还是有益的,因为它相对比较长而且很难产生大量不同的不对称密钥对。为了简化,面对极多的用户,所希望的是将同一密钥对指配给几个安全模块/接收装置对。另一方面,对称密钥是唯一的。所以,在其他一些密钥中使用一个对称密钥,就能保证一个安全模块只是对相应接收装置是可用的。
可以将例如在最初使用装置期间产生的对话密钥存储起来,以后就沿用这个密钥。
然而,为了安全起见,最好是每当开始一个新的对话期时产生一个新的密钥,一个对话期定义为两个装置之间从开始数据交换到结束数据交换的这段时间。为了再进一步提高通信的安全性,甚至可以在同一段对话期期间按照所选的时间间隔(例如等间隔)或按照一个规定的算法改变密钥,例如每两小时改变一次。这样,所有没有授权而可能得到的数据在这个对话密钥的最大有效持续时间后就不再能使用。
按照本发明的一个具体实施例,可以使用一个“灵巧”安全模块或类似的装置,允许测量各种物理参数,特别是诸如线路阻抗或耗电量。每隔一定间隔将这个或这些参数的值与参考值相比较。在得知这些所比较的值之差超过允许限度时,就可以推断存在系统上的数据被未经授权读取的风险。在这种情况下,可以切断接收装置与安全模块之间的全部数据交换,虽然这不是一个优选的解决方案。一个优选的解决方案是向接收装置发送一个请求,请求产生一个新的对话密钥。如果接收装置没有依从,就中断数据交换。这可以得到一个对每个接入机密数据的企图进行监视的动态系统。对物理参数的测量也可以植入接收装置。
如有经验的人员所知,收费电视的接收装置主要包括一个处理单元、一个只读存储器、一个多路分路器、一个解扰器、一个数模变换器、一个外部存储器和一个音像解扰器。在当前的系统内,处理单元、只读存储器和解扰器可以包含在同一个电子芯片内。在现有技术的系统内,公开密钥PAKB通常包含在外部存储器内。外部存储器是可访问的,从而可以读取或修改它的内容,这就可能产生读取未被授权的数据的风险。
为了使这个风险大大减小,公开密钥PAKB和/或对称密钥13可以有益地存储在只读存储器内或者存储在解扰器内。这大大提高了安全性,因为要修改这些密钥中的一个密钥,就必需改变电子芯片,从经济角度来看这不是很有利益的,意味着可能要配置一些仿造的芯片。通信的安全性因此特别得到保障。
应指出的是,在以下的说明中,图4中标为13的密钥描述为对称密钥。然而,也可以用一对不对称密钥代替这个对称密钥。在这种情况下,使用两对不对称密钥。其中一对密钥可以对于一个用户组是公共的,而另一对密钥可以是唯一的。这两对也可以都是唯一的。
在以上对实例的说明中,第一装置与安全模块相应,第二装置与接收装置相应。显然,如果第一装置是接收装置而第二装置是安全模块,按照本发明设计的方法以同样的方式进行操作。
权利要求
1.一种在两个本地地相互连接的装置之间特别是在一个安全模块与一个接收装置之间的数据交换方法,第一装置(10)包括一对不对称密钥中的至少一个第一加密密钥(PAKV)而第二装置(11)包括所述这对不对称密钥中的至少一个第二加密密钥(PAKB),这两个密钥都预先在第一和第二装置内初始化,所述方法包括下列步骤在第一装置(10)内产生至少一个第一随机数(A);在第二装置(11)内产生至少一个第二随机数(B);用所述第一加密密钥(PAKV)对所述第一随机数(A)加密;用所述第二加密密钥(PAKB)对所述第二随机数(B)加密;将所述经加密的第一随机数(A′)发送给第二装置(11);将所述经加密的第二随机数(B′)发送给第一装置(10);在所述第二装置(11)内对经加密的第一随机数(A′)解密;在所述第一装置(10)内对经加密的第二随机数(B′)解密;组合由所述装置(10,11)中的一个装置产生的而由另一个装置接收的所述随机数(A,B),产生一个对话密钥(SK);以及用所述对话密钥(SK)对第一与第二装置(10,11)之间交换的所有或部分数据加密和解密。
2.按照权利要求1所述的数据交换方法,其特征在于所述由第一装置(10)产生的、由第二装置(11)解密的随机数(A)-由所述第二装置(11)用所述第二加密密钥(PAKB)加密,-以一种加密形式发送给所述第一装置(10),-在第一装置(10)内用第一加密密钥(PAKV)解密,以及-与由第一装置(10)产生的所述随机数(A)相比较;以及如果所比较的随机数不一致,就停止数据传送。
3.按照权利要求1所述的数据交换方法,其特征在于所述由第二装置(11)产生的而由第一装置(10)解密的随机数(B)-由所述第一装置(10)用所述第一加密密钥(PAKV)加密,-以一种加密形式发送给所述第二装置(11),-在第二装置(11)内用第二加密密钥(PAKB)解密,以及-与由第二装置(11)产生的所述随机数(B)相比较;以及如果所比较的随机数不一致,就停止数据传送。
4.按照权利要求1所述的数据交换方法,其中所述第一装置(10)和所述第二装置(11)含有一个对称加密密钥(13),所述方法其特征在于将所述随机数(A,B)与所述对称密钥(13)组合在一起,产生一个对话密钥(SK)。
5.按照权利要求1或4所述的数据交换方法,其特征在于所述组合是拼接。
6.按照权利要求1所述的数据交换方法,其特征在于所述对话密钥(SK)按照一个所确定的使用参数的函数被再生。
7.按照权利要求6所述的数据交换方法,其特征在于所述确定的使用参数是使用持续时间。
8.按照权利要求1所述的数据交换方法,其特征在于所述两个装置(10,11)中至少一个装置测量表征通信的至少一个物理参数,诸如线路阻抗和/或耗电量;将测量到的值与参考值相比较;以及在测量到的参数与参考值的差别大于一个门限值时,关注数据交换。
9.按照权利要求8所述的数据交换方法,其特征在于它涉及停止两个装置(10,11)之间的数据交换。
10.按照权利要求6和8所述的数据交换方法,其特征在于所述确定的使用参数是表征通信的物理参数。
11.按照权利要求1所述的数据交换方法,其特征在于所述装置(10,11)中至少一个装置产生至少一个辅助随机数(b);用所述第一加密密钥(PAKV)对所述辅助随机数(b)加密;将所述经加密的辅助随机数发送给第二装置(11);在第二装置(11)内对所发送的经加密的辅助随机数解密;用所述第二加密密钥(PAKB)对经解密的辅助随机数加密;将经加密的辅助随机数发送给第一装置(10);将在第一装置内解密的辅助随机数与在所述第一装置内产生的初始辅助随机数(b)相比较;以及如果比较结果指出两个所比较的数不一致,就中断信息交换。
12.按照权利要求1所述的数据交换方法,其特征在于所述装置(10,11)中至少一个装置确定存储在两个装置(10,11)内的至少一个预先限定的固定数(c);用所述第一加密密钥(PAKV)对所述预先限定的固定数(c)加密;将经加密的预先限定的数发送给第二装置(11);在第二装置(11)内对所发送的经加密的预先限定的固定数解密;将在第二装置内解密的预先限定的固定数与存储在第二装置内的预先限定的固定数相比较;以及如果比较结果指出两个所比较的数不一致,就中断数据交换。
13.按照权利要求11或12所述的数据交换方法,其特征在于对所述数(A,b,c)中每个数分别加密。
14.按照权利要求11或12所述的数据交换方法,其特征在于对所述数(A,b,c)中各个数的组合加密。
15.一种用于执行按照权利要求1至14中的任何一个权利要求所述的方法的接收装置,所述接收装置至少包括一个计算单元、一个只读存储器、一个多路分路器、一个解扰器、一个数模变换器、一个外部存储器和一个音像解扰器,所述接收装置特征在于至少所述计算单元、只读存储器和解扰器包含在同一个电子芯片内;以及所述加密密钥(PAKB,13)中的至少一个加密密钥存储在所述电子芯片内。
16.按照权利要求15所述的接收装置,其特征在于所述数(A,b,c)中至少一个数存储在所述电子芯片内。
全文摘要
本发明提出了一种在两个本地相互连接的装置之间安全数据交换方法。在一个优选实施例中,第一装置(10)是一个含有一对不对称加密密钥中的称为秘密密钥(PAKV)的第一加密密钥的安全模块。第二装置是一个至少包括所述这对不对称加密密钥中的一个称为公开密钥(PAKB)的第二加密密钥的接收装置(11)。此外,每个装置还包括一个对称密钥(13)。第一装置(10)产生一个第一随机数(A),用所述秘密密钥(PAKV)加密后发送给第二装置(11),在第二装置(11)内用公开密钥(PAKB)解密。第二装置(10)产生一个第二随机数(B),用所述公开密钥(PAKB)加密后发送给第一装置(10),在第一装置(10)内用秘密密钥(PAKV)解密。通过组合对称密钥(13)和由每个装置产生和接收的随机数(A,B)产生一个对话密钥(SK),用于安全数据交换。
文档编号H04N7/167GK1659821SQ03813533
公开日2005年8月24日 申请日期2003年6月10日 优先权日2002年6月12日
发明者奥利维尔·布里克, 克里斯托弗·尼古拉斯, 玛可·萨赛利 申请人:纳格拉卡德股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1