1、一种保密设备(3),用于保护设计用于在网络上向包括控 制装置(21)的至少一个接收机(1)发送的消息(MSG),所述控制 装置(21)通过可修改的当前标识密钥(K’i、K’i,j),对消息(MSG) 的识别进行控制,所述消息(MSG)是服务通知消息,以及所述保密 设备(3)包括:
-编码控制单元(11),通过可修改的当前编码密钥(Ki、Ki,j), 对每个所述消息(MSG)的至少一部分的编码进行控制,
-控制装置(11A、11A’),控制将通过所述当前编码密钥(Ki、 Ki,j)对所述消息的所述部分进行编码的结果组成的签名(SGN)加到 每个所述消息(MSG)上,
-以及记录单元(13),用于在所述消息(MSG)中记录密钥标 识符(KeyID),使接收机(2)能够从可用标识密钥(K’1…K’n;K’1,1… K’n,ln)的预定集合(26、86)中选择当前标识密钥(K’i、K’i,j),所 述密钥标识符(KeyID)使所述接收机(2)能够以所述当前标识密钥 (K’i、K’i,j)对应于当前编码密钥(Ki、Ki,j)的方式修改当前标识密 钥(K’i、K’i,j),
其特征在于,所述保密设备(3)包括改变单元(12),用于改 变所述当前编码密钥(Ki、Ki,j),被设计为从与所述发送机(1)相 关联并与可用标识密钥(K’1…K’n;K’1,1…K’n,ln)的所述预定集合(26, 86)相对应的可用编码密钥(K1…Kn、K1,1…Kn,ln)的预定集合(16、 76)中选择所述密钥(Ki、Ki,j),所述改变单元在发送任意消息或给 定类型的任意消息时,授权对密钥的改变。
2、按照权利要求1所述的保密设备(3),其特征在于所述保 密设备(3)适于以密钥修改二进制指示符补充所述密钥标识符 (KeyID),将所述当前标识密钥(K’i、K’i,j)设计成在接收时保存在 存储器中,直到所述密钥改变指示符发出密钥改变的信号为止。
3、按照权利要求1所述的保密设备(3),其特征在于使所述 保密设备(3)只在密钥实际改变的情况下指定所述密钥标识符 (KeyID),否则以缺省值替代,发出先前使用的当前标识密钥(K’i、 K’i,j)仍然有效的信号,从而使所述接收机(2)能够只在所述密钥 标识符(KeyID)具有除所述缺省值以外的其他数值时,替换所述当 前标识密钥(K’i、K’i,j)。
4、按照前述权利要求之一所述的保密设备(3),其特征在于 所述可用标识密钥(K’1…K’n;K’1,1…K’n,ln)的所述预定集合(26、86) 是解码密钥集合。
5、按照权利要求1所述的保密设备(3),其特征在于所述消 息的所述部分由完整地减去了签名的所述消息组成,包括所述密钥标 识符(KeyID[SGN])。
6、按照权利要求1所述的保密设备(3),其特征在于至少从 ATVEF通知消息和系统通知消息中选择所述消息(MSG)。
7、按照权利要求1所述的保密设备(3),其特征在于每个所 述消息具有可变长度(L-AUTH)的验证字段(AUTH),所述记录单元 (13)被设计成将密钥标识符(KeyID)记录在所述验证字段(AUTH) 中。
8、按照权利要求1所述的保密设备(3),其特征在于至少从 MHP信令消息中选择所述消息(MSG)。
9、按照权利要求1所述的保密设备(3),其特征在于每个所 述密钥标识符(KeyID)关联于可用编码密钥(K1…Kn)中的确定的 一个,并且关联于与所述编码密钥相对应的可用标识密钥(K’1…K’n) 中的确定的一个。
10、按照权利要求1所述的保密设备(3),其特征在于每个所 述密钥标识符(KeyID)与可用编码密钥(K1,1…Kn,ln)的集合(16、 76)中的确定的编码密钥(K’i,j)块(Bi)相关联,而且与可用标识 密钥(K’1,1…K’n,ln)的集合(26、86)中、分别与所述编码密钥(K’i,j) 相对应的确定的标识密钥(K’i,j)块(B’i)相关联。
11、按照权利要求1所述的保密设备(3),其特征在于所述记 录单元(13)被设计成从位于8和12之间的多个数值中选择密钥标 识符(KeyID),并且最好等于10。
12、一种消息(MSG)的发送机(1),其特征在于包括:至少一 个依照权利要求1到11之一所述的保密设备(3),用于保护要通过 网络传输的消息(MSG);以及发送装置,用于发送由所述保密设备 (3)进行了保护的消息(MSG)。
13、一种用于识别通过网络接收到的消息(MSG)的设备(4), 每个所述消息(MSG)均包括通过可修改的当前编码密钥(Ki、Ki,j) 编码了的部分(SGN),所述消息(MSG)是服务通知消息,以及所述 识别设备(4)包括:
-识别控制单元(21),通过可修改的当前标识密钥(K’i、K’i,j), 对所述已编码的部分(SGN)的识别进行控制,
-以及提取单元(23),用于从所述消息(MSG)中提取出密钥 标识符(KeyID),使其能够以所述当前标识密钥(K’i、K’i,j)对应于 所述当前编码密钥(Ki、Ki,j)的方式,从与可用编码密钥(K1…Kn; K1,1…Kn,ln)的预定集合(16、76)相对应的可用标识密钥(K’1…K’n; K’1,1…K’n,ln)的预定集合(26、86)中选择当前标识密钥(K’i、K’i,j),
所述标识控制单元(21)是对已编码的部分(SGN)的验证进行 控制的单元,而且所述已编码的部分是当前签名,
其特征在于用于识别消息(MSG)的所述设备(4)适于将所述 当前标识密钥(K’i、K’i,j)保存在存储器中,直到补充所述密钥标识 符(KeyID)的密钥修改二进制指示符发出密钥改变的信号为止。
14、一种用于识别通过网络接收到的消息(MSG)的设备(4), 每个所述消息(MSG)均包括通过可修改的当前编码密钥(Ki、Ki,j) 编码了的部分(SGN),所述消息(MSG)是服务通知消息,以及所述 识别设备(4)包括:
-识别控制单元(21),通过可修改的当前标识密钥(K’i、K’i,j), 对所述已编码的部分(SGN)的识别进行控制,
-以及提取单元(23),用于从所述消息(MSG)中提取出密钥 标识符(KeyID),使其能够以所述当前标识密钥(K’i、K’i,j)对应于 所述当前编码密钥(Ki、Ki,j)的方式,从与可用编码密钥(K1…Kn; K1,1…Kn,ln)的预定集合(16、76)相对应的可用标识密钥(K’1…K’n; K’1,1…K’n,ln)的预定集合(26、86)中选择当前标识密钥(K’i、K’i,j),
所述标识控制单元(21)是对已编码的部分(SGN)的验证进行 控制的单元,而且所述已编码的部分是当前签名,
其特征在于只在密钥实际改变的情况下指定所述密钥标识符 (KeyID),否则以缺省值替换,发出先前使用的所述当前标识密钥 (K’i、K’i,j)仍然有效的信号,用于识别消息(MSG)的所述设备(4) 被设计用于只在所述密钥标识符(KeyID)具有除所述缺省值以外的 其他数值时,替换所述当前标识密钥(K’i、K’i,j)。
15、一种消息(MSG)的接收机(2),其特征在于包括:接收装 置,用于接收通过网络传输过来的消息(MSG);以及至少一个依照权 利要求13或14所述的识别设备(4),用于识别由所述接收装置通 过网络接收到的消息(MSG)。
16、一种用于保护被设计用于在网络上向至少一个接收机(2) 发送的消息(MSG)的保密方法,所述至少一个接收机(2)包括识别 控制装置(21),通过可修改的当前标识密钥(K’i、K’i,j)对识别进 行控制,所述消息(MSG)是服务通知消息,以及所述保密方法包括:
-编码步骤,通过所述当前编码密钥(Ki、Ki,j),对所述消息(MSG) 的所述部分进行编码,在于,产生所述部分的签名(SGN),
-以及记录步骤,在所述消息(MSG)中记录密钥标识符 (KeyID),使接收机(2)能够从可用标识密钥(K’1…K’n;K’1,1…K’n,ln) 的预定集合(26、86)中选择当前标识密钥(K’i、K’i,j),所述密钥 标识符(KeyID)使所述接收机(2)能够以所述当前标识密钥(K’i、 K’i,j)对应于当前编码密钥(Ki、Ki,j)的方式修改当前标识密钥(K’i、 K’i,j),
其特征在于所述保密方法包括选择步骤,从与发送机(1)相关 联并与可用标识密钥(K’1…K’n;K’1,1…K’n,ln)的预定集合(26、86) 相对应的可用编码密钥(K1…Kn、K1,1…Kn,ln)的至少一个预定集合(16、 19、76)中选择所述当前编码密钥(Ki、Ki,j),在发送任意消息或给 定类型的任意消息时,授权对密钥的改变。
17、一种用于识别通过网络接收到的消息(MSG)的方法,每个 所述消息(MSG)均包括通过可修改的当前编码密钥(Ki、Ki,j)编码 了的部分(SGN),所述消息(MSG)是服务通知消息,以及所述识别 方法包括:
-提取步骤,从所述消息(MSG)中提取出密钥标识符(KeyID), 通过所述密钥标识符(KeyID),从可用标识密钥(K’1…K’n;K’1,1…K’n,ln) 的预定集合(26、86)中选择当前标识密钥(K’i、K’i,j),所述当前 标识密钥(K’i、K’i,j)对应于所述当前编码密钥(Ki、Ki,j),
-以及识别步骤,通过所述当前标识密钥(K’i、K’i,j),识别所 述已编码的部分(SGN),
所述已编码的部分(SGN)是签名,
其特征在于用于识别消息(MSG)的所述方法包括将所述当前标 识密钥(K’i、K’i,j)保存在存储器中,直到补充所述密钥标识符(KeyID) 的密钥修改二进制指示符发出密钥改变的信号。
18、一种用于识别通过网络接收到的消息(MSG)的方法,每个 所述消息(MSG)均包括通过可修改的当前编码密钥(Ki、Ki,j)编码 了的部分(SGN),所述消息(MSG)是服务通知消息,以及所述识别 方法包括:
-提取步骤,从所述消息(MSG)中提取出密钥标识符(KeyID), 通过所述密钥标识符(KeyID),从可用标识密钥(K’1…K’n;K’1,1…K’n,ln) 的预定集合(26、86)中选择当前标识密钥(K’i、K’i,j),所述当前 标识密钥(K’i、K’i,j)对应于所述当前编码密钥(Ki、Ki,j),
-以及识别步骤,通过所述当前标识密钥(K’i、K’i,j),识别所 述已编码的部分(SGN),
所述已编码的部分(SGN)是签名,
其特征在于只在密钥实际改变的情况下指定所述密钥标识符 (KeyID),否则以缺省值替换,发出先前使用的所述当前标识密钥 (K’i、K’i,j)仍然有效的信号,用于识别消息(MSG)的所述方法包 括只在所述密钥标识符(KeyID)具有除所述缺省值以外的其他数值 时,替换所述当前标识密钥(K’i、K’i,j)。
技术领域\n本发明涉及在网络上对消息的保密保护和识别,以及相应的设 备。\n背景技术\n为了在不安全的网络上对消息流进行保密,特别是通过无线电 广播、电缆或因特网网络所获得的消息流,传统上使用编码密钥 (enciphering key),也称作加密密钥(encryption key)。通常, 消息的发送机装备有这种编码密钥,而接收机装备有相应的标识密 钥。根据预期的应用,密钥可以是专用的或公共的。例如,发送者使 用密钥对,其中,他将能够对消息进行编码的公共密钥广播出去,而 保留他自己的专用解码密钥。\n对消息的加密具有两类主要的应用:\n-消息验证,对此,以签名的形式将编码的结果并入到消息中; 则标识密钥可以是解码密钥或编码密钥;\n-消息加密,为此,以编码的结果替代部分被编码的消息;则 标识密钥是解码密钥。\n在这两类应用中,可取的是,最小化第三方截获和欺骗性地解 码消息的风险,或者通过欺骗性地附加签名进行伪造的风险。因而, 为了使未经授权的编码或解码的可能性更为复杂,已经提出了几种系 统。\n从而,对技术进行了研究,以便能够对相应的编码和标识密钥 进行常规的修改。这些技术中的一些依赖于在通信网络上发送新的标 识密钥,但使其难以识别这些密钥(例如,通过对密钥进行加密等), 尤其在这些密钥是专用密钥时。但是,除非已经采取了预防措施,否 则,这些技术易于受到对所发送的密钥的截获,而且其使用易于受到 攻击。此外,对新密钥的每次发送,都需要接收机对密钥进行识别和 安装,这样对于密钥的有效性可能是有害的。\n参考文献EP-0,506,637描述了一种对蜂窝式无线电通信网络的 移动台进行确认和验证的系统。此系统在网络和移动台中均包括固定 密钥和被称为滚动密钥(rolling key)的可修改密钥。这些密钥被 用作验证算法的输入和对网络所产生的响应的比较,以及在每个移动 台中能够指出欺骗行为。作为二者相同的历史验证信息的函数,每当 进行双向验证时,在网络和移动台中同时更新滚动密钥。\n这样,可以增强交换的保密性,由于定期地对密钥进行修改, 而并不需要通过网络。但是,这种系统的缺点在于,每当进行双向验 证时,需要计算新的滚动密钥。此外,异步问题可能会引起技术误操 作,从而可能会导致验证的不能使用。为了克服此问题,必须内建特 定的机制,从而使系统更为复杂,而且冒着降低验证可靠性的风险。\n专利US-6,105,133公开了一种对发送/接收站进行验证和加密的 双向系统。通过验证和加密,以及通过使用每当在这些站之间进行连 接时就进行修改的编码密钥,安全地保护了任意两个站之间的交换。 根据另一个站的标识符、以固定方式记录在两个站中的参数和从一个 站到另一个站进行通信的改变数值,在每个站中独立地计算此密钥。\n此技术通过允许对编码密钥进行频繁的修改、避免此密钥在网 络上传送以及确保了发送和接收站中密钥更新的同步,增强了系统的 可靠性。但是,在每次更新时,需要在发送机和接收机中计算新的密 钥。这些计算所需的时间将对接收到消息之后要快速执行的操作造成 损害。具体地,当要进行解密和/或验证的消息后面跟随着其处理需 要知道在先的消息的其他消息时,而且当在先的消息和在后的消息之 间的时间间隔不足以获得这种知识时,这些时间将引起误操作。\n专利US-5,301,233公开了一种发送和接收个性化程序的方法。 每个程序均由加密了的元素组成,而且针对每个元素,包含预期接收 机的标识符。只授权预期接收机访问相应的元素。访问控制消息允许 接收机重构用于对预期元素进行加密的控制字。具体地,此消息包含 “服务密钥标识符”以及可选地包含利用识别出的服务密钥而获得的 签名。应用于控制字的这种可能的签名能够确认此字的有效性并忽略 其响应为否定的接收程序。未详细说明的密钥标识技术依赖于一组密 钥产生信息,在密钥标识符中包含有这组信息,例如,对于八个字节 的签名,密钥标识符占用了三个字节(col.5,I.42-52)。\n专利US-5,222,137涉及对加密无线电发射的加密密钥的动态选 择。在操作期间,具有密钥标识符和相应密钥的无线电装置与其他相 同的无线电装置进行通信。其发射和接收包括了未加密的密钥标识符 的加密信号。在每次发射之前,发送无线电装置自动选择一个密钥标 识符,并使用相应的加密密钥对要发射的消息进行加密。接收无线电 装置通过接收到的密钥标识符确定所使用的加密密钥,并利用该加密 密钥对消息进行解密。这样,由于此方法通过修改每次发送时所使用 的密钥,能够确保对内容的动态保护,增强了保密级别。\n但是,其需要足够的操作容量和存储器空间来处理所接收到的 每条消息。在必须快速得到信息并且消息的大小比较大的情况下,尤 其是对于将服务发送到独立的接收机的情况下,这种状况可能会引起 延迟,甚至触发可能会导致信息丢失的存储器擦除机制。\n参考文献WO-00/79734涉及一种在网络上接收来自广播源的广播 的系统和方法。特别地公开了一种包含会话描述和可选的验证头的通 知,所述会话通知最好具有验证和完整性部分。\n并未规定特定的机制来改进加密和验证可靠性。\nISBN:0-8186-2105-2,1990年12月3~7日,美国,亚利桑那州, Computer Security Applications Conference,Proceedings of the sixth annual Tucson,IEEE Comput.Soc.,美国,1990年12月3日, 20~29页,Matt Bishop的文章“A Security Analysis of the NTP Protocol Version 2”涉及一种通过网络时间协议(NTP)在因特网 上提供精确时间服务的方法,并具体地公开了适当的保密机制。显然 地,描述了原有的验证和分组完整性机制。据此,在选择验证模式时, 在网络中从对等的发送机向对等的接收机发送的同步消息可以包括参 考验证密钥和算法的索引。每个对等端与惟一的密钥相关联或者不与 任何密钥相关联。于是,将对等发送机设计成或者在确定的情况下使 用给定的密钥,或者在其他确定情况下使用接收对等端的密钥,否则, 如果有效对等端的密钥不可用,使用给定的缺省密钥。\n预定密钥改变方法与因特网上的同步极其相关,但在其他环境 下,缺少灵活性,尤其是对于广播消息。\n专利申请WO98/43431公开了一种将数据从多个源下载到MPEG接 收机/解码器中的方法,其中,可以下载交互应用程序,并在MPEG接 收机/解码器上运行。应用程序代码被设计为针对各个应用程序的模 块,而且事先发送目录表能够规定模块的表标识符。该目录表也包括 已加密的签名以及与相关发送源用于对签名进行加密的专用密钥相关 的密钥标识符。由于在接收机/解码器中存储有多个公共加密密钥, 从而可以由不同的源创建应用程序。\n此公开专注于使接收机灵活地适应多个源,以便对接收到的消 息进行验证。但是,并未给出改进每个源的验证可靠性的任何机制。\n发明内容\n本发明涉及一种保密设备,用于保护要在网络上发送的消息, 并且依赖于可修改编码密钥的使用,所述保密设备能够以灵活的方式 修改此密钥,而不需要通过网络进行传输,对消息的发送机和接收机 中的密钥更新进行同步,以及非常快速地进行密钥的改变,同时也能 够避免延迟或不利的存储器空间需求。\n此外,可以按照较为经济的方式实现本发明的设备,而不需要 调用高级算法来更新密钥。\n本发明也涉及一种用于识别通过网络接收到的消息的设备,能 够获得上述优势。\n本发明还应用于一种消息发送机,所述消息发送机包括一个或 多个按照本发明的保密设备;一种消息接收机,所述消息接收机包括 一个或多个按照本发明的识别设备;以及一种计算机程序产品、一种 消息和相应的保密和识别方法。\n在下面,采用了以下命名:\n-“验证”,涉及确保通过网络传输的消息的原始性和完整性 的过程,依赖于包含在消息中、在发送消息前通过密钥所产生的数字 签名的使用,\n-“加密”,以照原样不能利用的难以理解的文字替代明文的 过程,\n-“解密”,以明文替换密文的过程,通过将密文还原成初始 形式获得,\n-“编码”,从消息或部分消息中确定密文的过程,此密文或 者用作明文的替代(加密),或者用作签名(验证),\n-“解码”,从密文至少部分重构明文的过程,或者证明包含 文本的消息的原始性和完整性(验证),或者以明文代替密文(解密),\n-“保密”,为了验证或加密的目的,对消息或部分消息进行 编码的过程,\n-“标识”,利用在消息中接收到的密文识别此消息的过程, 或者通过其原始性和完整性(验证),或者通过其内容(解密);\n本发明大体上应用于使用电子签名/验证和/或使用加密/解密的 保密方法。其依赖于对发送时的编码密钥和接收时的编码密钥和/或 解码密钥的使用,解码密钥应用于解密,而解码密钥和/或编码密钥 应用于验证。\n本发明应用的一个有利领域是数字电视,特别是用于广播视听 数据、PSI(程序特定信息)、SI(服务信息)、交互数据、信令数据 或专用数据的数字电视。具体地,某些数字广播网络和具有返回频道 的某些网络,尤其是陆地或微波频率网络易于受到侵犯,尤其是欺骗。 侵犯可能在于,截获数据、修改数据以及将修改后的数据广播或注入 到网络中。特别有用的应用涉及电子商务和家庭银行(home banking)。\n为此目的,本发明的主题是一种保密设备,用于保护想要在网 络上从发送机向包括控制装置的至少一个接收机发送的消息,所述控 制装置通过可修改的当前标识密钥,对消息的识别进行控制。所述保 密设备包括:\n-控制单元,通过可修改的当前编码密钥,对每个消息的至少 一部分的编码进行控制,\n-改变单元,用于改变当前的编码密钥,被设计为从可用编码 密钥的预定集合中选择此密钥,与所述发送机相关联,此改变单元在 分派任何消息或给定类型的任何消息时,授权对密钥的改变,\n-以及记录单元,用于在消息中记录密钥标识符,使接收机能 够从与可用编码密钥的预定集合相对应的可用标识密钥的预定集合中 选择当前标识密钥,此密钥标识符使接收机能够以当前标识密钥对应 于当前编码密钥的方式修改当前标识密钥。\n所述保密设备包括控制装置,控制将通过当前编码密钥对每个 消息进行编码的结果而组成的签名加到这部分消息上,而且所述消息 是服务通知消息。\n措辞“服务通知消息”应当被理解为意味着在服务的框架内上 行发送的消息,给出了与此服务的一个或多个其他消息的顺序发送相 关的信息和指令。这些其他消息是内容的承载(“内容消息”)或者立 即触发指令的承载(“触发”)。在实施例的有利形式中,服务通知消 息包括SAP格式(表示会话通知协议)的头和SDP格式(表示会话描述 协议)的净荷。\nATVEF规范(也就是说根据高级电视增强论坛标准)在服务通知 消息中设置了可选出现的验证字段。这在参考文献WO-00/79734中也 进行了公开。\n如上所述,措辞“标识”密钥指定了分别与所述保密设备所使 用的编码密钥相关联的解码或编码密钥。对于解密,标识密钥的集合 是解码密钥的结合,每个解码密钥具有与用于加密的相应编码密钥相 同的长度。\n对于验证,此集合由分别根据传输上相应的编码密钥而产生的 解码密钥、编码密钥或两类密钥的组合构成。于是,由接收机所使用 的每个标识密钥,尤其是编码密钥最好具有实质上比保密设备用于产 生签名的相应编码密钥小的长度。具体地,不需要完全解密或重构签 名:部分一致就足以确信消息的真实性。从而,简化了验证操作,而 且对于由编码密钥组成的标识密钥,通过并不向接收机广播用在发送 上的完整编码密钥,降低了欺骗性地产生签名的风险。\n简单标识符的发送就足以在接收机中以准瞬时的方式精确地获 得想要的标识密钥。通过分别在发送端和接收端事先记录可用密钥的 两个相应集合以及对这些密钥的索引获得此结果。但是,出乎意料的 是,与现有技术参考文献US-5,222,137中相同,对所发送的信息的保 护并不依赖于对内容消息的加密以及在相同的发送/接收系统(无线 电装置)中同一集合密钥的出现。本发明的保密设备实际上实现了在 可以是完全不对称的发送和接收设备之间,应用于服务通知消息的验 证方法。\n由于用在交互电视领域中的格式,尤其是针对ATVEF和MHP(多 媒体家庭平台)的格式,并不支持在服务通知消息中并入能够计算通 知消息的签名的密钥标识符的可能性,本发明的设备是更加难以想象 的。这样,在ATVEF的示例中,正在进行的关于会话通知协议的RFC(草 案)文件RFC2974规定可以通过计算通知消息上的签名来签署服务通 知消息,而不需要任何与其验证相关的信息。\nMHP标准规定了验证应用程序和广播数据的方式以及保护传送到 返回信道上的数据的方式。但是,其并未提供任何对信令消息的验证, 而信令消息实现服务通知消息的功能。\n因而,本发明的设备从根本上与关于本主题的已有知识背道而 驰。\n此解决方案能够在服务失效时,避免在接收机级毫无必要地允 许所通知的服务的消息、内容消息型消息或触发型消息。这样,使接 收机更小,削减了对操作和存储器空间的过度消耗,而并不危及系统 的可靠性和保密性。\n此外,对内容消息的加密提供了额外的可能性,在特定的情况 下,可能证明是需要的,而在大多数情况下并不是不可或缺的。在不 出现这种加密的情况下,不仅相对于未经授权的服务(未验证服务通 知消息),而且相对于已证实服务,避免了处理成本和存储器空间成 本。\n本发明的设备授权在发布任何消息或给定类型的任何消息时改 变密钥。在指示密钥的第一种形式中,密钥标识符与可能形成密钥修 改主题的任何消息相邻。于是,根据此标识符,系统地选择接收侧与 此指示符相对应的密钥,并用于标识。在指示密钥的第二种形式中, 利用密钥修改二进制指示符实现密钥标识符。在接收时,则将当前的 标识密钥保存在存储器中,直到密钥改变指示符发出改变密钥的信号 为止。在标识密钥的第三种形式中,只在实际改变密钥的情况下指定 密钥标识符。否则,以缺省值(例如0)代替密钥标识符,发出先前 所使用的密钥仍然有效的信号。此第三种经济形式在向总在接听消息 并未漏掉任何消息的一组接收机发送消息的情况下是有利的。尤其可 以应用在网络上的组播中。\n在考虑到改变的频率和所执行的密钥选择时,可以按照多种方 式确定密钥标识符。这样,在第一种形式的改变中,当发送侧的用户 请求时,改变密钥标识符,这样,用户就可以确定变化和所选择的新 密钥的出现。在第二种形式的改变中,按照用户所选择的周期,周期 性地修改密钥标识符,并且随机得出新的标识符。在第三种形式的改 变中,在随机选择、但以位于最小持续时间和最大持续时间之间的持 续时间所间隔的时刻,按照预定的数值序列,修改标识符。在第二和 第三种形式的改变中,用户最好采用能够以任何方式、在任何时刻修 改当前密钥的系统。\n传输侧和接收侧的密钥可以是专用的或公共的。优选地,传输 侧的密钥是专用的,从而保证发送方的身份,而接收侧的密钥最好是 公共的。此外,在使用服务的顺序内容消息的加密的辅助保密的情况 下,接收侧针对此加密的密钥最好是专用的,从而保证消息的机密性。\n优选地,编码控制单元调用其中存储了可用编码密钥的编码库。\n可用标识密钥的预定集合最好是解码密钥的集合。\n此外,优选地,要编码的部分消息由完全减去了签名的消息组 成,包括密钥标识符。这样,验证不仅涉及发送方的身份和消息的净 荷,而且更为一般地涉及包含在消息中的所有信息,包括涉及标识密 钥的选择,和涉及接收机级的任意操作参数。\n在实施例的优选形式中,本发明的保密设备能够对消息进行加 密,最好将此功能应用于跟随在已验证的服务通知消息之后的内容消 息。于是,有利的是,按照与用于验证服务通知消息的模式相类似的 模式对加密密钥进行标识。优选地,要加密的每个消息都包括头和净 荷,编码控制单元被设计为控制:\n-对要通过当前的加密密钥进行加密的部分消息的编码,此部 分至少包括部分净荷,\n-以及通过加密信息对这部分消息的替换,所述加密信息由通 过当前的加密密钥对此部分进行编码的结果构成。\n在这种形式的实施例的变形中,以如下方式产生对跟随在已验 证的服务通知消息之后的、要加密的服务消息的二级编码:\n-利用从可用密钥的第一集合中选择的当前加密密钥加密,\n-然后,利用从可用密钥的第二集合中选择的当前验证密钥签 名,针对验证的编码最好应用于减去了签名的整个消息,包括已加密 部分。\n按照应用的一种优选形式,至少从ATVEF通知消息和/或系统通 知消息中选择服务通知消息。\n服务的每个ATVEF通知消息后面跟随着至少一个HTTP(按照超文 本传送协议方法)内容消息,然后跟随一个或多个服务触发。通常为 专用和组播的服务系统通知消息后面跟随着服务的二进制文件。后一 个通知消息最好具有与ATVEF通知消息的形式相类似的形式。在2000 年10月23日递交的No.00402921.1及其PCT递交号EP/01/12333的欧洲 专利申请中可以找到涉及除ATVEF通知消息之外的其他服务通知消息 的使用的详细描述。\n对于具有可变长度的验证字段的每个服务通知消息,记录单元 最好被设计为记录验证字段中的密钥标识符。由于其能够非常灵活地 应用已经设置在服务通知消息中的字段,而不必增加特定字段,此实 施例的优点在于其简单性。\n在除了ATVEF和系统通知消息之外的优选形式的应用中,至少从 MHP信令消息中选择服务通知消息。\n按照识别密钥的第一模式,每个密钥标识符与可用编码密钥中 确定的一个相关联,而且与可用标识密钥中与此编码密钥相对应的确 定的一个相关联。\n因而,通过所选择的密钥标识符,以一对一的方式给出了要用 在接收侧的密钥。此实施例在保证消息的原始性和完整性上能够快速 地获得成功。\n按照识别密钥的第二模式,每个密钥标识符与可用编码密钥的 集合中确定的编码密钥块相关联,而且与可用标识密钥的集合中分别 与编码密钥相对应的确定的标识密钥块相关联。\n因而,所选择的密钥标识符不能使接收机立即知道要使用的标 识密钥。其不得不连续地测试预期块中的多个密钥,直到找到合适的 那个为止。因此,这种模式的实施例以增加验证或解密的复杂性和持 续时间为代价,提供了防止侵犯的额外保护。\n优选地,记录单元被设计为从位于8和12之间,最好等于10的多 个数值(可能对应于密钥或密钥块)中选择密钥标识符。在确保了增 强保密性的其他实施例中,数值的这个数目等于256(在一个字节上 对标识符编码)或者甚至为65536(在两个字节上编码)。\n此外,最好可以更新发送侧和接收侧的密钥。例如,标识密钥 的集合被设置为通过接收机到服务器的连接、接收机的标识和通过网 络对标识密钥表的安全恢复进行远程修改。\n本发明也应用于一种消息的发送机。按照本发明,所述发送机 至少包括依照本发明的实施例的任一模式的一个保密设备,此发送机 最好被设计为通过广播发送消息。\n措辞“广播”表示向一组目的地发送相同的数据,尤其是通过 无线电广播、电缆或因特网来进行。\n本发明也涉及一种用于识别通过网络接收到的消息的设备,每 个消息均包括通过可修改的当前编码密钥编码了的部分。所述识别设 备包括:\n-控制单元,通过可修改的当前标识密钥,对已编码的部分的 识别进行控制,\n-以及提取单元,用于从此消息中提取出密钥标识符,使其能 够以当前标识密钥对应于当前编码密钥的方式,从与可用编码密钥的 预定集合相对应的可用标识密钥的预定集合中选择当前标识密钥,\n所述标识控制单元是对已编码的部分的验证进行控制的单元, 所述已编码的部分是当前签名,而且所述消息是系统通知消息。\n用于识别消息的所述设备最好能够识别通过依照本发明的保密 设备的实施例的模式之一的保密性地进行保护的消息。\n本发明也应用于一种消息的接收机。按照本发明,此接收机至 少包括一个依照本发明实施例的模式之一的识别设备。此外,此接收 机最好被设计为接收来自依照本发明的消息发送机的消息。\n本发明的目的也是一种计算机程序产品。按照本发明,此产品 包括依照本发明实施例的模式之一,实现用于保护消息的保密设备的 单元或者用于识别消息的设备的单元的功能性。\n措辞“计算机程序产品”应当被理解为意味着计算机程序介质, 不仅可以由盘或磁带等包含有程序的存储空间组成,而且可以由电或 光信号等信号组成。\n本发明还涉及一种要在网络上向至少一个接收机发送的服务通 知消息。所述消息包括:\n-通过各自至少一个可修改的当前编码密钥编码了的至少一部 分,\n-以及至少一个密钥标识符,分别使其能够从可用标识密钥的 至少一个预定集合中选择至少一个当前标识密钥,当前标识密钥分别 能够识别已编码的部分。\n所述已编码的部分是签名。此外,该消息也包括补充所述密钥 标识符的密钥修改二进制指示符,使其能够发出密钥改变的信号,从 而可以将当前标识密钥保存在存储器中,直到所述密钥修改指示符发 出密钥改变的信号为止。\n最好通过用于保护消息的保密设备获得此消息,而且此消息最 好被提供给依照本发明实施例的模式之一的用于识别消息的设备。\n本发明的另一方面是一种用于保护要在网络上从发送机向至少 一个接收机发送的消息的保密方法,所述至少一个接收机包括了通过 可修改的当前标识密钥对识别进行控制的装置。所述保密方法包括:\n-选择步骤,从与所述发送机相关联的可用编码密钥的至少一 个预定集合中选择当前编码密钥,使其能够对每个消息的至少一部分 进行编码,在发送任意消息或给定类型的任意消息时,授权对密钥的 改变,\n-记录步骤,在此消息中记录密钥标识符,使接收机能够从与 可用编码密钥的预定集合相对应的可用标识密钥的预定集合中选择当 前标识密钥,此密钥标识符使接收机能够以当前标识密钥对应于当前 编码密钥的方式修改当前标识密钥,\n-以及编码步骤,通过当前编码密钥,对要编码的部分消息进 行编码。\n所述编码步骤在于,产生此部分的签名,以及所述消息是服务 通知消息。\n最好通过依照本发明实施例的模式之一的用于保护消息的保密 设备实现此用于保护消息的保密方法。\n本发明还涉及一种用于识别通过网络接收到的消息的方法,每 个消息均包括通过可修改的当前编码密钥编码了的部分。所述识别方 法包括:\n-提取步骤,从此消息中提取出密钥标识符,通过所述密钥标 识符,从可用标识密钥的预定集合中选择当前标识密钥,所述当前标 识密钥对应于当前编码密钥,\n-以及识别步骤,通过当前标识密钥,识别已编码的部分。\n所述已编码的部分是签名,而所述消息是服务通知消息。\n最好通过依照本发明实施例的模式之一的用于识别消息的设备 实现此用于识别消息的方法。\n附图说明\n参照附图,通过以下绝非限制的示例性实施例和实现方式,将 更好地理解和描述本发明,其中:\n图1是本发明消息发送机和接收机的原理图,实现了选择密钥第 一种形式;\n图2详细地示出了图1所示发送机实施例的第一模式,可用于验 证;\n图3示出了由图2所示的发送机发送的、包含验证字段的ATVEF服 务通知消息的内容;\n图4详细地示出了图3所示的验证字段的内容;\n图5示出了由图2所示的发送机所产生的消息的中间版本的内 容,装入了验证字段;\n图6示出了无线电广播型广播装置的集合,由中央服务器控制, 包括了图2所示的发送机;\n图7详细地示出了图1所示接收机实施例的第一模式,与图2所示 的发送机相结合,可用于ATVEF服务消息的验证,但尤其可用于系统 服务消息的验证和描述;\n图8详细地示出了图1所示发送机实施例的第二模式,可用于组 合的加密和验证;\n图9示出了由图8所示的发送机发送的、包含验证字段和加密字 段的ATVEF服务通知消息的内容;\n图10示意性地示出了实现选择密钥的第二种形式的签名库,具 有密钥块,用作图1所示的发送机的变形;\n图11示意性地示出了与图10所示的库相对应的具有密钥块的验 证库,用作图1所示的接收机的变形;\n图12示出了由图2所示的发送机发送的、包含验证字段的ATVEF 服务通知消息的变形的内容;以及\n图13详细地示出了图12所示的验证字段的内容。\n附图被认为是构成公开的整体所需要的部分。\n在附图中,以相同的参考符号表示相同或相似的元素。此外, 所描述和示出的功能性实体并不需要对应于系统物理上分立的实体, 例如,可以由同一软件或同一部件的电路的功能组成。\n在图3到图5、图9、图12和图13中,所表示的数字以比特为单位 给出了所示出的消息中的字段分布。此外,后缀A和C用于指定验证实 体,后缀B用于指定加密实体,而后缀A′用于指定加密之后的验证实 体。\n具体实施方式\n发送和接收部件包括(图1)通过网络5向一个或多个接收机2发 送MSG消息的一个或多个发送机1。在以下详细描述的示例中,网络5 是广播单向传输网络,并且将集中讨论广播服务器(与发送机1相关 联)向多个用户(分别与接收机2相关联)进行发送的情况。为了简 单,将只针对一个发送机1和一个接收机2进行集中讨论。\n非常示意性地,设置发送机1以接收消息M0并通过加上想要在网 络5上传送的多个信息项以及适当的接收机2读取消息MSG和可能的 序列消息的多个信息项,将其转换为要发送的消息MSG。相应地, 设置接收机2从接收到的消息MSG中提取出由消息M0所表示的有意 义的内容。消息M0最好是特定类型的消息(服务通知消息),如以下 进一步详细描述的那样,发送机1和接收机2并不以相同的方式处理所 有类型的消息。\n发送机1具体地包括多种用于消息M0的变换的元件,具体的如:\n-记录单元14,用于记录许可,被设计为将许可标识符PERM 插入到消息M0中;这些标识符PERM能够向接收机2发送控制指令, 以便访问随后的多种功能;\n-保密设备3,用于安全地保护消息,定义对消息M0的至少一 部分进行编码(签名或加密)的审慎模式,触发这种编码,并将为接 收机2所设计的、使用了已编码部分的信息插入到消息M0中;在所选 择的示例中,在发送机1中,记录单元14位于保密设备3的上游;作为 变形,颠倒它们的位置,或者这两个子部件中的至少一个位于发送机 1的上游;\n-以及如动态连接库或DLL(动态连接库)等,包括编码模块17 的编码库15;按照惯例,将此编码库15分配给发送机1,尽管实际上 按照严格的意义来讲可能是发送机可以方便访问的程序。\n更精确地,编码库15配备有编码密钥K1、K2…Kn的索引表16, 编码模块17被设计成作为用于保护消息的保密设备3所给出的指令的 函数、根据一个编码密钥Ki进行编码。此外,保密设备3包括:\n-编码控制单元11,能够通过与编码模块17通信所需的信息, 尤其是与要使用的编码密钥Ki的选择相关的信息,触发编码模块17;\n-用于改变当前密钥的单元12,能够通过向编码控制单元11发 送相应的信息,修改所要使用的当前密钥Ki;例如,此单元12依赖于 利用用户直接干预的概率,对当前密钥Ki的随机修改(关于具体值 (occurrences)和所选数值);\n-以及用于在消息M0中记录密钥标识符KeyID的单元13,能够 提示接收机2注意所选择的当前编码密钥Ki;在所示出的示例中,此 记录单元13在相关类型的消息M0中,例行地执行对密钥标识符KeyID 的记录。\n类似地,接收机2具体包括:\n-用于读取所接收到的消息MSG中的许可标识符PERM的单元 24;\n-用于识别消息的设备4,定义识别(通过针对验证或解密的解 码/编码)消息MSG的已编码部分的相关模式,并触发这种识别;\n-以及标识库25,包括识别模块27,并且按照惯例,分配给接 收机2。\n更精确地,标识库25配备有与编码库15的编码密钥K1、K2…Kn 一一对应的标识密钥K’1、K’2…K’n的索引表26。识别模块27被设计成 作为消息识别设备4所给出的指令的函数、根据一个识别密钥K’i进行 识别。此外,消息识别设备4包括:\n-识别控制单元21,能够通过与识别模块27通信所需的信息, 尤其是与要使用的标识密钥K’i的选择相关的信息,触发识别模块27;\n-以及用于从消息MSG中提取出密钥标识符KeyID的单元23, 给出依照发送机2的当前编码密钥Ki所选择的当前标识密钥K’i。\n上面所给出的简要说明实质上是功能性的,尤其是以结合了用 于安全地保护和识别消息的部件的特定特征为中心。发送机1实际上 可以包括如参考符号15等几个保密设备,或者为相互组合。例如,消 息的安全保护与加密和签名相组合,和/或不同的设备分别应用于多 种类型的消息。类似地,接收机2可以包括几个识别设备。按照以下 特定实施例的示例,这些可能性将变得更加清楚。\n以参考符号1A表示的发送机1的实施例的第一模式应用于验证。 在此实施例中,发送机1A只对服务通知消息M0进行安全地保护和记 录许可标识符PERM的操作,并不对其他类型的消息(如内容消息和 触发等)进行这些操作。为了描述ATVEF通知消息或系统通知消息, 考虑服务通知消息,这两类消息在所考虑的示例中具有类似的结构。 通过网络5广播以MSG-A表示的所产生的消息MSG。\n此外,在所述示例中,编码密钥Ki(签名密钥)是专用密钥,而 标识密钥K’i(验证密钥)是可以发送给客户的公共密钥,包括可以 通过网络5发送(这时,最好对传输进行安全的保护)。作为更具体的 示例,签名密钥Ki具有596字节,而标识密钥K’i是148字节的解码密 钥,分别根据签名密钥Ki创建这些密钥,并进行传送,从而驻留在用 户侧。例如,签名和验证密钥的索引表16和26分别包括10个相应的密 钥。\n发送机1A实质上包括:\n-服务器驱动器系统31,参考符号为31A,包括用于改变当前 密钥的单元12、用于记录密钥标识符KeyID的单元13和用于记录许可 标识符PERM的单元14;此驱动器系统31A被设计成从信息源10接收 消息M0,并产生包含有针对验证的密钥标识符KeyID(以KeyID[SGN] 表示)和许可标识符PERM但并不包含签名的消息M1;\n-广播服务器32A,具体包括用于控制服务器32A的所有元件的 操作的控制单元37(为了简明,在图2中未示出连接)和被设计成收 集来自驱动器系统31A的消息M1的数据库33;此广播服务器32A设计 用于将消息M1转换为消息MSG-A;\n-以及编码库15,以验证库15A的形式出现。\n广播服务器32A也包括连续作用在消息M1上的两个模块:完成 模块35和封装模块36。完成模块35,包含有以验证控制单元11A的形 式出现的编码控制单元11,负责将补充信息(因特网地址、端口等) 记录在消息M1中,从而产生消息M2,并调用验证库15A,以便产生 签名SGN,并将其并入到消息M2中,从而,产生消息M3。在发送到 库15A的消息M2中的验证密钥标识符KeyID[SGN]的出现允许库15A 立即选择想要的密钥Ki,从而产生签名SGN。优选地,当前编码密钥 Ki保存在库15A中的存储器中。\n广播服务器32A向库15A转发签名,以及可以将当前的密钥Ki记 录在库15A中而不是服务器32A中,允许服务器32A保持一般特性。 再者,其允许驱动器系统31A和库15A一起保留对与密钥标识符 KeyID[SGN]和许可标识符PERM相关的操作的控制。此外,刚好在 广播服务器32A广播之前,在链的末端增加签名SGN,是有利的,由 于这样广播服务器32可以与大量的客户相连,而不需要重复签名库 15A和编码密钥Ki,而且由于可以集中对密钥标识符KeyID[SGN]的修 改。此外,在压缩和/或加密的情况下,在这些操作之后,使签名有 效。\n最好在整个通知消息M2上,包括头(具体包括标识符KeyID[SGN] 和PERM)和净荷,计算签名SGN,从而使其能够检测到对与当前签 名密钥KeyID[SGN]和许可相关的数据的任何外部修改(客户由此进 行验证)。\n封装模块36被设计成通过削减或增加在网络5上进行传送的层来 转换通知消息M3。在示出的示例中,模块36利用UDP(单向数据协 议)/IP/SLIP(串行线路IP)层产生IP(因特网协议)分组。对于内 容消息,模块36预先使用UHTTP(单向超文本传送协议)协议和MIME (多用途因特网邮件扩充)格式。\n这样签署的消息MSG-A允许每个客户验证所提供的服务的真实 性:如果客户将签名SGN识别为有效,他打开对随后的内容消息以及 可能的触发的信道(套接字)的监听。在相反的情况下,客户拒绝考 虑通知消息MSG-A。为了验证签名SGN,客户使用密钥标识符 KeyID[SGN],允许客户从相应的标识库25(验证库)中立即选择适 当的标识密钥K’i。这样,他可以快速地决定是否打开套接字,从而 避免错过随后到达的全部或一些内容分组。例如,当在通知消息之后 500ms,广播第一内容分组,极其重要的是,在这个时间间隔中已经 执行了所有签名验证和套接字打开操作。\n下面描述了发送机1A的特定实施方式。在此示例中,在组播IP 地址224.0.1.133、端口2670上广播ATVEF型的通知消息MSG-A,而 在组播地址235.0.1.113、端口32670上广播系统型的通知消息。每个 消息MSG-A(图3)都由以SAP-A标识的SAP格式的头和SDP格式的 净荷组成,头SAP-A包括以下字段:\n-SAP的版本V(3比特,V=1);\n-ARTEC(5比特),由5项组成:\n -地址类型A(0为IPv4协议,1为IPv6);\n -保留字段R(0);\n -消息类型T(0为会话通知分组,1为会话擦除分组);\n -加密字段E(对于“加密”:0为SDP未加密,1为SDP已 加密);\n -压缩C(0为未压缩净荷,1为压缩净荷);\n-以参考符号AUTH-A表示的验证字段AUTH的长度L-AUTH(8 比特无符号数值),并刚好插入在SDP之前,表示为32比特字;\n-散列(hash)标识符(因特网针对数字签名所使用的保护算 法)MSG ID HASH(16比特),当修改SDP字段时,必须改变散列值; 当此标识符等于0时,客户必须总是对SDP进行语法分析(解析);\n-以ORIG表示的发送机1A的IP地址(32比特的1个字),由此, 为广播服务器32A的IP地址;对于零值的散列标识符和未出现通过托 管服务器(代理服务器)的传递时,可以将此地址设置为0.0.0.0;\n-以及验证字段AUTH-A,其长度由参数L-AUTH确定。\n验证字段AUTH-A(图4)不仅包括128字节(作为系统限制的函 数而选择的大小)的签名字段SGN,而且包括占用了四个字节、由 ENT-A表示的特定验证头,包括以下子字段:\n-所使用的协议的版本V(3比特,V=1);\n-填充指示器P(1比特),用作可能的填充出现的信号,从而 得到其总长度是双字(32比特字)的倍数的验证字段;在现在的情况 下,P=0(没有填充),由于验证字段的总长度为132字节;\n-所使用的验证的类型TYPE(4比特);在此示例中,TYPE=0 (PGP格式,表示Pretty Good Privacy);\n-PERM许可标记(8比特);\n-将来使用的保留字段(8比特);\n-密钥标识符KeyID[SGN](8比特)。\n从而,头ENT-A包含对客户非常有意义的两个字节:字段 KeyID[SGN]和PERM,分别允许客户立即确定正确的验证密钥K’i, 和确定对于随后的服务消息(内容消息和触发)的适当许可。\n在所示出的示例中,以八数值掩码的形式利用可用于许可标记 PERM的字节。许可标记PERM涉及对以下功能的访问,与接收机2的 所谓关键资源相关(首先以十六进制符号给出验证数值):\n-0x0001:对接收机2的调制解调器进行访问,从而启动到与发 送机1相关联的服务操作器的在线服务器的连接;\n-0x0002:对接收机2的调制解调器进行访问,从而启动到任意 服务操作器的在线服务器的连接;\n-0x0004:使用在线服务器的安全连接;\n-0x0008:对接收机2的硬盘进行访问,从而从中读取数据,或 将数据永久地写入其中;\n-0x0010:对接收机2的闪速存储器进行访问,从而从中读取数 据,或将数据永久地写入其中;\n-0x0020:对接收机2的芯片卡进行访问,从而从中读取数据, 或将数据永久地写入其中;\n-0x0040:对接收机2的调谐器进行访问,从而修改当前的电台。\n在变形实施例中,以具有256个条目的表格的形式使用可用于许 可的字节,每个条目对应于惟一的许可级别。与上述示例中相同,获 得八种许可,可以相互组合。\n可以毫无困难地扩展许可的数目,具体地,可以通过将一字节 的保留字段并入到许可字段中(转换为16种许可)和/或通过将两个 双字而不是一个双字分配给验证字段AUTH-A的头ENT-A。\n在操作期间,驱动器系统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中接收此消息。\n于是,完成模块35确认头SAP1是否出现(如果没有出现,则加 上不具有签名的头),在M1中记录所需的补充信息(具有内容消息和 触发的地址和端口的SDP的所谓补丁),并调用库15A,作为自变量 传递包含有消息M1的缓冲存储器和缓冲器的大小。\n库15A执行以下操作:\n-确认许可标记PERM是否出现;如果出现,正常继续操作; 如果未出现,与错误代码一起返回广播服务器32A;在改进的版本中, 如果许可标记PERM未出现,则分配缺省掩码;\n-确认是否已经签署了服务通知消息M1;如果是,返回广播服 务器32A;\n-如果不是,将长度L-AUTH更新为132字节(0x21个双字), 添加和更新验证字段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;\n-以及返回广播服务器32A。\n接下来,在网络5上广播之前,封装模块36对这样获得的消息M3 进行封装。\n利用这种技术,每个服务只计算一次签名(在通知消息上计算), 无论要循环或单独(一次性)发送此服务。\n为了修改密钥标识符KeyID[SGN],例如,通过针对应用程序的 编程的端口或API(应用编程接口),向广播服务器32A发送消息,然 后,服务器32A只是将新的标识符数值通知给库15A-例如,每个月 例行地进行修改。\n在以下位于广播服务器32A的输入(M1)和输出(MSG-A)的 服务通知消息的描述性示例中,以位于方括号之间的黑体字表示头 SAP1,在验证字段(AUTH1、AUTH-A)的头(ENT1、ENT-A)的 下面划线,而以正常字符表示净荷(计数法为十六进制)。\n与L-AUTH=0x01、PERM=0x27相关联并且具有三个等于0x00的 保留字节的消息M1如下:\n00000000[2001 0000 53AA 0B8D 2700 0000]763D 300A …S…’…v=0.\n00000010 6F3D 2D20 3935 3530 3035 3931 3320 3935 o=-955005913 95\n00000020 3530 3035 3931 3320 494E 2049 5034 2031 5005913 IN IP4 1\n00000030 3732 2E33 302E 3930 2E31 3630 0A73 3D63 72.30.90.160.s=c\n00000040 6D6F 6E63 686F 6978 0A65 3D64 7570 6F6E monchoix.e=dupon\n00000050 7440 7468 6D75 6C74 692E 636F 6D0A 703D t@thmulti.com.p=\n00000060 2B31 2D36 3537 2D34 3733 2D34 3833 300A +1-657-473-4830.\n00000070 613D 6C61 6E67 3A65 6E0A 613D 7476 652D a=lang:en.a=tve-\n00000080 656E 6473 3A33 3030 0A61 3D74 7665 2D74 ends:300.a=tve-t\n00000090 7970 653A 7072 696D 6172 790A 613D 7476 ype:primary.a=tv\n000000A0 652D 6964 3A64 3631 3633 6164 612D 3766 e-id:d6163ada-7f\n000000B0 6164 2D33 6235 342D 6262 3839 2D66 3166 ad-3b54-bb89-flf\n000000C0 6161 3430 3736 6637 620A 6l3D 7476 652D aa4076f7b.a=tve-\n000000D0 7072 6F66 696C 653A 310A 743D 3020 300A profile:1.t=0 0.\n000000E0 6D3D 6461 7461 2032 3238 3530 2074 7665 m=data 22850 tve\n000000F0 2D74 7269 6767 6572 0A63 3D49 4E20 4950 -trigger.c=IN IP\n00000100 3420 3232 372E 3337 2E33 322E 3433 0A6D 4 227.37.32.43.m\n00000110 3D64 6174 6120 3232 3835 3120 7476 652D =data 22851 tve-\n00000120 6669 6C65 0A63 3D49 4E20 4950 3420 3232 file.c=IN IP4 22\n00000130 342E 3337 2E33 322E 3434 0A 4.37.32.44.\n在广播服务器32A对M0处理之后所得到的、与L-AUTH=0x21、 PERM=0x27和KeyID=0x07相关联的消息MSG-A如下:\n00000000[2021 0000 53AA 0B8D 2070 0007 6797 BE9E !..s...‘..g...\n00000010 7169 8F8D FDF1 B330 38FF 957c D0A2 B515 qi.....08..|....\n00000020 1F98 DABC CB04 9F03 0EB8 3D27 E5AA 047A ..........=‘...z\n00000030 35AF F2FF DC65 4F04 28E3 CA3F 948D 1D8A 5....e0.(..?....\n00000040 4540 D763 DB68 3ADD CAEF 5EB1 4116 F939 E@.c.h:...^.A..9\n00000050 7c29 862F E7B8 75c1 081c 3830 5A55 AEc2 |)./..u...80ZU..\n00000060 1031 62C0 E52D AC19 1CCF 7471 D28E 8997 .lb..-....tq....\n00000070 7F46 9473 4F2A B5EF 8047 2DE9 87EF A49E .F.sO*...G-.....\n00000080 4E90 5DB7 0981 COO1 DB17 F07F]763D 300A N.].........v=0.\n00000090 6F3D 2D20 3935 3530 3035 3931 3320 3935 o=-955005913 95\n000000A0 3530 3035 3931 3320 494E 2049 5034 2031 5005913 IN IP4 1\n000000B0 3732 2E33 302E 3930 2E31 3630 0A73 3D63 72.30.90.160.s=c\n000000C0 6D6F 6E63 686F 6978 0A65 3D64 7570 6F6E monchoix.e=dupon\n000000D0 7440 7468 6D75 6C74 692E 636F 6D0A 703D t@thmulti.com.p=\n000000E0 2B31 2D36 3537 2D34 3733 2D34 3833 300A +1-657-473-4830.\n000000F0 613D 6C61 6E67 3A65 6E0A 613D 7476 652D a=lang:en.a=tve-\n00000100 656E 6473 3A33 3030 0A61 3D74 7665 2D74 ends:300.a=tve-t\n00000110 7970 653A 7072 696D 6172 790A 613D 7476 ype:primary.a=tv\n00000120 652D 6964 3A64 3631 3633 6164 612D 3766 e-id:d6163ada-7f\n00000130 6164 2D33 6235 342D 6262 3839 2D66 3166 ad-3b54-bb89-flf\n00000140 6161 3430 3736 6637 620A 613D 7476 652D aa4076f7b.a=tve-\n00000150 7072 6F66 696C 653A 310A 743D 3020 300A profile:1.t=0 0.\n00000160 6D3D 6461 7461 2032 3238 3530 2074 7665 m=data 22850 tve\n00000170 2D74 7269 6767 6572 0A63 3D49 4E20 4950 -trigger.c=IN Ip\n00000180 3420 3232 372E 3337 2E33 322E 3433 0A6D 4 227.37.32.43.m\n00000190 3D64 6174 6120 3232 3835 3120 7476 652D =data 22851 tve-\n000001A0 6669 6C65 0A63 3D49 4E20 4950 3420 3232 file.c=IN IP4 22\n000001B0 342E 3337 2E33 322E 3434 0A 4.37.32.44.\n在发送机1A的特定结构中(图6),包括中央服务器45的服务操 作器的中央驱动器系统40通过专用链路(专线)46与广播装置41、42 和43相连。\n广播装置41~43中的每一个都包括上面详细描述过的32A类型的 广播服务器32和用于广播视听节目的设备47和参考符号为48的VBI编 码器,负责对来自服务器32和来自设备47的信息进行编码,并将其广 播到天线49。在操作期间,中央驱动器系统40从多个源(广播商、广 告商、内容提供商等)获得与要广播的服务相关的信息,排定广播, 并最终在广播之前,将其提供给广播服务器32。通过分别向广播装置 41到43传递数字证书51、52和53,特别地保证了公共密钥的真实性。 此中央驱动器系统40也实现上述驱动器系统31的功能,使得广播装置 41到43所广播的服务通知消息MSG可以有选择地得到许可,并通过 多个可变的密钥得到签署,并不引起接收侧对验证的不利延迟。\n每个接收机2具体包括(图7):\n-以参考符号61表示的VBI驱动器,被设计成从发送机1A(如 广播装置41到43)接收到、并包括字段WST(世界标准图文电视) 的信息中提取出净荷,计算出误码控制代码FEC(前向纠错码),并 控制对净荷的SLIP帧的解码;\n-用于对在网络5上传送的层解封装的模块62,能够从驱动器61 接收已解密的帧,并在解码之后,从中提取出IP/UDP帧的内容,对 于服务通知消息MSG,该内容的形式为SAP格式的头和SDP格式的净 荷;\n-浏览器63,设置有上述类型的识别设备4和许可读取单元24(分 别以参考符号4N和24N表示),\n-加载器67,设置有上述类型的识别设备4和可选的许可读取单 元24(分别以参考符号4C和24C表示),\n-以及上述参考符号25那种类型的验证库;密钥的索引表26以 库25的代码存储在接收机2的如闪速存储器型等的永久存储器中。\n浏览器63被设计成在接收到每个服务通知消息MSG-A时,执行 以下功能:\n-通过监听套接字64,恢复消息MSG-A的头和净荷;\n-通过将指向消息MSG-A的指针作为输入传递给它,调用库25 中的签名确认功能;\n-以及如果验证成功,通过应用由消息MSG-A的许可标记PERM 所指示的许可,从而规定访问要应用于广播应用的浏览器63的功能, 打开分别针对内容消息和随后的触发的监听套接字65和66。\n库25签名确认功能更为精确地执行以下操作:\n-在作为整体的没有签名的头SAP-A和净荷上计算散列MD5, 指示符L-AUTH给出将验证字段AUTH-A的长度设置为1;在与指示 签名计算相对应的变形中,对于验证,忽略验证字段AUTH-A,将指 示符L-AUTH设置为0;\n-恢复头SAP-A的验证字段AUTH-A中的密钥标识符 KeyID[SGN],并选择适当的验证密钥K’i;\n-通过借助于选中的密钥K’i重新计算签名的无用信息,确认 RSA型的验证字段AUTH-A的签名SGN;如果签名无效,返回数值0;\n-如果签名SGN有效,返回许可标志PERM。\n这样,除非在验证成功的情况下,否则忽略消息MSG-A的净荷。 在相反的情况下,针对所通知的服务的随后消息,并不打开监听套接 字,而用户不能监听到到达的数据。\n相对于通过监听套接字6S接收到的系统通知消息,加载器67的 操作是相似的:只有通过调用库25验证了消息,才针对随后的内容消 息,打开套接字69。\n以参考符号1B表示的发送机1的实施例的第二模式(图8)应用 于加密和验证的组合。此实施例与前一实施例的不同实质上在于在发 送机1B中加密元件的出现,与签名元件互补,并被设计成作为签名 元件的上游。加密元件和签名元件分别依赖于从密钥的两个索引表16 (图1)中选择两个当前编码密钥,以及分别调用上面以普通方式描 述的编码库15的类型的加密库15B和签名库15A’。接收机2包括与加 密密钥的索引表相对应的索引解密表,这些解密密钥最好是专用的。 例如,索引加密和解密表每个包括10个密钥。\n这样,以参考符号31B表示的驱动器系统31包括用于改变当前密 钥的单元12和用于安全地保护加密(分别为12B和13B)和加密之后 的签名(分别为12A’和13A’)的消息的设备13。\n此外,以参考符号32B表示的广播服务器32包括完成和加密模块 34和位于模块34下游的签名模块38,完成和加密模块34包括加密控制 单元11B,而签名模块38包括签名控制单元11A’,控制单元11B和11A’ 是编码控制单元11的类型的。此服务器32B以与实施例的第一模式相 类似的方式,将以参考符号AUTH-B表示的验证字段AUTH并入到SAP 格式的头中。\n与实施例的前一模式相同,完成和加密模块34负载添加消息M1 中所需的补充信息,并调用加密库15B,从而通过向其发送加密密钥 标识符KeyID[CRYPT],对这样获得的消息M4进行加密。然后,库15B 的编码模块17(图1)执行对净荷的加密,但并不对头的初始数据或 验证字段AUTH-B进行加密。例如,随机产生密钥标识符 KeyID[CRYPT]。\n签名模块38被设计成从加密库15B接收由此加密得到的消息 M5,并特别地包括验证密钥标识符KeyID[SGN],并调用签名库15A’, 从而获得签署的消息M6。与实施例的前一模式相同,通过密钥标识 符KeyID[SGN]所给出的当前密钥,库15A’的编码模块17(图1)确定 并附加涉及整个消息M5的签名。\n封装模块36起到与先前相同的作用,能够获得以MSG-B表示的 要广播的消息MSG。\n作为示例(图9),消息MSG-B除了其净荷之外还包括以参考符 号SAP-B表示的SAP格式的头,所述SAP格式的头如下构成:\n-与实施例的第一模式相类似的字段V、ARTEC、L-AUTH、MSG ID HASH和AUTH-B;\n-加密密钥标识符KeyID[CRYPT](1个双字);\n-超时指示符TIMEOUT(1个双字),当对净荷加密时,以及当 通知消息的发送涉及代理服务器时,有用;\n-填充指示符P(1比特),在加密之前发出填充的信号;于是, 解密净荷的最后一个字节给出了增加的填充字节的数目;\n-以及随机字段(31比特),包含真随机数,并设计为在解密之 后丢弃。\n已加密字段的集合CRYPT由指示符P、随机字段和净荷构成,而 标识符KeyID[CRYPT]和字段TIMEOUT形成了未加密的加密头ENT- CRYPT。\n在可以应用于任意一对相关编码和标识库的变形实施例中(图10 和图11),编码库75包括编码密钥块B1、B2…Bn的索引表76来代替密 钥的索引表。每个块Bi本身包括几个密钥Ki,1、Ki,2…Ki,li,其数目可以 根据所考虑的块变化。类似地,标识库85包括标识密钥块B’1,B’2…B’n 的索引表86,每个块B’i包括分别与编码库75的块Bi的密钥Ki,1、Ki,2… Ki,li相对应的几个密钥K’i,1、K’i,2…K’i,li。\n因此,知道了密钥标识符KeyID也不能以一对一的方式确定编码 模块77针对编码所选择的密钥Ki,j,从而,不能确定库85的标识模块87 所使用的关联标识密钥K’i,j,而只能确定这些密钥分别属于的块Bi和 B’i。因而,必须连续测试标识块B’i的所有密钥,直到解密成功为止。\n按照标识符的变形结构,验证密钥标识符KeyID[SGN]和/或许可 标识符PERM在消息MSG的头中的验证字段AUTH的外部。这样,通 过将这些标识符包含在签名计算SGN中,而排除在验证字段AUTH (L-AUTH=0)之外,可以对用于验证的消息进行编码。\n在实施例的另一模式中(图12和图13),将许可标记PERM放置 在净荷字段中。按照所描述的示例,以参考符号MSG-C表示的所产 生的服务通知消息MSG包含以SAP-C表示的SAP格式的头,没有许 可,但在验证字段AUTH-C的头ENT-C中具有两个字节的保留字段。 以SDP-C表示的SDP格式的净荷包括两个字节的许可标记PERM,例 如,位于字段的开始。许可字段需要比头空间更多的净荷空间,由于 现在要求写入文本和许可字段标识卷标,而不是二进制格式。\n现在,将对在满足MPEG-2标准的网络上,在MHP标准的数据的 数字广播中的示例性应用进行详细的描述。此示例涉及MPEG-2标准 (ISO/IEC 13818-1)中所规定的PMT表(节目映射表)和AIT表(应 用信息表)的保护,MPEG-2标准禁止散列PMT表。针对所述机制, 建立根确认授权,其他确认授权任选。\nPMT表构成了用于发出交互或其他服务的信号的重要入口点。 在交互MHP应用的情况下,PMT表包含传送AIT表的流和传送代码和 应用数据的流的位置(指向DSM-CC DSI的指针,“Digital Storage Media-Command and Control”与“Digital Speech Interpolation”标 准)。\n对信令的保护基于散列代码、签名和证书。通过引入分别以 hash_descriptor、signature_descriptor和certificate_descriptor表示的三 个新的描述符,完成对这些密码消息的编码。\n第一描述符hash_descriptor可以放置在AIT或PMT表的第一或第 二循环中。在特定的循环中,根据指针所指向的描述符,计算散列代 码。下一级次的描述符循环可以包括较低级次的散列代码。例如,通 过以下参数定义hash_descriptor的语法:\n-digest_count:16比特数值,确定在此散列描述符中预处理数 值(摘要数值)的数目;\n-digest_type:8比特数值,确定可能用于相关描述符的预处理 算法;从以下数值中选择授权数值:\n-0:预处理长度0,未验证;\n-1:预处理长度16,如参考文献RFC 1321中所定义的散 列算法MD5;\n-2:预处理长度20,如参考文献FIPS-180-1中所定义的 散列算法SHA-1(“Secure Hash Algorithm”的SHA标准);\n-其他:保留;\n-descriptor_count:16比特数值,确定与预处理数值相关联的 描述符的数目;此数值必须大于零;\n-descriptor_pointer:确定形成了散列计算的一部分的描述符的 指针;\n-descriptor_tag:descriptor_pointer参数所指向的描述符的标 签;\n-digest_length:整数值,给出了每个预处理数值中的字节数; 其依赖于上述相对于digest_type参数所表示的预处理类型;\n-digest_byte:8比特数值,包含预处理数值字节。\n于是,hash_descriptor描述符的语法写为:\nhash_descriptor(){\n descriptor_tag 8 uimsbf\n descriptor_length 8 uimsbf\n digest_count 16 uimsbf\n for(i=0;i<digest_count;i++){\n digest_type 8 uimsbf\n descriptor_count 8 uimsbf\n for(j=0;j<descriptor_count;j++){\n descriptor_pointer 8 uimsbf\n descriptor_tag 8 uimsbf\n }\n for(j=0;j<digest_length;j++){\n digest_byte 8 bslbf\n } } }\n对于第二描述符,signature_descriptor,使用以下参数(除了针 对hash_descriptor描述符已经定义的参数之外):\n-signature_id:此标识符使其能够采用几个授权的签名;\n-signature_length:表示了下一循环的长度;以及以下所述的 签名特定字段。\n在描述符循环中放置在第一hash_descriptor描述符前面的这个描 述符具有以下语法:\nsignature_descriptor(){\n descriptor_tag 8 uimsbf\n descriptor_length 8 uimsbf\n signature_id 8 uimsbf\n signature_length 8 uimsbf\n for(i=0;i<N;i++){\n 签名特定数据\n }\n}\n“签名特定数据”字段包含以下结构,以ASN.1(《Abstract Syntax Notation one》标准)DER规范语言表达:\nSignature::=SEQUENCE{\ncertificateIdentifier AuthorityKeyIdentifier,\nhashSignatureAlgorithm HashAlgorithmIdentifier,\nsignatureValue BIT STRING}\n其“signatureValue”字段给出了签名值(以比特串“BIT STRING” 的形式),此数值依赖于MHP规范的选择,而下面定义了其他的 “certificateIdentifier”和“hashSignatureAlgorithm”字段。\ncertificateIdentifier字段确定了承载有用于验证签名的已证明公共 密钥的证书。按照ITU-T(国际电信联盟-电信标准部分)扩展X.509[54] 针对AuthorityKeyIdentifier型字段进行定义。AuthorityKeyIdentifier的 结构具体包括可选密钥标识字段KeyIdentifier(KeyIdentifier型)。也 包括authorityCertIssuer(GeneralNames型)元素,其自身包括 “directionName”字段和authorityCertSerialNumber (CertificateSerialNumber型)元素,“directionName”字段具有承载 了所使用的公共密钥的证书的数值,authorityCertSerialNumber元素给 出了相应的序列号。这两个元素,必须填充在AuthorityKeyIdentifier 字段类型中可选的priori中。这样,我们有:\nAuthorityKeyIdentifier::=SEQUENCE{\nkeyIdentifier [0]KeyIdentifier可选,\nauthorityCertIssuer [1]GeneralNames可选,\nauthorityCertSerialNumber [2]CertificateSerialNumber 可选}\nhashSignatureAlgorithm字段确定了所使用的散列算法。由于在确 认密钥的证书的SubjectKeyInfo字段中已经对其进行了描述,这里并 不需要指定用于计算签名的加密算法。所设置的两个算法为MD5和 SHA-1,其结构如下:\nmd5 OBJECT IDENTIFIER::=\n{iso(1)member-body(2)US(840)rsadsi(113549)\ndigestAlgorithm(2)5}\nsha-1 OBJECT IDENTIFIER::=\n{iso(1)identified-organization(3)oiw(14)secsig(3)\nalgorithm(2)26}\n第三描述符certificate_descriptor能够构建CertificateFile文件,包 含证明串的所有证书,一直到包括根证书。在描述符的最初和最后分 别放置了叶证书和根证书,包括根证书只是为了一致性。在ETSI(欧 洲电信标准协会标准)标准TS 102 812 V1.1.1中定义了证书编码特征。\n放置在描述符串中的第一signature_descriptor描述符之前的 certificate_descriptor描述符包含承载单独的“证书”数据结构的 “certificate()”字段,正如ITU-T X.509标准所定义的那样。作为以下 参数的函数来表达描述符的结构:\n-signature_id:将证明绑定到特定签名上的标识符;\n-certificate_here_flag:1比特字段,表示在描述符中放置有证 书应当具有数值1,而且必须使用应用的证书,否则,必须定义绑定;\n-certificate_count:16比特整数,表示证书描述符中的证书数 目;\n-certificate_length:24比特整数,规定了证书中的字节数。\n从而,certificate_descriptor描述符的结构描述如下:\ncertificate_descriptor(){\n descriptor_tag 8 uimsbf\n descriptor_length 8 uimsbf\n signature_id 8 uimsbf\n certificate_here_flag 1 bslbf\n 保留 7 bslbf\n if(certificate_here_flag==1){\n certificate_count 16 uimsbf\n for(i=0;i<certificate_count;i++){\n certificate_length 24 uimsbf\n certificate()\n }\n }\n}\n所述方法能够保护PMT和AIT表不受侵犯操作。此外,在网络头 端中,可以发生对流的重新复用,以及由于网络设备,对PID标识分 组或事件PMT表内容进行修改。通过上述研究的方法允许这种重新 复用,只要验证了描述符的子选集,或者重新复用设备重新验证了修 改后的描述符。\n尽管上述描述的目的在于PMT和AIT表的验证,但所述方法也可 以应用于如PAT、CAT、NIT、SDT、EIT、SIT或DIT表等按照MPEG/DVB 标准所定义的任何其他类型的表。
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| | 暂无 |
1992-08-14
| | |
2
| | 暂无 |
1999-07-23
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |