保护和识别消息的保密设备和方法

文档序号:7731073阅读:380来源:国知局
专利名称:保护和识别消息的保密设备和方法
技术领域
本发明涉及在网络上对消息的保密保护和识别,以及相应的设备。
背景技术
为了在不安全的网络上对消息流进行保密,特别是通过无线电广播、电缆或因特网网络所获得的消息流,传统上使用编码密钥(enciphering key),也称作加密密钥(encryption key)。通常,消息的发送机装备有这种编码密钥,而接收机装备有相应的标识密钥。根据预期的应用,密钥可以是专用的或公共的。例如,发送者使用密钥对,其中,他将能够对消息进行编码的公共密钥广播出去,而保留他自己的专用解码密钥。
对消息的加密具有两类主要的应用-消息验证,对此,以签名的形式将编码的结果并入到消息中;则标识密钥可以是解码密钥或编码密钥;-消息加密,为此,以编码的结果替代部分被编码的消息;则标识密钥是解码密钥。
在这两类应用中,可取的是,最小化第三方截获和欺骗性地解码消息的风险,或者通过欺骗性地附加签名进行伪造的风险。因而,为了使未经授权的编码或解码的可能性更为复杂,已经提出了几种系统。
从而,对技术进行了研究,以便能够对相应的编码和标识密钥进行常规的修改。这些技术中的一些依赖于在通信网络上发送新的标识密钥,但使其难以识别这些密钥(例如,通过对密钥进行加密等),尤其在这些密钥是专用密钥时。但是,除非已经采取了预防措施,否则,这些技术易于受到对所发送的密钥的截获,而且其使用易于受到攻击。此外,对新密钥的每次发送,都需要接收机对密钥进行识别和安装,这样对于密钥的有效性可能是有害的。
参考文献EP-0,506,637描述了一种对蜂窝式无线电通信网络的移动台进行确认和验证的系统。此系统在网络和移动台中均包括固定密钥和被称为滚动密钥(rolling key)的可修改密钥。这些密钥被用作验证算法的输入和对网络所产生的响应的比较,以及在每个移动台中能够指出欺骗行为。作为二者相同的历史验证信息的函数,每当进行双向验证时,在网络和移动台中同时更新滚动密钥。
这样,可以增强交换的保密性,由于定期地对密钥进行修改,而并不需要通过网络。但是,这种系统的缺点在于,每当进行双向验证时,需要计算新的滚动密钥。此外,异步问题可能会引起技术误操作,从而可能会导致验证的不能使用。为了克服此问题,必须内建特定的机制,从而使系统更为复杂,而且冒着降低验证可靠性的风险。
专利US-6,105,133公开了一种对发送/接收站进行验证和加密的双向系统。通过验证和加密,以及通过使用每当在这些站之间进行连接时就进行修改的编码密钥,安全地保护了任意两个站之间的交换。根据另一个站的标识符、以固定方式记录在两个站中的参数和从一个站到另一个站进行通信的改变数值,在每个站中独立地计算此密钥。
此技术通过允许对编码密钥进行频繁的修改、避免此密钥在网络上传送以及确保了发送和接收站中密钥更新的同步,增强了系统的可靠性。但是,在每次更新时,需要在发送机和接收机中计算新的密钥。这些计算所需的时间将对接收到消息之后要快速执行的操作造成损害。具体地,当要进行解密和/或验证的消息后面跟随着其处理需要知道在先的消息的其他消息时,而且当在先的消息和在后的消息之间的时间间隔不足以获得这种知识时,这些时间将引起误操作。
专利US-5,301,233公开了一种发送和接收个性化程序的方法。每个程序均由加密了的元素组成,而且针对每个元素,包含预期接收机的标识符。只授权预期接收机访问相应的元素。访问控制消息允许接收机重构用于对预期元素进行加密的控制字。具体地,此消息包含“服务密钥标识符”以及可选地包含利用识别出的服务密钥而获得的签名。
未详细说明的密钥标识技术依赖于一组密钥产生信息,在密钥标识符中包含有这组信息,例如,对于八个字节的签名,密钥标识符占用了三个字节(col.5,I.42-52)。
专利US-5,222,137涉及对加密无线电发射的加密密钥的动态选择。在操作期间,具有密钥标识符和相应密钥的无线电装置与其他相同的无线电装置进行通信。其发射和接收包括了未加密的密钥标识符的加密信号。在每次发射之前,发送无线电装置自动选择一个密钥标识符,并使用相应的加密密钥对要发射的消息进行加密。接收无线电装置通过接收到的密钥标识符确定所使用的加密密钥,并利用该加密密钥对消息进行解密。这样,由于此方法通过修改每次发送时所使用的密钥,能够确保对内容的动态保护,增强了保密级别。
但是,其需要足够的操作容量和存储器空间来处理所接收到的每条消息。 尤其是对于将服务发送到独立的接收机的情况下,这种状况可能会引起延迟,甚至触发可能会导致信息丢失的存储器擦除机制。

发明内容
本发明涉及一种保密设备,用于保护要在网络上发送的消息,并且依赖于可修改编码密钥的使用,所述保密设备能够修改此密钥,而不需要通过网络进行传输,对消息的发送机和接收机中的密钥更新进行同步,以及非常快速地进行密钥的改变,同时也能够避免延迟或不利的存储器空间需求。
此外,可以按照较为经济的方式实现本发明的设备,而不需要调用高级算法来更新密钥。
本发明也涉及一种用于识别通过网络接收到的消息的设备,能够获得上述优势。
本发明还应用于一种消息发送机,所述消息发送机包括一个或多个按照本发明的保密设备;一种消息接收机,所述消息接收机包括一个或多个按照本发明的识别设备;以及一种计算机程序产品、一种消息和相应的保密和识别方法。
在下面,采用了以下命名-“验证”,涉及确保通过网络传输的消息的原始性和完整性的过程,依赖于包含在消息中、在发送消息前通过密钥所产生的数字签名的使用,-“加密”,以照原样不能利用的难以理解的文字替代明文的过程,-“解密”,以明文替换密文的过程,通过将密文还原成初始形式获得,-“编码”,从消息或部分消息中确定密文的过程,此密文或者用作明文的替代(加密),或者用作签名(验证),-“解码”,从密文至少部分重构明文的过程,或者证明包含文本的消息的原始性和完整性(验证),或者以明文代替密文(解密),-“保密”,为了验证或加密的目的,对消息或部分消息进行编码的过程,-“标识”,利用在消息中接收到的密文识别此消息的过程,或者通过其原始性和完整性(验证),或者通过其内容(解密);本发明大体上应用于使用电子签名/验证和/或使用加密/解密的保密方法。其依赖于对发送时的编码密钥和接收时的编码密钥和/或解码密钥的使用,解码密钥应用于解密,而解码密钥和/或编码密钥应用于验证。
本发明应用的一个有利领域是数字电视,特别是用于广播视听数据、PSI(程序特定信息)、SI(服务信息)、交互数据、信令数据或专用数据的数字电视。具体地,某些数字广播网络和具有返回频道的某些网络,尤其是陆地或微波频率网络易于受到侵犯,尤其是欺骗。侵犯可能在于,截获数据、修改数据以及将修改后的数据广播或注入到网络中。特别有用的应用涉及电子商务和家庭银行(homebanking)。
为此目的,本发明的主题是一种保密设备,用于保护想要在网络上向包括控制装置的至少一个接收机发送的消息,所述控制装置通过可修改的当前标识密钥,对消息的识别进行控制。所述保密设备包括-控制单元,通过可修改的当前编码密钥,对每个消息的至少一部分的编码进行控制,-改变单元,用于改变当前的编码密钥,被设计为从可用编码密钥的预定集合中选择此密钥,-以及记录单元,用于在消息中记录密钥标识符,使接收机能够从与可用编码密钥的预定集合相对应的可用标识密钥的预定集合中选择当前标识密钥,此密钥标识符使接收机能够以当前标识密钥对应于当前编码密钥的方式修改当前标识密钥。
按照本发明,所述保密设备包括控制装置,控制将通过当前编码密钥对每个消息进行编码的结果而组成的签名加到这部分消息上,而且所述消息是服务通知消息。
措辞“服务通知消息”应当被理解为意味着在服务的框架内上行发送的消息,给出了与此服务的一个或多个其他消息的顺序发送相关的信息和指令。这些其他消息是内容的承载(“内容消息”)或者立即触发指令的承载(“触发”)。在实施例的有利形式中,服务通知消息包括SAP格式(表示会话通知协议)的头和SDP格式(表示会话描述协议)的净荷。
ATVEF规范(也就是说根据 )在服务通知消息中设置了可选出现的验证字段。
如上所述,措辞“标识”密钥指定了分别与所述保密设备所使用的编码密钥相关联的解码或编码密钥。对于解密,标识密钥的集合是解码密钥的结合,每个解码密钥具有与用于加密的相应编码密钥相同的长度。
对于验证,此集合由分别根据传输上相应的编码密钥而产生的解码密钥、编码密钥或两类密钥的组合构成。于是,由接收机所使用的每个标识密钥,尤其是编码密钥最好具有实质上比保密设备用于产生签名的相应编码密钥小的长度。具体地,不需要完全解密或重构签名部分一致就足以确信消息的真实性。从而,简化了验证操作,而且对于由编码密钥组成的标识密钥,通过并不向接收机广播用在发送上的完整编码密钥,降低了欺骗性地产生签名的风险。
简单标识符的发送就足以在接收机中以准瞬时的方式精确地获得想要的标识密钥。通过分别在发送端和接收端事先记录可用密钥的两个相应集合以及对这些密钥的索引获得此结果。但是,出乎意料的是,与现有技术参考文献US-5,222,137中相同,对所发送的信息的保护并不依赖于对内容消息的加密以及在相同的发送/接收系统(无线电装置)中同一集合密钥的出现。本发明的保密设备实际上实现了在可以是完全不对称的发送和接收设备之间,应用于服务通知消息的验证方法。
由于用在交互电视领域中的格式,尤其是针对ATVEF和MHP(多媒体家庭平台)的格式,并不支持在服务通知消息中并入能够计算通知消息的签名的密钥标识符的可能性,本发明的设备是更加难以想象的。这样,在ATVEF的示例中,正在进行的关于会话通知协议的RFC(草案)文件RFC2974规定可以通过计算通知消息上的签名来签署服务通知消息,而不需要任何与其验证相关的信息。
MHP标准规定了验证应用程序和广播数据的方式以及保护传送到返回信道上的数据的方式。但是,其并未提供任何对信令消息的验证,而信令消息实现服务通知消息的功能。
因而,本发明的设备从根本上与关于本主题的已有知识背道而驰。
此解决方案能够在服务失效时,避免在接收机级毫无必要地允许所通知的服务的消息、内容消息型消息或触发型消息。这样,使接收机更小,削减了对操作和存储器空间的过度消耗,而并不危及系统的可靠性和保密性。
此外,对内容消息的加密提供了额外的可能性,在特定的情况下,可能证明是需要的,而在大多数情况下并不是不可或缺的。在不出现这种加密的情况下,不仅相对于未经授权的服务(未验证服务通知消息),而且相对于已证实服务,避免了处理成本和存储器空间成本。
本发明的设备授权在发布任何消息或给定类型的任何消息时改变密钥。在指示密钥的第一种形式中,密钥标识符与可能形成密钥修改主题的任何消息相邻。于是,根据此标识符,系统地选择接收侧与此指示符相对应的密钥,并用于标识。在指示密钥的第二种形式中,利用密钥修改二进制指示符实现密钥标识符。在接收时,则将当前的标识密钥保存在存储器中,直到密钥改变指示符发出改变密钥的信号为止。在标识密钥的第三种形式中,只在实际改变密钥的情况下指定密钥标识符。否则,以缺省值(例如0)代替密钥标识符,发出先前所使用的密钥仍然有效的信号。此第三种经济形式在向总在接听消息并未漏掉任何消息的一组接收机发送消息的情况下是有利的。尤其可以应用在网络上的组播中。
在考虑到改变的频率和所执行的密钥选择时,可以按照多种方式确定密钥标识符。这样,在第一种形式的改变中,当发送侧的用户请求时,改变密钥标识符,这样,用户就可以确定变化和所选择的新密钥的出现。在第二种形式的改变中,按照用户所选择的周期,周期性地修改密钥标识符,并且随机得出新的标识符。在第三种形式的改变中,在随机选择、但以位于最小持续时间和最大持续时间之间的持续时间所间隔的时刻,按照预定的数值序列,修改标识符。在第二和第三种形式的改变中,用户最好采用能够以任何方式、在任何时刻修改当前密钥的系统。
传输侧和接收侧的密钥可以是专用的或公共的。优选地,传输侧的密钥是专用的,从而保证发送方的身份,而接收侧的密钥最好是公共的。此外,在使用服务的顺序内容消息的加密的辅助保密的情况下,接收侧针对此加密的密钥最好是专用的,从而保证消息的机密性。
优选地,编码控制单元调用其中存储了可用编码密钥的编码库。
可用标识密钥的预定集合最好是解码密钥的集合。
此外,优选地,要编码的部分消息由完全减去了签名的消息组成,包括密钥标识符。这样,验证不仅涉及发送方的身份和消息的净荷,而且更为一般地涉及包含在消息中的所有信息,包括涉及标识密钥的选择,和涉及接收机级的任意操作参数。
在实施例的优选形式中,本发明的保密设备能够对消息进行加密,最好将此功能应用于跟随在已验证的服务通知消息之后的内容消息。于是,有利的是,按照与用于验证服务通知消息的模式相类似的模式对加密密钥进行标识。优选地,要加密的每个消息都包括头和净荷,编码控制单元被设计为控制-对要通过当前的加密密钥进行加密的部分消息的编码,此部分至少包括部分净荷,-以及通过加密信息对这部分消息的替换,所述加密信息由通过当前的加密密钥对此部分进行编码的结果构成。
在这种形式的实施例的变形中,以如下方式产生对跟随在已验证的服务通知消息之后的、要加密的服务消息的二级编码-利用从可用密钥的第一集合中选择的当前加密密钥加密,-然后,利用从可用密钥的第二集合中选择的当前验证密钥签名,针对验证的编码最好应用于减去了签名的整个消息,包括已加密部分。
按照应用的一种优选形式,至少从ATVEF通知消息和/或系统通知消息中选择服务通知消息。
服务的每个ATVEF通知消息后面跟随着至少一个HTTP(按照超文本传送协议方法)内容消息,然后跟随一个或多个服务触发。通常为专用和组播的服务系统通知消息后面跟随着服务的二进制文件。后一个通知消息最好具有与ATVEF通知消息的形式相类似的形式。在2000年10月23日递交的No.00402921.1及其PCT递交号EP/01/12333的欧洲专利申请中可以找到涉及除ATVEF通知消息之外的其他服务通知消息的使用的详细描述。
对于具有可变长度的验证字段的每个服务通知消息,记录单元最好被设计为记录验证字段中的密钥标识符。由于其能够非常灵活地应用已经设置在服务通知消息中的字段,而不必增加特定字段,此实施例的优点在于其简单性。
在除了ATVEF和系统通知消息之外的优选形式的应用中,至少从MHP信令消息中选择服务通知消息。
按照识别密钥的第一模式,每个密钥标识符与可用编码密钥中确定的一个相关联,而且与可用标识密钥中与此编码密钥相对应的确定的一个相关联。
因而,通过所选择的密钥标识符,以一对一的方式给出了要用在接收侧的密钥。此实施例在保证消息的原始性和完整性上能够快速地获得成功。
按照识别密钥的第二模式,每个密钥标识符与可用编码密钥的集合中确定的编码密钥块相关联,而且与可用标识密钥的集合中分别与编码密钥相对应的确定的标识密钥块相关联。
因而,所选择的密钥标识符不能使接收机立即知道要使用的标识密钥。其不得不连续地测试预期块中的多个密钥,直到找到合适的那个为止。因此,这种模式的实施例以增加验证或解密的复杂性和持续时间为代价,提供了防止侵犯的额外保护。
优选地,记录单元被设计为从位于8和12之间,最好等于10的多个数值(可能对应于密钥或密钥块)中选择密钥标识符。在确保了增强保密性的其他实施例中,数值的这个数目等于256(在一个字节上对标识符编码)或者甚至为65536(在两个字节上编码)。
此外,最好可以更新发送侧和接收侧的密钥。例如,标识密钥的集合被设置为通过接收机到服务器的连接、接收机的标识和通过网络对标识密钥表的安全恢复进行远程修改。
本发明也应用于一种消息的发送机。按照本发明,所述发送机至少包括依照本发明的实施例的任一模式的一个保密设备,此发送机最好被设计为通过广播发送消息。
措辞“广播”表示向一组目的地发送相同的数据,尤其是通过无线电广播、电缆或因特网来进行。
本发明也涉及一种用于识别通过网络接收到的消息的设备,每个消息均包括通过可修改的当前编码密钥编码了的部分。所述识别设备包括-控制单元,通过可修改的当前标识密钥,对已编码的部分的识别进行控制,-以及提取单元,用于从此消息中提取出密钥标识符,使其能够以当前标识密钥对应于当前编码密钥的方式,从与可用编码密钥的预定集合相对应的可用标识密钥的预定集合中选择当前标识密钥,按照本发明,所述标识控制单元是对已编码的部分的验证进行控制的单元,所述已编码的部分是当前签名,而且所述消息是系统通知消息。
用于识别消息的所述设备最好能够识别通过依照本发明的保密设备的实施例的模式之一的保密性地进行保护的消息。
本发明也应用于一种消息的接收机。按照本发明,此接收机至少包括一个依照本发明实施例的模式之一的识别设备。此外,此接收机最好被设计为接收来自依照本发明的消息发送机的消息。
本发明的目的也是一种计算机程序产品。按照本发明,此产品包括依照本发明实施例的模式之一,实现用于保护消息的保密设备的单元或者用于识别消息的设备的单元的功能性。
措辞“计算机程序产品”应当被理解为意味着计算机程序介质,不仅可以由盘或磁带等包含有程序的存储空间组成,而且可以由电或光信号等信号组成。
本发明还涉及一种要在网络上向至少一个接收机发送的消息。所述消息包括-通过各自至少一个可修改的当前编码密钥编码了的至少一部分,-以及至少一个密钥标识符,分别使其能够从可用标识密钥的预定集合中选择当前标识密钥,当前标识密钥分别能够识别已编码的部分。
按照本发明,所述已编码的部分是签名,而所述消息是服务通知消息。
最好通过用于保护消息的保密设备获得此消息,而且此消息最好被提供给依照本发明实施例的模式之一的用于识别消息的设备。
本发明的另一方面是一种用于保护要在网络上向至少一个接收机发送的消息的保密方法,所述至少一个接收机包括了通过可修改的当前标识密钥对识别进行控制的装置。所述保密方法包括-选择步骤,从可用编码密钥的至少一个预定集合中选择当前编码密钥,使其能够对每个消息的至少一部分进行编码,-记录步骤,在此消息中记录密钥标识符,使接收机能够从与可用编码密钥的预定集合相对应的可用标识密钥的预定集合中选择当前标识密钥,此密钥标识符使接收机能够以当前标识密钥对应于当前编码密钥的方式修改当前标识密钥,-以及编码步骤,通过当前编码密钥,对要编码的部分消息进行编码。
按照本发明,所述编码步骤在于,产生此部分的签名,以及所述消息是服务通知消息。
最好通过依照本发明实施例的模式之一的用于保护消息的保密设备实现此用于保护消息的保密方法。
本发明还涉及一种用于识别通过网络接收到的消息的方法,每个消息均包括通过可修改的当前编码密钥编码了的部分。所述识别方法包括-提取步骤,从此消息中提取出密钥标识符,通过所述密钥标识符,从可用标识密钥的预定集合中选择当前标识密钥,所述当前标识密钥对应于当前编码密钥,-以及识别步骤,通过当前标识密钥,识别已编码的部分。
按照本发明,所述已编码的部分是签名,而所述消息是服务通知消息。
最好通过依照本发明实施例的模式之一的用于识别消息的设备实现此用于识别消息的方法。


参照附图,通过以下绝非限制的示例性实施例和实现方式,将更好地理解和描述本发明,其中图1是本发明消息发送机和接收机的原理图,实现了选择密钥第一种形式;图2详细地示出了图1所示发送机实施例的第一模式,可用于验证;图3示出了由图2所示的发送机发送的、包含验证字段的ATVEF服务通知消息的内容;图4详细地示出了图3所示的验证字段的内容;图5示出了由图2所示的发送机所产生的消息的中间版本的内容,装入了验证字段;图6示出了无线电广播型广播装置的集合,由中央服务器控制,包括了图2所示的发送机;图7详细地示出了图1所示接收机实施例的第一模式,与图2所示的发送机相结合,可用于ATVEF服务消息的验证,但尤其可用于系统服务消息的验证和描述;图8详细地示出了图1所示发送机实施例的第二模式,可用于组合的加密和验证;图9示出了由图8所示的发送机发送的、包含验证字段和加密字段的ATVEF服务通知消息的内容;图10示意性地示出了实现选择密钥的第二种形式的签名库,具有密钥块,用作图1所示的发送机的变形;图11示意性地示出了与图10所示的库相对应的具有密钥块的验证库,用作图1所示的接收机的变形;图12示出了由图2所示的发送机发送的、包含验证字段的ATVEF服务通知消息的变形的内容;以及图13详细地示出了图12所示的验证字段的内容。
附图被认为是构成公开的整体所需要的部分。
在附图中,以相同的参考符号表示相同或相似的元素。此外,所描述和示出的功能性实体并不需要对应于系统物理上分立的实体,例如,可以由同一软件或同一部件的电路的功能组成。
在图3到图5、图9、图12和图13中,所表示的数字以比特为单位给出了所示出的消息中的字段分布。此外,后缀A和C用于指定验证实体,后缀B用于指定加密实体,而后缀A′用于指定加密之后的验证实体。
具体实施例方式
发送和接收部件包括(图1)通过网络5向一个或多个接收机2发送MSG消息的一个或多个发送机1。在以下详细描述的示例中,网络5是广播单向传输网络,并且将集中讨论广播服务器(与发送机1相关联)向多个用户(分别与接收机2相关联)进行发送的情况。为了简单,将只针对一个发送机1和一个接收机2进行集中讨论。
非常示意性地,设置发送机1以接收消息M0并通过加上想要在网络5上传送的多个信息项以及适当的接收机2读取消息MSG和可能的序列消息的多个信息项,将其转换为要发送的消息MSG。相应地,设置接收机2从接收到的消息MSG中提取出由消息M0所表示的有意义的内容。消息M0最好是特定类型的消息(服务通知消息),如以下进一步详细描述的那样,发送机1和接收机2并不以相同的方式处理所有类型的消息。
发送机1具体地包括多种用于消息M0的变换的元件,具体的如-记录单元14,用于记录许可,被设计为将许可标识符PERM插入到消息M0中;这些标识符PERM能够向接收机2发送控制指令,以便访问随后的多种功能;-保密设备3,用于安全地保护消息,定义对消息M0的至少一部分进行编码(签名或加密)的审慎模式,触发这种编码,并将为接收机2所设计的、使用了已编码部分的信息插入到消息M0中;在所选择的示例中,在发送机1中,记录单元14位于保密设备3的上游;作为变形,颠倒它们的位置,或者这两个子部件中的至少一个位于发送机1的上游;-以及如动态连接库或DLL(动态连接库)等,包括编码模块17的编码库15;按照惯例,将此编码库15分配给发送机1,尽管实际上按照严格的意义来讲可能是发送机可以方便访问的程序。
更精确地,编码库15配备有编码密钥K1、K2…Kn的索引表16,编码模块17被设计成作为用于保护消息的保密设备3所给出的指令的函数、根据一个编码密钥Ki进行编码。此外,保密设备3包括-编码控制单元11,能够通过与编码模块17通信所需的信息,尤其是与要使用的编码密钥Ki的选择相关的信息,触发编码模块17;-用于改变当前密钥的单元12,能够通过向编码控制单元11发送相应的信息,修改所要使用的当前密钥Ki;例如,此单元12依赖于利用用户直接干预的概率,对当前密钥Ki的随机修改(关于具体值(occurrences)和所选数值);-以及用于在消息M0中记录密钥标识符KeyID的单元13,能够提示接收机2注意所选择的当前编码密钥Ki;在所示出的示例中,此记录单元13在相关类型的消息M0中,例行地执行对密钥标识符KeyID的记录。
类似地,接收机2具体包括-用于读取所接收到的消息MSG中的许可标识符PERM的单元24;-用于识别消息的设备4,定义识别(通过针对验证或解密的解码/编码)消息MSG的已编码部分的相关模式,并触发这种识别;-以及标识库25,包括识别模块27,并且按照惯例,分配给接收机2。
更精确地,标识库25配备有与编码库15的编码密钥K1、K2…Kn一一对应的标识密钥K’1、K’2…K’n的索引表26。识别模块27被设计成作为消息识别设备4所给出的指令的函数、根据一个识别密钥K’i进行识别。此外,消息识别设备4包括-识别控制单元21,能够通过与识别模块27通信所需的信息,尤其是与要使用的标识密钥K’i的选择相关的信息,触发识别模块27;-以及用于从消息MSG中提取出密钥标识符KeyID的单元23,给出依照发送机2的当前编码密钥Ki所选择的当前标识密钥K’i。
上面所给出的简要说明实质上是功能性的,尤其是以结合了用于安全地保护和识别消息的部件的特定特征为中心。发送机1实际上可以包括如参考符号15等几个保密设备,或者为相互组合。例如,消息的安全保护与加密和签名相组合,和/或不同的设备分别应用于多种类型的消息。类似地,接收机2可以包括几个识别设备。按照以下特定实施例的示例,这些可能性将变得更加清楚。
以参考符号1A表示的发送机1的实施例的第一模式应用于验证。在此实施例中,发送机1A只对服务通知消息M0进行安全地保护和记录许可标识符PERM的操作,并不对其他类型的消息(如内容消息和触发等)进行这些操作。为了描述ATVEF通知消息或系统通知消息,考虑服务通知消息,这两类消息在所考虑的示例中具有类似的结构。通过网络5广播以MSG-A表示的所产生的消息MSG。
此外,在所述示例中,编码密钥Ki(签名密钥)是专用密钥,而标识密钥K’i(验证密钥)是可以发送给客户的公共密钥,包括可以通过网络5发送(这时,最好对传输进行安全的保护)。作为更具体的示例,签名密钥Ki具有596字节,而标识密钥K’i是148字节的解码密钥,分别根据签名密钥Ki创建这些密钥,并进行传送,从而驻留在用户侧。例如,签名和验证密钥的索引表16和26分别包括10个相应的密钥。
发送机1A实质上包括-服务器驱动器系统31,参考符号为31A,包括用于改变当前密钥的单元12、用于记录密钥标识符KeyID的单元13和用于记录许可标识符PERM的单元14;此驱动器系统31A被设计成从信息源10接收消息M0,并产生包含有针对验证的密钥标识符KeyID(以KeyID[SGN]表示)和许可标识符PERM但并不包含签名的消息M1;-广播服务器32A,具体包括用于控制服务器32A的所有元件的操作的控制单元37(为了简明,在图2中未示出连接)和被设计成收集来自驱动器系统31A的消息M1的数据库33;此广播服务器32A设计用于将消息M1转换为消息MSG-A;-以及编码库15,以验证库15A的形式出现。
广播服务器32A也包括连续作用在消息M1上的两个模块完成模块35和封装模块36。完成模块35,包含有以验证控制单元11A的形式出现的编码控制单元11,负责将补充信息(因特网地址、端口等)记录在消息M1中,从而产生消息M2,并调用验证库15A,以便产生签名SGN,并将其并入到消息M2中,从而,产生消息M3。在发送到库15A的消息M2中的验证密钥标识符KeyID[SGN]的出现允许库15A立即选择想要的密钥Ki,从而产生签名SGN。优选地,当前编码密钥Ki保存在库15A中的存储器中。
广播服务器32A向库15A转发签名,以及可以将当前的密钥Ki记录在库15A中而不是服务器32A中,允许服务器32A保持一般特性。再者,其允许驱动器系统31A和库15A一起保留对与密钥标识符KeyID[SGN]和许可标识符PERM相关的操作的控制。此外,刚好在广播服务器32A广播之前,在链的末端增加签名SGN,是有利的,由于这样广播服务器32可以与大量的客户相连,而不需要重复签名库15A和编码密钥Ki,而且由于可以集中对密钥标识符KeyID[SGN]的修改。此外,在压缩和/或加密的情况下,在这些操作之后,使签名有效。
最好在整个通知消息M2上,包括头(具体包括标识符KeyID[SGN]和PERM)和净荷,计算签名SGN,从而使其能够检测到对与当前签名密钥KeyID[SGN]和许可相关的数据的任何外部修改(客户由此进行验证)。
封装模块36被设计成通过削减或增加在网络5上进行传送的层来转换通知消息M3。在示出的示例中,模块36利用UDP(单向数据协议)/IP/SLIP(串行线路IP)层产生IP(因特网协议)分组。对于内容消息,模块36预先使用UHTTP(单向超文本传送协议)协议和MIME(多用途因特网邮件扩充)格式。
这样签署的消息MSG-A允许每个客户验证所提供的服务的真实性如果客户将签名SGN识别为有效,他打开对随后的内容消息以及可能的触发的信道(套接字)的监听。在相反的情况下,客户拒绝考虑通知消息MSG-A。为了验证签名SGN,客户使用密钥标识符KeyID[SGN],允许客户从相应的标识库25(验证库)中立即选择适当的标识密钥K’i。这样,他可以快速地决定是否打开套接字,从而避免错过随后到达的全部或一些内容分组。例如,当在通知消息之后500ms,广播第一内容分组,极其重要的是,在这个时间间隔中已经执行了所有签名验证和套接字打开操作。
下面描述了发送机1A的特定实施方式。在此示例中,在组播IP地址224.0.1.133、端口2670上广播ATVEF型的通知消息MSG-A,而在组播地址235.0.1.113、端口32670上广播系统型的通知消息。每个消息MSG-A(图3)都由以SAP-A标识的SAP格式的头和SDP格式的净荷组成,头SAP-A包括以下字段-SAP的版本V(3比特,V=1);-ARTEC(5比特),由5项组成-地址类型A(0为IPv4协议,1为IPv6);-保留字段R(0);-消息类型T(0为会话通知分组,1为会话擦除分组);-加密字段E(对于“加密”0为SDP未加密,1为SDP已加密);-压缩C(0为未压缩净荷,1为压缩净荷);-以参考符号AUTH-A表示的验证字段AUTH的长度L-AUTH(8比特无符号数值),并刚好插入在SDP之前,表示为32比特字;-散列(hash)标识符(因特网针对数字签名所使用的保护算法)MSG ID HASH(16比特),当修改SDP字段时,必须改变散列值;当此标识符等于0时,客户必须总是对SDP进行语法分析(解析);-以0RIG表示的发送机1A的IP地址(32比特的1个字),由此,为广播服务器32A的IP地址;对于零值的散列标识符和未出现通过托管服务器(代理服务器)的传递时,可以将此地址设置为0.0.0.0;-以及验证字段AUTH-A,其长度由参数L-AUTH确定。
验证字段AUTH-A(图4)不仅包括128字节(作为系统限制的函数而选择的大小)的签名字段SGN,而且包括占用了四个字节、由ENT-A表示的特定验证头,包括以下子字段-所使用的协议的版本V(3比特,V=1);-填充指示器P(1比特),用作可能的填充出现的信号,从而得到其总长度是双字(32比特字)的倍数的验证字段;在现在的情况下,P=0(没有填充),由于验证字段的总长度为132字节;-所使用的验证的类型TYPE(4比特);在此示例中,TYPE=0(PGP格式,表示Pretty Good Privacy);-PERM许可标记(8比特);-将来使用的保留字段(8比特);-密钥标识符KeyID[SGN](8比特)。
从而,头ENT-A包含对客户非常有意义的两个字节字段KeyID[SGN]和PERM,分别允许客户立即确定正确的验证密钥K’i,和确定对于随后的服务消息(内容消息和触发)的适当许可。
在所示出的示例中,以八数值掩码的形式利用可用于许可标记PERM的字节。许可标记PERM涉及对以下功能的访问,与接收机2的所谓关键资源相关(首先以十六进制符号给出验证数值)-0x0001对接收机2的调制解调器进行访问,从而启动到与发送机1相关联的服务操作器的在线服务器的连接;-0x0002对接收机2的调制解调器进行访问,从而启动到任意服务操作器的在线服务器的连接;-0x0004使用在线服务器的安全连接;-0x0008对接收机2的硬盘进行访问,从而从中读取数据,或将数据永久地写入其中;-0x0010对接收机2的闪速存储器进行访问,从而从中读取数据,或将数据永久地写入其中;-0x0020对接收机2的芯片卡进行访问,从而从中读取数据,或将数据永久地写入其中;-0x0040对接收机2的调谐器进行访问,从而修改当前的电台。
在变形实施例中,以具有256个条目的表格的形式使用可用于许可的字节,每个条目对应于惟一的许可级别。与上述示例中相同,获得八种许可,可以相互组合。
可以毫无困难地扩展许可的数目,具体地,可以通过将一字节的保留字段并入到许可字段中(转换为16种许可)和/或通过将两个双字而不是一个双字分配给验证字段AUTH-A的头ENT-A。
在操作期间,驱动器系统31将SAP格式的头加在服务通知消息M0上,尤其是其中并入了此服务的许可标记PERM和可能有的密钥标识符KeyID[SGN](密钥标识符可以由驱动器系统31进行配置,但缺省的,由库15A确定)。以将ENT-A记录在其中而并没有签名SGN的方式,将验证字段AUTH-A的长度L-AUTH固定为一个双字(L-AUTH=1)。这时所得到的消息M1(图5)在SAP格式的头(以SAP1表示)的验证字段AUTH1(缩减成ENT1)中只包含有许可标记PERM和初始化为零的保留字段。在广播服务器32A的数据库33中接收此消息。
于是,完成模块35确认头SAP1是否出现(如果没有出现,则加上不具有签名的头),在M1中记录所需的补充信息(具有内容消息和触发的地址和端口的SDP的所谓补丁),并调用库15A,作为自变量传递包含有消息M1的缓冲存储器和缓冲器的大小。
库15A执行以下操作-确认许可标记PERM是否出现;如果出现,正常继续操作;如果未出现,与错误代码一起返回广播服务器32A;在改进的版本中,如果许可标记PERM未出现,则分配缺省掩码;-确认是否已经签署了服务通知消息M1;如果是,返回广播服务器32A;-如果不是,将长度L-AUTH更新为132字节(0×21个双字),添加和更新验证字段AUTH-A的头ENT-A,计算(L-AUTH=1)签名SGN,并将其加入到缓冲器中,并更新缓冲器的大小;根据整个头SAP1(由于L-AUTH=1,所以不包括签名字段SGN)和消息M1的净荷确定签名SGN;通过RSA(Rivest-Shamir-Adleman)算法,通过在整个消息上计算散列MD5、恢复适当的当前签名密钥Ki和在散列信号上利用此密钥Ki计算RSA签名而获得;在变形实施例中,相对于签名(L-AUTH=0而不是双字),完全忽略验证字段AUTH-A;-以及返回广播服务器32A。
接下来,在网络5上广播之前,封装模块36对这样获得的消息M3进行封装。
利用这种技术,每个服务只计算一次签名(在通知消息上计算),无论 发送此服务。
为了修改密钥标识符KeyID[SGN],例如,通过针对应用程序的编程的端口或API(应用编程接口),向广播服务器32A发送消息,然后,服务器32A只是将新的标识符数值通知给库15A-例如,每个月例行地进行修改。
在以下位于广播服务器32A的输入(M1)和输出(MSG-A)的服务通知消息的描述性示例中,以位于方括号之间的黑体字表示头SAP1,在验证字段(AUTH1、AUTH-A)的头(ENT1、ENT-A)的下面划线,而以正常字符表示净荷(计数法为十六进制)。
与L-AUTH=0×01、PERM=0×27相关联并且具有三个等于0×00的保留字节的消息M1如下00000000[2001 0000 53AA 0B8D 2700 0000]763D 300A ...S...’...v=0.
00000010 6F3D 2D20 3935 3530 3035 3931 3320 3935 0=-955005913 9500000020 3530 3035 3931 3320 494E 2049 5034 2031 5005913 IN IP4 100000030 3732 2E33 302E 3930 2E31 3630 0A73 3D63 72.30.90.160.s=c00000040 6D6F 6E63 686F 6978 0A65 3D64 7570 6F6E monchoix.e=dupon00000050 7440 7468 6D75 6C74 692E 636F 6D0A 703D t@thmulti.com.p=00000060 2B31 2D36 3537 2D34 3733 2D34 3833 300A +1-657-473-4830.
00000070 613D 6C61 6E67 3A65 6E0A 613D 7476 652D a=langen.a=tve-00000080 656E 6473 3A33 3030 0A61 3D74 7665 2D74 ends300.a=tve-t00000090 7970 653A 7072 696D 6172 790A 613D 7476 ypeprimary.a=tv000000A0 652D 6964 3A64 3631 3633 6164 612D 3766 e-idd6163ada-7f000000B0 6164 2D33 6235 342D 6262 3839 2D66 3166 ad-3b54-bb89-flf000000C0 6161 3430 3736 6637 620A 613D 7476 652D aa4076f7b.a=tve-000000D0 7072 6F66 696C 653A 310A 743D 3020 300A profile1.t=0 0.
000000E0 6D3D 6461 7461 2032 3238 3530 2074 7665 m=data 22850 tve000000F0 2D74 7269 6767 6572 0A63 3D49 4E20 4950 -trigger.c=IN IP00000100 3420 3232 372E 3337 2E33 322E 3433 0A6D 4 227.37.32.43.m00000110 3D64 6174 6120 3232 3835 3120 7476 652D =data 22851 tve-00000120 6669 6C65 0A63 3D49 4E20 4950 3420 3232 file.c=IN IP4 22
00000130 342E 3337 2E33 322E 3434 0A 4.37.32.44.
在广播服务器32A对M0处理之后所得到的、与L-AUTH=0×21、PERM=0×27和KeyID=0×07相关联的消息MSG-A如下00000000[2021 0000 53AA 0B8D2027 00076797 BE9E !..S...‘..g...
00000010 7169 8F8D FDF1 B330 38FF 957C D0A2 B515 qi.....08..|....
00000020 1F98 DABC CB04 9F03 0EB8 3D27 E5AA 047A ..........=‘...z00000030 35AF F2FF DC65 4F04 28E3 CA3F 948D 1D8A 5....eO.(..?....
00000040 4540 D763 DB68 3ADD CAEF 5EB1 4116 F939 E@.c.h...^.A..900000050 7C29 862F E7B8 75C1 081C 3830 5A55 AEC2 |)./..u...80ZU..
00000060 1031 62C0 E52D AC19 1CCF 7471 D28E 8997 .1b..-....tq....
00000070 7F46 9473 4F2A B5EF 8047 2DE9 87EF A49E .F.sO*...G-.....
00000080 4E90 5DB7 0981 C001 DB17 F07F]763D 300A N.].........v=0.
00000090 6F3D 2D20 3935 3530 3035 3931 3320 3935 o=-955005913 95000000A0 3530 3035 3931 3320 494E 2049 5034 2031 5005913 IN IP4 1000000B0 3732 2E33 302E 3930 2E31 3630 0A73 3D63 72.30.90.160.s=c000000C0 6D6F 6E63 686F 6978 0A65 3D64 7570 6F6E monchoix.e=dupon000000D0 7440 7468 6D75 6C74 692E 636F 6D0A 703D t@thmulti.com.p=000000E0 2B31 2D36 3537 2D34 3733 2D34 3833 300A +1-657-473-4830.
000000F0 613D 6C61 6E67 3A65 6E0A 613D 7476 652D a=langen.a=tve-00000100 656E 6473 3A33 3030 0A61 3D74 7665 2D74 ends300.a=tve-t00000110 7970 653A 7072 696D 6172 790A 613D 7476 ypeprimary.a=tv00000120 652D 6964 3A64 3631 3633 6164 612D 3766 e-idd6163ada-7f00000130 6164 2D33 6235 342D 6262 3839 2D66 3166 ad-3b54-bb89-flf00000140 6161 3430 3736 6637 620A 613D 7476 652D aa4076f7b.a=tve-00000150 7072 6F66 696C 653A 310A 743D 3020 300A profile1.t=0 0.
00000160 6D3D 6461 7461 2032 3238 3530 2074 7665 m=data 22850 tve00000170 2D74 7269 6767 6572 0A63 3D49 4E20 4950 -trigger.c=IN IP00000180 3420 3232 372E 3337 2E33 322E 3433 0A6D 4 227.37.32.43.m00000190 3D64 6174 6120 3232 3835 3120 7476 652D =data 22851 tve-000001A0 6669 6C65 0A63 3D49 4E20 4950 3420 3232 file.c=IN IP4 22
000001B0 342E 3337 2E33 322E 3434 0A 4.37.32.44.
在发送机1A的特定结构中(图6),包括中央服务器45的服务操作器的中央驱动器系统40通过专用链路(专线)46与广播装置41、42和43相连。
广播装置41~43中的每一个都包括上面详细描述过的32A类型的广播服务器32和用于广播视听节目的设备47和参考符号为48的VBI编码器,负责对来自服务器32和来自设备47的信息进行编码,并将其广播到天线49。在操作期间,中央驱动器系统40从多个源(广播商、广告商、内容提供商等)获得与要广播的服务相关的信息,排定广播,并最终在广播之前,将其提供给广播服务器32。通过分别向广播装置41到43传递数字证书51、52和53,特别地保证了公共密钥的真实性。此中央驱动器系统40也实现上述驱动器系统31的功能,使得广播装置41到43所广播的服务通知消息MSG可以有选择地得到许可,并通过多个可变的密钥得到签署,并不引起接收侧对验证的不利延迟。
每个接收机2具体包括(图7)-以参考符号61表示的VBI驱动器,被设计成从发送机1A(如广播装置41到43)接收到、并包括字段WST(世界标准图文电视)的信息中提取出净荷,计算出误码控制代码FEC(前向纠错码),并控制对净荷的SLIP帧的解码;-用于对在网络5上传送的层解封装的模块62,能够从驱动器61接收已解密的帧,并在解码之后,从中提取出IP/UDP帧的内容,对于服务通知消息MSG,该内容的形式为SAP格式的头和SDP格式的净荷;-浏览器63,设置有上述类型的识别设备4和许可读取单元24(分别以参考符号4N和24N表示),-加载器67,设置有上述类型的识别设备4和可选的许可读取单元24(分别以参考符号4C和24C表示),-以及上述参考符号25那种类型的验证库;密钥的索引表26以库25的代码存储在接收机2的如闪速存储器型等的永久存储器中。
浏览器63被设计成在接收到每个服务通知消息MSG-A时,执行以下功能-通过监听套接字64,恢复消息MSG-A的头和净荷;-通过将指向消息MSG-A的指针作为输入传递给它,调用库25中的签名确认功能;-以及如果验证成功,通过应用由消息MSG-A的许可标记PERM所指示的许可,从而规定访问要应用于广播应用的浏览器63的功能,打开分别针对内容消息和随后的触发的监听套接字65和66。
库25签名确认功能更为精确地执行以下操作-在作为整体的没有签名的头SAP-A和净荷上计算散列MD5,指示符L-AUTH给出将验证字段AUTH-A的长度设置为1;在与指示签名计算相对应的变形中,对于验证,忽略验证字段AUTH-A,将指示符L-AUTH设置为0;-恢复头SAP-A的验证字段AUTH-A中的密钥标识符KeyID[SGN],并选择适当的验证密钥K’i;-通过借助于选中的密钥K’i重新计算签名的无用信息,确认RSA型的验证字段AUTH-A的签名SGN;如果签名无效,返回数值0;-如果签名SGN有效,返回许可标志PERM。
这样,除非在验证成功的情况下,否则忽略消息MSG-A的净荷。在相反的情况下,针对所通知的服务的随后消息,并不打开监听套接字,而用户不能监听到到达的数据。
相对于通过监听套接字68接收到的系统通知消息,加载器67的操作是相似的只有通过调用库25验证了消息,才针对随后的内容消息,打开套接字69。
以参考符号1B表示的发送机1的实施例的第二模式(图8)应用于加密和验证的组合。此实施例与前一实施例的不同实质上在于在发送机1B中加密元件的出现,与签名元件互补,并被设计成作为签名元件的上游。加密元件和签名元件分别依赖于从密钥的两个索引表16(图1)中选择两个当前编码密钥,以及分别调用上面以普通方式描述的编码库15的类型的加密库15B和签名库15A’。接收机2包括与加密密钥的索引表相对应的索引解密表,这些解密密钥最好是专用的。例如,索引加密和解密表每个包括10个密钥。
这样,以参考符号31B表示的驱动器系统31包括用于改变当前密钥的单元12和用于安全地保护加密(分别为12B和13B)和加密之后的签名(分别为12A’和13A’)的消息的设备13。
此外,以参考符号32B表示的广播服务器32包括完成和加密模块34和位于模块34下游的签名模块38,完成和加密模块34包括加密控制单元11B,而签名模块38包括签名控制单元11A’,控制单元11B和11A’是编码控制单元11的类型的。此服务器32B以与实施例的第一模式相类似的方式,将以参考符号AUTH-B表示的验证字段AUTH并入到SAP格式的头中。
与实施例的前一模式相同,完成和加密模块34负载添加消息M1中所需的补充信息,并调用加密库15B,从而通过向其发送加密密钥标识符KeyID[CRYPT],对这样获得的消息M4进行加密。然后,库15B的编码模块17(图1)执行对净荷的加密,但并不对头的初始数据或验证字段AUTH-B进行加密。例如,随机产生密钥标识符KeyID[CRYPT]。
签名模块38被设计成从加密库15B接收由此加密得到的消息M5,并特别地包括验证密钥标识符KeyID[SGN],并调用签名库15A’,从而获得签署的消息M6。与实施例的前一模式相同,通过密钥标识符KeyID[SGN]所给出的当前密钥,库15A’的编码模块17(图1)确定并附加涉及整个消息M5的签名。
封装模块36起到与先前相同的作用,能够获得以MSG-B表示的要广播的消息MSG。
作为示例(图9),消息MSG-B除了其净荷之外还包括以参考符号SAP-B表示的SAP格式的头,所述SAP格式的头如下构成-与实施例的第一模式相类似的字段V、ARTEC、L-AUTH、MSGID HASH和AUTH-B;-加密密钥标识符KeyID[CRYPT](1个双字);-超时指示符TIMEOUT(1个双字),当对净荷加密时,以及当通知消息的发送涉及代理服务器时,有用;
-填充指示符P(1比特),在加密之前发出填充的信号;于是,解密净荷的最后一个字节给出了增加的填充字节的数目;-以及随机字段(31比特),包含真随机数,并设计为在解密之后丢弃。
已加密字段的集合CRYPT由指示符P、随机字段和净荷构成,而标识符KeyID[CRYPT]和字段TIMEOUT形成了未加密的加密头ENT-CRYPT。
在可以应用于任意一对相关编码和标识库的变形实施例中(图10和图11),编码库75包括编码密钥块B1、B2…Bn的索引表76来代替密钥的索引表。每个块Bi本身包括几个密钥Ki,1、Ki,2…Ki,1i,其数目可以根据所考虑的块变化。类似地,标识库85包括标识密钥块B’1,B’2…B’n的索引表86,每个块B’i包括分别与编码库75的块Bi的密钥Ki,1、Ki,2…Ki,1i相对应的几个密钥K’i,1、K’i,2…K’i,1i。
因此,知道了密钥标识符KeyID也不能以一对一的方式确定编码模块77针对编码所选择的密钥Ki,j,从而,不能确定库85的标识模块87所使用的关联标识密钥K’i,i,而只能确定这些密钥分别属于的块Bi和B’i。因而,必须连续测试标识块B’i的所有密钥,直到解密成功为止。
按照标识符的变形结构,验证密钥标识符KeyID[SGN]和/或许可标识符PERM在消息MSG的头中的验证字段AUTH的外部。这样,通过将这些标识符包含在签名计算SGN中,而排除在验证字段AUTH(L-AUTH=0)之外,可以对用于验证的消息进行编码。
在实施例的另一模式中(图12和图13),将许可标记PERM放置在净荷字段中。按照所描述的示例,以参考符号MSG-C表示的所产生的服务通知消息MSG包含以SAP-C表示的SAP格式的头,没有许可,但在验证字段AUTH-C的头ENT-C中具有两个字节的保留字段。以SDP-C表示的SDP格式的净荷包括两个字节的许可标记PERM,例如,位于字段的开始。许可字段需要比头空间更多的净荷空间,由于现在要求写入文本和许可字段标识卷标,而不是二进制格式。
现在,将对在满足MPEG-2标准的网络上,在MHP标准的数据的数字广播中的示例性应用进行详细的描述。此示例涉及MPEG-2标准(ISO/IEC 13818-1)中所规定的PMT表(节目映射表)和AIT表(应用信息表)的保护,MPEG-2标准禁止散列PMT表。针对所述机制,建立根确认授权,其他确认授权任选。
PMT表构成了用于发出交互或其他服务的信号的重要入口点。在交互MHP应用的情况下,PMT表包含传送AIT表的流和传送代码和应用数据的流的位置(指向DSM-CC DSI的指针,“Digital StorageMedia-Command and Control”与“Digital Speech Interpolation”标准)。
对信令的保护基于散列代码、签名和证书。通过引入分别以hash_descriptor、signature_descriptor和certificate_descriptor表示的三个新的描述符,完成对这些密码消息的编码。
第一描述符hash_descriptor可以放置在AIT或PMT表的第一或第二循环中。在特定的循环中,根据指针所指向的描述符,计算散列代码。下一级次的描述符循环可以包括较低级次的散列代码。例如,通过以下参数定义hash_descriptor的语法-digest_count16比特数值,确定在此散列描述符中预处理数值(摘要数值)的数目;-digest_type8比特数值,确定可能用于相关描述符的预处理算法;从以下数值中选择授权数值-0预处理长度0,未验证;-1预处理长度16,如参考文献RFC 1321中所定义的散列算法MD5;-2预处理长度20,如参考文献FIPS-180-1中所定义的散列算法SHA-1(“Secure Hash Algorithm”的SHA标准);-其他保留;-descriptor_count16比特数值,确定与预处理数值相关联的描述符的数目;此数值必须大于零;-descriptor_pointer确定形成了散列计算的一部分的描述符的指针;-descriptor_tagdescriptor_pointer参数所指向的描述符的标签;-digest_length整数值,给出了每个预处理数值中的字节数;其依赖于上述相对于digest_type参数所表示的预处理类型;-digest_byte8比特数值,包含预处理数值字节。
于是,hash_descriptor描述符的语法写为<pre listing-type="program-listing">hash_descriptor(){descriptor_tag 8uimsbfdescriptor_length 8uimsbfdigest_count16uimsbffor(i=0;i<digest_count;i++){digest_type 8uimsbfdescriptor_count8uimsbffor(j=0;j<descriptor_count;j++){descriptor_pointer 8uimsbfdescriptor_tag 8uimsbf}for(j=0;j<digest_length;j++){digest_byte 8bslbf}}}</pre>对于第二描述符,signature_descriptor,使用以下参数(除了针对hash_descriptor描述符已经定义的参数之外)-signature_id此标识符使其能够采用几个授权的签名;-signature_length表示了下一循环的长度;以及以下所述的签名特定字段。
在描述符循环中放置在第一hash_descriptor描述符前面的这个描述符具有以下语法signature_descriptor(){descriptor_tag 8uimsbfdescriptor_length 8uimsbfsignature_id8uimsbfsignature_length8uimsbffor(i=0;i<N;i++){签名特定数据}}“签名特定数据”字段包含以下结构,以ASN.1(《Abstract SyntaxNotation one》标准)DER规范语言表达Signature∷=SEQUENCE{certificateIdentifier AuthorityKeyIdentifier,hashSignatureAlgorithm HashAlgorithmIdentifier,signatureValue BIT STRING}其“signatureValue”字段给出了签名值(以比特串“BIT STRING”的形式),此数值依赖于MHP规范的选择,而下面定义了其他的“certificateIdentifier”和“hashSignatureAlgorithm”字段。
certificateIdentifier字段确定了承载有用于验证签名的已证明公共密钥的证书。按照ITU-T(国际电信联盟-电信标准部分)扩展X.509[54]针对AuthorityKeyIdentifier型字段进行定义。AuthorityKeyIdentifier的结构具体包括可选密钥标识字段KeyIdentifier(KeyIdentifier型)。也包括authorityCertIssuer(GeneralNames型)元素,其自身包括“directionName”字段和authorityCertSerialNumber(CertificateSerialNumber型)元素,“directionName”字段具有承载了所使用的公共密钥的证书的数值,authorityCertSerialNumber元素给出了相应的序列号。这两个元素,必须填充在AuthorityKeyIdentifier字段类型中可选的priori中。这样,我们有AuthorityKeyIdentifier∷=SEQUENCE{keyIdentifier
KeyIdentifier可选,authorityCertIssuer[1]GeneralNames可选,authorityCertSerialNumber [2]CertificateSerialNumber可选}hashSignatureAlgorithm字段确定了所使用的散列算法。由于在确认密钥的证书的SubjectKeyInfo字段中已经对其进行了描述,这里并不需要指定用于计算签名的加密算法。所设置的两个算法为MD5和SHA-1,其结构如下md5 OBJECT IDENTIFIER∷={iso(1)member-body(2)US(840)rsadsi(113549)digestAlgorithm(2)5}sha-1 OBJECT IDENTIFIER∷={iso(1)identified-organization(3)oiw(14)secsig(3)algorithm(2)26}第三描述符certificate_descriptor能够构建CertificateFile文件,包含证明串的所有证书,一直到包括根证书。在描述符的最初和最后分别放置了叶证书和根证书,包括根证书只是为了一致性。在ETSI(欧洲电信标准协会标准)标准TS 102 812 V1.1.1中定义了证书编码特征。
放置在描述符串中的第一signature_descriptor描述符之前的certificate_descriptor描述符包含承载单独的“证书”数据结构的“certificate()”字段,正如ITU-T X.509标准所定义的那样。作为以下参数的函数来表达描述符的结构-signature_id将证明绑定到特定签名上的标识符;-certificate_here_flag1比特字段,表示在描述符中放置有证书应当具有数值1,而且必须使用应用的证书,否则,必须定义绑定;-certificate_count16比特整数,表示证书描述符中的证书数目;
-certificate_length24比特整数,规定了证书中的字节数。
从而,certificate_descriptor描述符的结构描述如下<pre listing-type="program-listing">certificate_descriptor(){descriptor_tag8uimsbfdescriptor_length 8uimsbfsignature_id 8uimsbfcertificate_here_flag 1bslbf保留 7bslbfif(certificate_here_flag==1){certificate_count 16uimsbffor(i=0;i<certificate_count;i++){certificate_length24uimsbfcertificate()} }}</pre>所述方法能够保护PMT和AIT表不受侵犯操作。此外,在网络头端中,可以发生对流的重新复用,以及由于网络设备,对PID标识分组或事件PMT表内容进行修改。通过上述研究的方法允许这种重新复用,只要验证了描述符的子选集,或者重新复用设备重新验证了修改后的描述符。
尽管上述描述的目的在于PMT和AIT表的验证,但所述方法也可以应用于如PAT、CAT、NIT、SDT、EIT、SIT或DIT表等按照MPEG/DVB标准所定义的任何其他类型的表。
权利要求
1.一种保密设备(3),用于保护设计用于在网络上向包括控制装置(21)的至少一个接收机(1)发送的消息(MSG),所述控制装置(21)通过可修改的当前标识密钥(K’i、K’i,j),对消息(MSG)的识别进行控制,所述保密设备(3)包括—编码控制单元(11),通过可修改的当前编码密钥(Ki、Ki,j),对每个所述消息(MSG)的至少一部分的编码进行控制,—改变单元(12),用于改变所述当前的编码密钥(Ki、Ki,j),被设计为从可用编码密钥(K1…Kn、K1,1…Kn,1n)的预定集合(16、76)中选择所述密钥(Ki、Ki,j),—以及记录单元(13),用于在所述消息(MSG)中记录密钥标识符(KeyID),使接收机(2)能够从与可用编码密钥(K1…Kn;K1,1…Kn,1n)的所述预定集合(16、76)相对应的可用标识密钥(K’1…K’n;K’1,1…K’n,1n)的预定集合(26、86)中选择当前标识密钥(K’i、K’i,j),所述密钥标识符(KeyID)使所述接收机(2)能够以所述当前标识密钥(K’i、K’i,j)对应于当前编码密钥(Ki、Ki,j)的方式修改当前标识密钥(K’i、K’i,j),其特征在于,所述保密设备(3)包括控制装置(11A、11A’),控制将通过所述当前编码密钥(Ki、Ki,j)对所述消息的所述部分进行编码的结果组成的签名(SGN)加到每个所述消息(MSG)上,而且其中所述消息(MSG)是服务通知消息。
2.按照权利要求1所述的保密设备(3),其特征在于所述可用标识密钥(K’1…K’n;K’1,1…K’n,1n)的所述预定集合(26、86)是解码密钥集合。
3.按照权利要求1或2所述的保密设备(3),其特征在于所述消息的所述部分由完整地减去了签名的所述消息组成,包括所述密钥标识符(KeyID[SGN])。
4.按照前述权利要求之一所述的保密设备(3),其特征在于至少从ATVEF通知消息和系统通知消息中选择所述消息(MSG)。
5.按照前述权利要求之一所述的保密设备(3),其特征在于每个所述消息具有可变长度(L-AUTH)的验证字段(AUTH),所述记录单元(13)被设计成将密钥标识符(KeyID)记录在所述验证字段(AUTH)中。
6.按照前述权利要求之一所述的保密设备(3),其特征在于至少从MHP信令消息中选择所述消息(MSG)。
7.按照前述权利要求之一所述的保密设备(3),其特征在于每个所述密钥标识符(KeyID)关联于可用编码密钥(K1…Kn)中的确定的一个,并且关联于与所述编码密钥相对应的可用标识密钥(K’1…K’n)中的确定的一个。
8.按照权利要求1到6之一所述的保密设备(3),其特征在于每个所述密钥标识符(KeyID)与可用编码密钥(K1,1…Kn,1n)的集合(16、76)中的确定的编码密钥(K’i,j)块(Bi)相关联,而且与可用标识密钥(K’1,1…K’n,1n)的集合(26、86)中、分别与所述编码密钥(K’i,j)相对应的确定的标识密钥(K’i,j)块(B’i)相关联。
9.按照前述权利要求之一所述的保密设备(3),其特征在于所述记录单元(13)被设计成从位于8和12之间的多个数值中选择密钥标识符(KeyID),并且最好等于10。
10.一种消息(MSG)的发送机(1),其特征在于包括至少一个依照权利要求1到9之一所述的保密设备(3),所述发送机最好被设计成通过广播发送消息(MSG)。
11.一种用于识别通过网络接收到的消息(MSG)的设备(4),每个所述消息(MSG)均包括通过可修改的当前编码密钥(Ki、Ki,j)编码了的部分(SGN),所述识别设备(4)包括—识别控制单元(21),通过可修改的当前标识密钥(K’i、K’i,j),对所述已编码的部分(SGN)的识别进行控制,—以及提取单元(23),用于从所述消息(MSG)中提取出密钥标识符(KeyID),使其能够以所述当前标识密钥(K’i、K’i,j)对应于所述当前编码密钥(Ki、Ki,j)的方式,从与可用编码密钥(K1…Kn;K1,1…Kn,1n)的预定集合(16、76)相对应的可用标识密钥(K’1…K’n;K’1,1…K’n,1n)的预定集合(26、86)中选择当前标识密钥(K’i、K’i,j),其特征在于所述标识控制单元(21)是对已编码的部分(SGN)的验证进行控制的单元,所述已编码的部分是当前签名,而且其中所述消息(MSG)是服务通知消息,用于识别消息(MSG)的所述设备(4)最好能够识别通过依照权利要求1到9之一所述的保密设备(3)安全地进行保护的消息(MSG)。
12.一种消息(MSG)的接收机(2),其特征在于包括依照权利要求11所述的至少一个识别设备(4),所述接收机最好被设计为接收来自依照权利要求10所述的消息发送机(1)的所述消息(MSG)。
13.一种计算机程序产品,其特征在于包括用于实现依照权利要求1到9之一所述的用于保护消息(MSG)的保密设备(3)或者用于实现依照权利要求11所述的用于识别消息(MSG)的设备(4)的的所述单元(11~13;21、23)的功能性。
14.一种被设计用于在网络上向至少一个接收机(2)发送的消息(MSG),所述消息包括—分别通过至少一个可修改的当前编码密钥(Ki、Ki,j)编码了的至少一部分(SGN),—以及至少一个密钥标识符(KeyID[SGN]),分别使其能够从可用标识密钥(K’1…K’n;K’1,1…K’n,1n)的预定集合(26、86)中选择所述当前标识密钥(K’i、K’i,j),所述当前标识密钥分别能够识别所述已编码的部分(SGN),其特征在于所述已编码的部分(SGN)是签名,而所述消息(MSG)是服务通知消息,最好通过依照权利要求1到9之一所述的用于保护消息的保密设备(3)获得所述消息(MSG),而且最好被设计用于依照权利要求11所述的用于识别消息的设备(4)。
15.一种用于保护被设计用于在网络上向至少一个接收机(2)发送的消息(MSG)的保密方法,所述至少一个接收机(2)包括识别控制装置(21),通过可修改的当前标识密钥(K’i、K’i,j)对识别进行控制,所述保密方法包括—选择步骤,从可用编码密钥(K1…Kn、K1,1…Kn,1n)的至少一个预定集合(16、19、76)中选择当前编码密钥(Ki、Ki,j),使其能够对每个所述消息(MSG)的至少一部分进行编码,—记录步骤,在所述消息(MSG)中记录密钥标识符(KeyID),使接收机(2)能够从与可用编码密钥(K1…Kn;K1,1…Kn,1n)的所述预定集合(16、76)相对应的可用标识密钥(K’1…K’n;K’1,1…K’n,1n)的预定集合(26、86)中选择当前标识密钥(K’i、K’i,j),所述密钥标识符(KeyID)使所述接收机(2)能够以所述当前标识密钥(K’i、K’i,j)对应于当前编码密钥(Ki、Ki,j)的方式修改当前标识密钥(K’i、K’i,j),—以及编码步骤,通过所述当前编码密钥(Ki、Ki,j),对所述消息(MSG)的所述部分进行编码,其特征在于所述编码步骤在于,产生所述部分的签名(SGN),以及所述消息(MSG)是服务通知消息,最好通过依照权利要求1到9之一所述的用于保护消息(MSG)的保密设备(3)实现用于保护消息(MSG)的所述保密方法。
16.一种用于识别通过网络接收到的消息(MSG)的方法,每个所述消息(MSG)均包括通过可修改的当前编码密钥(Ki、Ki,j)编码了的部分(SGN),所述识别方法包括—提取步骤,从所述消息(MSG)中提取出密钥标识符(KeyID),通过所述密钥标识符(KeyID),从可用标识密钥(K’1…K’n;K’1,1…K’n,1n)的预定集合(26、86)中选择当前标识密钥(K’i、K’i,j),所述当前标识密钥(K’i、K’i,j)对应于所述当前编码密钥(Ki、Ki,j),—以及识别步骤,通过所述当前标识密钥(K’i、K’i,j),识别所述已编码的部分(SGN),其特征在于所述已编码的部分(SGN)是签名,而所述消息(MSG)是服务通知消息,最好通过依照权利要求11所述的用于识别消息(MSG)的设备(4)实现用于识别消息(MSG)的所述方法。
全文摘要
本发明涉及保密设备(3)和方法,通过可修改的当前标识密钥(K’
文档编号H04L29/06GK1526217SQ02810248
公开日2004年9月1日 申请日期2002年5月22日 优先权日2001年5月23日
发明者洛朗·莱森, 洛朗 莱森, 弗雷德里·帕基耶, 里 帕基耶, 舍费尔, 拉尔夫·舍费尔 申请人:汤姆森许可贸易公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1