CN100476683C - 用于处理数据的设备,接收器和解码器 - Google Patents
用于处理数据的设备,接收器和解码器 Download PDFInfo
- Publication number
- CN100476683C CN100476683C CNB02825029XA CN02825029A CN100476683C CN 100476683 C CN100476683 C CN 100476683C CN B02825029X A CNB02825029X A CN B02825029XA CN 02825029 A CN02825029 A CN 02825029A CN 100476683 C CN100476683 C CN 100476683C
- Authority
- CN
- China
- Prior art keywords
- key
- data
- receiver
- decoder
- equipment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000012545 processing Methods 0.000 title abstract description 16
- 238000000034 method Methods 0.000 claims description 71
- 238000007726 management method Methods 0.000 description 50
- 230000006870 function Effects 0.000 description 44
- 238000004590 computer program Methods 0.000 description 37
- 230000015654 memory Effects 0.000 description 21
- 238000004891 communication Methods 0.000 description 20
- 230000008569 process Effects 0.000 description 17
- 238000000429 assembly Methods 0.000 description 16
- 230000005540 biological transmission Effects 0.000 description 16
- 230000000712 assembly Effects 0.000 description 15
- 230000002452 interceptive effect Effects 0.000 description 15
- 230000004044 response Effects 0.000 description 14
- 239000000284 extract Substances 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000013500 data storage Methods 0.000 description 9
- 230000008859 change Effects 0.000 description 7
- 238000013508 migration Methods 0.000 description 7
- 230000005012 migration Effects 0.000 description 7
- 230000009471 action Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 6
- 230000006835 compression Effects 0.000 description 6
- 238000013473 artificial intelligence Methods 0.000 description 5
- 238000007906 compression Methods 0.000 description 5
- 238000012806 monitoring device Methods 0.000 description 5
- 238000010606 normalization Methods 0.000 description 5
- 239000003638 chemical reducing agent Substances 0.000 description 4
- 230000009189 diving Effects 0.000 description 4
- 238000005538 encapsulation Methods 0.000 description 4
- 238000011068 loading method Methods 0.000 description 4
- 238000005259 measurement Methods 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 230000008520 organization Effects 0.000 description 3
- 238000000926 separation method Methods 0.000 description 3
- 238000013475 authorization Methods 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000011049 filling Methods 0.000 description 2
- 239000004615 ingredient Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 108091026890 Coding region Proteins 0.000 description 1
- 241001269238 Data Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005314 correlation function Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002045 lasting effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N21/4437—Implementing a Virtual Machine [VM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/26606—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for generating or managing entitlement messages, e.g. Entitlement Control Message [ECM] or Entitlement Management Message [EMM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/418—External card to be used in combination with the client device, e.g. for conditional access
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/462—Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
- H04N21/4623—Processing of entitlement messages, e.g. ECM [Entitlement Control Message] or EMM [Entitlement Management Message]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/167—Systems rendering the television signal unintelligible and subsequently intelligible
- H04N7/1675—Providing digital key or authorisation information for generation or regeneration of the scrambling sequence
Abstract
公开了一种虚拟智能卡,一种虚拟管理器和用于处理数据的设备,包括:虚拟智能卡和/或虚拟管理器。
Description
技术领域
本发明涉及一种虚拟智能卡、一种虚拟智能卡管理器、用于处理数据的设备、一种条件存取系统、一种接收器/解码器、一种广播系统、一种处理数据的方法、一种产生密码密钥的方法、一种存储密码密钥值的方法、一种计算机程序产品、一种计算机可读介质和信号。本发明得出了与针对接收器/解码器的条件存储系统有关的特定应用。
背景技术
数字电视系统以数字形式而不是以模拟形式向观众传送电视信道。在发送器端,将数字信号编码成数字数据流,而在接收器端,使用数字接收器/解码器,对其进行解码。为了实现交互性,可以设置上行链路,或者通过传送电视信道的相同介质,或者通过入电话链路等不同的介质。可以或者也对如数字音频、软件和交互数据等其他类型的数据进行广播。在这里,术语“数字电视系统”包括如任何卫星、陆地、有线和其他系统。
这里所使用的术语“接收器/解码器”可以表示用于接收已编码或未编码信号的接收器,例如,电视和/或无线电信号,最好是MPEG格式的,可以由某些其他装置进行广播或传送。该术语也可以表示用于对接收到的信号进行解码的解码器。这种接收器/解码器的实施例可以包括与接收器集成在一起的解码器,用于对接收到的信号进行解码,例如,在“机顶盒”中,如与物理上分离的接收器一起起作用的解码器,或者包括附加功能的解码器,如网络浏览器、录像机或电视等。
术语MPEG表示由国际标准化组织工作组“运动图像专家组”开发的数据传输标准,尤其是但并不局限于针对数字电视应用而开发并在文件ISO 13818-1、ISO 13818-2、ISO 13818-3和ISO 13818-4中加以陈述的MPEG-2标准,以及MPEG-4和其他未来的MPEG标准。在本专利申请的上下文中,该数据包括对可应用于数字数据传输领域的MPEG格式的所有变体、修改或发展。
在已知的接收器/解码器中,可拆卸可连接的智能卡提供了秘密‘密码’(例如,对条件存储数据进行解码所需的主密钥或其他采用密钥等)的安全存储,并执行与秘密‘密码’有关的关键的密码操作。典型地,还使用专用智能卡读出器,提供了对需要使用智能卡的接收器/解码器的其他软件和硬件组件的标准(如果不灵活的话)接口。
在其他研发中,已经提出了针对接收器/解码器的系统,允许将接收到的视听内容存储在附加或包含在接收器/解码器中的大容量存储设备上(以及稍后进行回放)。许多这种系统为了安全性的原因,以加扰的形式存储视听内容,以及-主要是为了安全性的原因-使用如上所述的智能卡在回放期间,对内容进行解扰(以其中在对内容进行实时观看时使用智能卡的方式相类似的方式)。
发明内容
本发明致力于上述现有技术中所阐明的问题。
因此,在本发明的第一方面中,提供了一种虚拟智能卡。
这里所使用的术语“智能卡”尤其表示任何传统的基于芯片的便携卡类型的设备,例如,尤其用于执行密码操作的微处理器和/或存储器。这可以包括PCMCIA卡、SIM卡等。特别地,术语“智能卡”更多地倾向于暗示便携性和/或密码处理能力,而不是倾向于暗示特定的形状或尺寸,因此,具有可替换的物理形式的芯片设备,如经常使用在TV解码器系统中的钥匙形设备,也包括在此术语中。
优选地,以任意适当的组合,将此智能卡至少部分地设置在软件中,并可以至少部分地设置在硬件中。例如,可以以硬件实现在密码方案中普遍使用的随机数发生器,而以软件实现更多的管理功能。
通过提供虚拟智能卡,可以向否则将需要真实的物理的智能卡的系统提供了一定程度的灵活性。
同样以包括了虚拟智能卡的用于处理数据的设备的形式提供了此重要特征。这里所使用的术语“数据”优选地表示通常为已存储形式和信号(电信号等)形式的信息。优选地,由虚拟智能卡对数据进行处理。
还以包括用于仿真智能卡从而提供虚拟智能卡的装置(例如,处理器和相关存储器)的用于处理数据的设备的形式提供了此特征。
用于仿真智能卡的装置最好包括用于执行密码操作的装置(如,相同的或另外的处理器),以及用于存储密码数据的装置(如,相同的或另外的存储器)。最好选择用于执行密码操作的装置比等价于虚拟智能卡的真实智能卡中的对应装置快,可以产生相对于真实智能卡的性能改进;类似地,用于存储密码数据的装置最好比真实智能卡中的对应装置快或具有更大的容量,从而可以产生进一步的性能改进。例如,用于执行密码操作的装置可以是接收器/解码器主处理器,而用于存储密码数据的装置可以是与主处理器相关联的RAM。
这样可以实现在虚拟智能卡中仿真更为广泛的密码任务。此外,这样可以实现虚拟智能卡超越了传统智能卡的功能性,例如,在快进回放模式期间,实现了对内容的成功实时解扰(由于其对控制字进行解密的时间长度以及其花费在如普通权利管理等其他耗时操作上的时间量,传统的智能卡未能实现)。
在本发明的相关方面中,提供了一种虚拟智能卡管理器,可以实现虚拟智能卡更为有效的操作。具体地,虚拟智能卡管理器可以提供用于实现虚拟智能卡的功能性的抽象层。这里所使用的术语“管理器”优选地表示具有控制、接口和数据路由和/或处理功能中的至少一个的实体。
同样以包括虚拟智能卡管理器的用于处理数据的设备的形式,独立地提供了此重要特征。
所述设备最好包括用于与虚拟智能卡进行接口的装置,以简化对虚拟智能卡的管理。
同样独立地提供此重要特征。因此,在本发明的相关方面中,提供了包括用于与虚拟智能卡进行接口的装置的用于处理数据的设备。而且,优选地,由虚拟智能卡对数据进行处理。
优选地,上述设备包括用于与虚拟智能卡交换密码数据的装置。这种用于交换密码数据的装置可以包括用于向虚拟智能卡发送密码数据的装置,或用于从虚拟智能卡接收密码数据的装置,或者二者兼具。用于发送和接收密码数据的装置可以是事件和功能调用,例如,以下所描述的虚拟智能卡管理器和虚拟智能卡之间的那些。
因此,可以进一步有利于对虚拟智能卡的管理。
如果该设备还包括用于确定等价于虚拟智能卡的真实智能卡的存在的装置,则该设备最好还包括用于与智能卡的真实等价物交换密码数据的装置。可以将虚拟智能卡只实现为由虚拟智能卡的真实等价物所提供的特征的子集,反之亦然。通过确定等价于虚拟智能卡的真实智能卡的出现,可以可选地与其交换密码数据,可以提供针对数据的处理的另外的选项。
该设备可以包括用于选择智能卡的装置。对适当智能卡的选择可以增加系统的灵活性程度。
具体地,该设备还包括利用所选择的智能卡对数据进行解码的装置,用于选择智能卡的装置适合于与数据的特性相关地选择智能卡。例如,该特性可以是数据的商业重要性、数据的持续时间(优选地,作为测量时间)、数据的大小、或数据的分布程度。因此,可以提供更多的灵活性。
数据可以包括音频/视频或其他内容,如电子书本、软件、游戏等。这里所使用的“音频/视频”术语优选地表示音频或视频内容,或这二者的组合。在由接收器/解码器接收到的广播信号的上下文中,该数据可以包括字标题、图文电视、同步和与构成电视节目的音频和视频组件紧密相关地传送的其他数据。
该设备还可以包括用于选择净荷和包含了净荷的已加密数据之一的装置、用于存储所选择的净荷或已加密数据的装置、以及用于以净荷代替已存储的已加密数据的装置。例如,这可以对应于以下处理:当可用时,首先将密码密钥(典型地为针对所述密码周期(cryptoperiod)的控制字)存储在内容管理消息(CMM)中,否则存储包含密码密钥的已加密数据(典型地,相关的权利控制消息),然后,当密钥可用时,以相应的密钥随后替换已加密数据。
通过提供上述装置,可以避免不得不在存储时对净荷进行解密的要求(例如,如果在此时构造将最终包含净荷的特定数据单元)。
同样独立地提供此重要特征。
因此,在本发明的相关方面中,提供了一种用于处理数据的设备,包括用于选择净荷和包含净荷的已加密数据之一的装置、用于存储所选择的净荷或已加密数据的装置、以及用于以净荷代替已存储的已加密数据的装置。
如上所述,已加密数据可以是权利控制消息(ECM),具有控制字或对内容的给定部分进行解扰所需的字的净荷。因此,用于选择的装置最好适合于选择至少一个控制字和权利控制消息之一。
更为具体地,该设备最好还包括用于向智能卡发送已加密数据的装置和用于从智能卡接收包含在已加密数据中的净荷或表示不能对净荷进行解密的响应的装置。优选地,用于发送净荷和已加密数据之一的装置适合于在可用时选择净荷,否则选择包含净荷的已加密数据。这样可以提供另外的灵活性。
此外,该设备最好还包括用于存储和再现数据、与数据有关的净荷中的至少一个的装置。例如,数据可以是音频/视频内容,而净荷可以是包含了针对内容的特定部分的控制字的权利控制消息(ECM)。这样可以有用地将内容的存储或再现与内容的解扰(或需要使用智能卡的其他操作)集成在一起。
优选地,该设备还包括用于将已加密数据对象封装在另一已加密数据对象中的装置。这可以进一步增加已加密数据对象的安全性,并可以通过实现单一的接口和/或要提供的适当的抽象,进一步简化与客户进程之间的交换。此外,该设备最好还包括用于将权利控制消息封装在内容管理消息中的装置,其具有前述的好处。
优选地,该设备还包括用于以加密密钥对已存储净荷或已加密数据进行加密的装置。此外,该设备最好还包括用于以验证密钥对已存储净荷或已加密数据进行验证的装置。在以上两种情况下,均能够提供更高的安全性。
此外,该设备最好还包括用于以通信加密密钥对该设备与智能卡之间的通信进行加密的装置,以及优选地还包括用于以通信验证密钥对该设备与智能卡之间的通信进行验证的装置。这可以提供进一步的安全性。
例如,上述加密和验证密钥可以由与公用密钥密码一起使用的公用和专用密钥对构成。此外,为了方便,通信加密密钥可以等同于加密密钥或由加密密钥得到,类似地,通信验证密钥可以等同于验证密钥或由验证密钥得到。
该设备还可以包括用于建立至少一个会话的装置、以及用于将所述或每个会话与相应的会话标识符相关联的装置。这可以进一步有助于对智能卡或卡的管理。
该设备还可以包括用于利用主会话密钥产生加密/验证密钥,优选地为前述密钥的装置。优选地,用于利用主会话密钥的装置包括多样化功能,作为输入,接受原始主会话密钥和多样化值(优选地为整数),并作为输出,产生另一密码密钥。此外,最好选择该多样化功能,使得其针对多样化输入范围的输入最好实质上均为密码强有力密钥。对于公用/专用密码系统,多样化功能优选地采用素数的多种特性,以确保输出的密码强度。
这样可以简化这种加密/验证密钥的产生,尤其是在产生多个密钥的情况下。
同样独立地提供此重要特征。因此,在本发明的相关方面中,提供了一种用于处理数据的设备,包括用于存储密码密钥的装置、以及用于利用主会话密钥产生分别用于对已存储密码密钥进行加密和验证的加密和验证密钥之一的装置。
此外,加密/验证密钥可以与给定的会话相关,在这种情况下,用于利用主会话密钥的装置适合于利用相应的会话标识符使主会话密钥多样化。这样可以提供产生任意数目的密钥的系统而简便的方式。
该设备还可以包括用于使用加密/验证密钥对另一会话进行加密/验证的装置。例如,可以使用相同的密钥对HDVR和VMPS之间,以及CMPS和虚拟智能卡(均在以下进行描述)之间的会话进行加密和/或验证。这可以通过减少需要产生的密钥数来减少计算负担。
优选地,该设备还包括用于与接收器/解码器中的非密码数据相关地产生加密/验证密钥的装置。优选地,非密码数据对接收器/解码器是惟一的,或者与其他地方的相应的非密码数据不同。同样优选地,非密码数据具有除产生密码密钥之外的另外的用途,并且最好实际上是随机的(即,在一定程度上是不可预测的)。
这样可以实现这种加密/验证密钥的更快的产生。
同样独立地提供此重要特征。因此,在相关方面中,提供了一种用于处理数据的设备,包括用于与接收器/解码器中的非密码数据相关地产生密码密钥的装置。
优选地,该设备还包括随机数发生器、用于以非密码数据作为随机数发生器的种子的装置、以及用于与随机数发生器的输出相关地产生密钥的装置。这样可以提供利用已知的随机数发生器来产生密钥的有用途径。
优选地,该设备还包括:用于测量至少一个特性的装置,所述特性是随机、不可预测、时间变化和地理变化中的至少一个;以及用于与每个特性相关地产生密钥的装置。优选地,最好测量接收器/解码器的至少3、5、10、20或50个特性。这样可以有助于所得到的密钥的随机性。
具体地,用于产生密钥的装置可以适合于与由接收器/解码器接收到的比特流的特性、接收器/解码器中的硬件环境的特性、接收器/解码器中的软件环境的特性、以及接收器/解码器外部环境的可测量特性中的至少一个相关地产生密钥。例如,这种特性可以包括调谐器的误码率(BER)、信号电平、对接收器/解码器软件的特定部分的存取数、解谐射频(RF)接收器的输出等。
用于产生密钥的装置可以适合于在需要密钥之前,产生密钥,优选地,响应接收器/解码器的初始化或重新初始化(例如,在重新启动之后)。代替地或额外地,该设备还可以包括用于响应执行需要提供密钥的操作的命令的调用,产生密钥的装置。这些特征,组合或独立地,可以提供密钥产生中更多的灵活性。
优选地,这里所使用的术语“命令”表示对编程以执行特定功能的软件例程的物理显示,所述软件例程最好是存储器中的电脉冲的形式,或者以更为持久的形式,如,将例程记录在适当的数据载体上。优选地,由处理器立即执行对例程的显示,例如,被存储为对象代码。也可以对该术语进行扩展以涵盖对这种例程的实际调用,或者以执行该例程的物理实现指令的形式,或者作为涉及用于使该例程得到执行的实际信号,如远程过程调用(RPC)等。
该设备还可以包括用于存储加密/验证密钥,优选地为前述密钥的装置。这可以通过避免对重新创建这种密钥的需要,来改进系统的效率。此外,该设备还可以包括用于确定是否存储该密钥的装置,例如,如果该密钥对于可用的安全性等级是有价值的。这样可以改进系统的安全性。
优选地,该设备还包括用于将由其可以构成密钥的数据存储在相应的多个位置中的装置。密码数据可以不仅仅包括密码密钥值,而且例如,可以包括任意主密钥、密钥发生算法和密钥多样化器(如会话ID等)。同样,所述多个位置最好是不同的,而且不是彼此相邻的(至少部分),并且可以出现在任意数目的设备中,如广播中心、订户数据中心、智能卡、接收器/解码器等。此外,所述多个位置可以包括接收器/解码器中的EEPROM、RAM、闪速RAM、硬盘和智能卡中的任何一个。有利地,也可以将该数据至少部分地存储在设备自身中,可以减少数据的暴露。此外,通过多个位置而不是单一位置中的可以构成密钥的数据,可以改进如系统的安全性等。
同样独立地提供此重要特征。因此,在相关方面中,提供了一种用于处理数据的设备,包括用于将由其可以构成密钥的数据存储在相应的多个位置中的装置。
该设备可以包括用于将密钥分为多个部分的装置,以及用于将所述多个部分存储在相应的多个位置中的装置。用于分割的装置可以适合于将表示密码密钥的数据比特序列分为多个部分,每个部分均由较少数目的数据比特组成,并且用于存储所述多个部分的装置可以适合于将所述部分存储在特定存储介质中的不同地址处。优选地,所述部分由1、2、4、8、16、32或更多比特的倍数组成。优选地,所述部分中的至少两个,以及优选地所述部分中的全部具有相同的大小。
通过相对于密钥相对较大的大小,创建较小的部分(因此,难以被注意),可以更容易地隐藏密钥数据。
因此,用于存储的装置可以适合于将其至少部分地存储在接收器/解码器中。这可以简化存储,并降低对外部存储源的依赖性。
优选地,该设备包括用于选择多个位置从而在整个接收器/解码器中随机分布所述多个位置的装置。这再次有助于隐藏相关的密钥。同样优选地,用于存储的装置适合于将其存储在多个物理设备中,如上所述,具有相同的优点。
该设备还可以包括用于创建其中定位所述多个位置中的至少一个的基本上为随机数的区域的装置。由于有些时候,可以通过其显而易见的随机性来识别密码密钥,将密钥分量存储在基本上为随机数的区域中可以更为有效地隐藏密钥。
优选地,该设备还包括用于从相应的多个位置读取多个密钥部分的装置、以及用于对密钥部分进行组合以形成密码密钥的装置。优选地,用于对密钥部分进行组合的装置适合于执行对所述多个密钥的逆变换(例如,在线性代数变换的情况下的矩阵求逆)。这可以有利于已存储密码密钥的再现。
在相关的方面中,提供了一种用于处理数据的设备,包括处理器和相关联的存储器,所述处理器适合于仿真智能卡从而提供虚拟智能卡。
优选地,该设备还包括虚拟智能卡。该处理器也可以适合于执行密码操作,而该存储器可以适合于存储密码数据。
在另一相关的方面中,提供了一种用于处理数据的设备,包括处理器和相关联的存储器,所述处理器适合于与虚拟智能卡进行接口。
该处理器适合于与虚拟智能卡交换密码数据,并且也可以或可选地适合于确定与虚拟智能卡等价的真实智能卡的出现。优选地,该处理器还适合于与智能卡的真实等价物交换密码数据。
该处理器还可以适合于选择智能卡,并优选地适合于利用所选择的智能卡对数据进行解码,并且与数据的特性相关地选择智能卡。优选地,该处理器还适合于选择净荷和包含净荷的已加密数据之一,存储所选择的净荷和已加密数据,并以净荷代替已存储的已加密数据。
在本发明的相关方面中,还提供了一种用于处理数据的设备,包括处理器和相关联的存储器,所述处理器适合于选择净荷和包含净荷的已加密数据之一,存储所选择的净荷或加密数据,并以净荷代替已存储的已加密数据。
该处理器可以适合于选择至少一个控制字和权利控制消息之一。此外,该处理器可以适合于向智能卡发送已加密数据,并从智能卡接收包含在已加密数据中的净荷或表示不能对净荷进行解密的响应。优选地,该处理器适合于在可用时选择净荷,否则选择包含净荷的已加密数据。
该处理器可以适合于存储和再现数据,净荷与所述数据有关。该处理器适合于将已加密数据对象封装在另外的已加密数据对象中,此外可以适合于将权利控制消息封装在内容管理消息中。
优选地,该处理器适合于以加密密钥对已存储净荷或已加密数据进行加密,并可以适合于以验证密钥对已存储净荷或已加密数据进行验证。同样优选地,该处理器适合于以通信加密密钥对设备和智能卡之间的通信进行加密,以及可以适合于以通信验证密钥对设备和智能卡之间的通信进行验证。
该处理器适合于建立至少一个会话以及与该会话或每个会话相关联的相应会话标识符。该处理器优选地适合于利用主会话密钥来产生加密/验证密钥。
在相关的方面中,提供了一种用于处理数据的设备,包括处理器和相关联的存储器,所示处理器适合于存储密码密钥(优选地在相关联的存储器中),并利用主会话密钥来产生分别用于对已存储密码密钥进行加密和验证的加密和验证密钥之一。
优选地,该处理器适合于根据主会话密钥来产生加密密钥和验证密钥。更为优选地,该处理器适合于利用相应的会话标识符,使主会话密钥多样化,并可以适合于使用加密/验证密钥对另外的会话进行加密/验证。
该处理器优选地适合于与接收器/解码器中的非密码数据相关地产生加密/验证密钥。
在本发明的另一方面中,提供了一种用于处理数据的设备,包括处理器和相关联的存储器,所述处理器适合于与接收器/解码器的非密码数据相关地产生密钥。
该设备优选地还包括随机数发生器,所述处理器适合于利用将非密码数据作为随机数发生器的种子,并与随机数发生器的输出相关地产生密钥。
优选地,该设备还包括用于测量至少一个特性的检测器,所述特性是随机、不可预测、时间变化和地理变化中的至少一个,该处理器适合于与所述特性或每个特性相关地产生密钥。此外,该处理器可以适合于与由接收器/解码器接收到的比特流的特性、接收器/解码器中的硬件环境的特性、接收器/解码器中的软件环境的特性、以及接收器/解码器外部环境的可测量特性中的至少一个相关地产生密钥。
该处理器可以适合于在需要密钥之前,产生密钥;代替地或额外地,该处理器可以适合于响应执行需要提供密钥的操作的命令的调用,产生密钥。
该处理器可以适合于存储加密/验证密钥,以及优选地,适合于确定是否存储密钥。该处理器还可以适合于将由其可以构成密钥的数据存储在相应的多个位置中。
在本发明的另一方面中,提供了一种用于处理数据的设备,包括处理器和相关联的存储器,所述处理器适合于将由其可以构成密码密钥值的数据存储在相应的多个位置中。
该处理器优选地适合于将密钥分为多个部分,以及将所述多个部分存储在相应的多个位置中。该处理器优选地还适合于将其至少部分地存储在接收器/解码器中。此外,该处理器可以适合于选择多个位置,从而在整个接收器/解码器中随机分布所述多个位置。
该处理器优选地适合于将其存储在多个物理设备中,并且可以适合于创建其中定位所述多个位置中的至少一个的基本上为随机数的区域。该处理器还可以适合于从相应的多个位置读取多个密钥部分,并对数据进行组合以形成密码密钥。
在本发明的另一方面中,提供了一种接收器/解码器,包括前述设备。
在本发明的另一方面中,提供了一种条件存取系统,包括前述设备。
在本发明的另一方面中,提供了一种广播系统,包括广播中心和前述接收器/解码器。
在本发明的另一方面中,提供了一种广播系统,包括前述设备。
在本发明的另一方面中,提供了一种处理数据的方法,包括仿真智能卡,从而提供虚拟智能卡。
优选地,所述方法还包括提供虚拟智能卡。仿真智能卡的步骤优选地包括执行密码操作,并存储密码数据。
在本发明的另一方面中,提供了一种处理数据的方法,包括与虚拟智能卡进行接口。
所述方法优选地包括与虚拟智能卡交换密码数据,并且也可以或可选地包括确定与虚拟智能卡等价的真实智能卡的出现。优选地,所述方法还包括与智能卡的真实等价物交换密码数据。
所述方法还可以包括选择智能卡,并优选地包括利用所选择的智能卡对数据进行解码,并且与数据的特性相关地选择智能卡。优选地,所述方法还包括选择净荷和包含净荷的已加密数据之一,存储所选择的净荷和已加密数据,并以净荷代替已存储的已加密数据。
在本发明的另一方面中,提供了一种处理数据的方法,包括选择净荷和包含净荷的已加密数据之一,存储所选择的净荷或加密数据,并以净荷代替已存储的已加密数据。
选择步骤可以包括选择至少一个控制字和权利控制消息之一。此外,所述方法可以包括向智能卡发送已加密数据,并从智能卡接收包含在已加密数据中的净荷或表示不能对净荷进行解密的响应。优选地,所述方法包括在可用时选择净荷,否则选择包含净荷的已加密数据。
所述方法可以包括存储和再现数据,净荷与所述数据有关。所述方法包括将已加密数据对象封装在另外的已加密数据对象中,此步骤还可以包括将权利控制消息封装在内容管理消息中。
优选地,所述方法还包括以加密密钥对已存储净荷或已加密数据进行加密,并可以包括以验证密钥对已存储净荷或已加密数据进行验证。同样优选地,所述方法包括以通信加密密钥对设备和智能卡之间的通信进行加密,以及可以包括以通信验证密钥对设备和智能卡之间的通信进行验证。
所述方法可以包括建立至少一个会话以及与该会话或每个会话相关联的相应会话标识符。所述方法优选地包括利用主会话密钥来产生加密/验证密钥。
在相关的方面中,提供了一种处理数据的方法,包括存储密码密钥,并利用主会话密钥来产生分别用于对已存储密码密钥进行加密和验证的加密和验证密钥之一。
优选地,所述方法包括根据主会话密钥来产生加密密钥和验证密钥。更为优选地,所述方法可以包括利用相应的会话标识符,使主会话密钥多样化,并可以包括使用加密/验证密钥对另外的会话进行加密/验证。
所述方法优选地包括与接收器/解码器中的非密码数据相关地产生加密/验证密钥。
在本发明的另一方面中,提供了一种处理数据的方法,包括与接收器/解码器的非密码数据相关地产生密钥。
所述方法优选地还包括将非密码数据作为随机数发生器的种子,获得来自随机数发生器的输出,并与随机数发生器的输出相关地产生密钥。
优选地,所述方法还包括测量至少一个特性,所述特性是随机、不可预测、时间变化和地理变化中的至少一个,所述方法还包括与所述特性或每个特性相关地产生密钥。此外,所述方法可以包括与由接收器/解码器接收到的比特流的特性、接收器/解码器中的硬件环境的特性、接收器/解码器中的软件环境的特性、以及接收器/解码器外部环境的可测量特性中的至少一个相关地产生密钥。
所述方法可以包括在需要密钥之前,产生密钥;代替地或额外地,所述方法可以包括响应执行需要提供密钥的操作的命令的调用,产生密钥。
所述方法可以包括存储加密/验证密钥,以及优选地,还包括确定是否存储密钥。所述方法还可以包括将由其可以构成密钥的数据存储在相应的多个位置中。
在本发明的另一方面中,提供了一种处理数据的方法,包括将由其可以构成密码密钥值的数据存储在相应的多个位置中。
所述方法优选地还包括将密钥分为多个部分,以及将所述多个部分存储在相应的多个位置中。所述方法优选地还包括将其至少部分地存储在接收器/解码器中。此外,所述方法可以包括选择多个位置,从而在整个接收器/解码器中随机分布所述多个位置。
所述方法优选地还包括将其存储在多个物理设备中,并且可以包括创建其中定位所述多个位置中的至少一个的基本上为随机数的区域。所述方法还可以包括从相应的多个位置读取多个密钥部分,并对数据进行组合以形成密码密钥。
在本发明的另一方面中,提供了一种计算机程序产品,适合于执行前述方法。
在本发明的另一方面中,提供了一种计算机程序产品,包括虚拟智能卡。
在本发明的另一方面中,提供了一种计算机程序产品,包括用于模拟智能卡从而提供虚拟智能卡的装置。
用于模拟智能卡的装置优选地包括用于执行密码操作的装置和用于存储密码数据的装置。
在本发明的另一方面中,提供了一种计算机程序产品,包括虚拟智能卡管理器。
在本发明的另一方面中,提供了一种计算机程序产品,包括用于与虚拟智能卡接口的装置。
所述计算机程序产品优选地还包括用于与虚拟智能卡交换密码数据的装置,并且还可以包括用于确定与虚拟智能卡等价的真实智能卡的出现的装置。所述计算机程序产品还可以包括用于与智能卡的真实等价物交换密码数据的装置。
优选地,所述计算机程序产品还包括用于选择智能卡的装置。所述计算机程序产品还可以包括用于利用所选择的智能卡对数据进行解码的装置,用于适合于与数据的特性相关地选择智能卡地选择智能卡的装置。
优选地,所述计算机程序产品还包括用于选择净荷和包含净荷的已加密数据之一的装置,用于存储所选择的净荷和已加密数据的装置,以及用于以净荷代替已存储的已加密数据的装置。
在本发明的另一方面中,提供了一种计算机程序产品,包括用于选择净荷和包含净荷的已加密数据之一的装置,用于存储所选择的净荷或加密数据的装置,以及用于以净荷代替已存储的已加密数据的装置。
用于选择的装置可以适合于选择至少一个控制字和权利控制消息之一。此外,所述计算机程序产品优选地还包括用于向智能卡发送已加密数据的装置,以及用于从智能卡接收包含在已加密数据中的净荷或表示不能对净荷进行解密的响应的装置。
优选地,用于选择净荷和已加密数据之一的装置适合于在可用时选择净荷,否则选择包含净荷的已加密数据。所述计算机程序产品还可以包括用于存储和再现数据中的至少一个的装置,净荷与所述数据有关。
所述计算机程序产品优选地还包括用于将已加密数据对象封装在另外的已加密数据对象中的装置,以及优选地还包括用于将权利控制消息封装在内容管理消息中的装置。
优选地,所述计算机程序产品还包括用于以加密密钥对已存储净荷或已加密数据进行加密的装置,并且可以包括用于以验证密钥对已存储净荷或已加密数据进行验证的装置。
同样优选地,所述计算机程序产品还包括用于以通信加密密钥对设备和智能卡之间的通信进行加密的装置,以及可以包括用于以通信验证密钥对设备和智能卡之间的通信进行验证的装置。
优选地,所述计算机程序产品还包括用于建立至少一个会话的装置,以及用于将相应会话标识符与该会话或每个会话相关联的装置。此外,所述计算机程序产品还可以包括用于利用主会话密钥来产生加密/验证密钥的装置。
在相关的方面中,提供了一种计算机程序产品,包括用于存储密码密钥的装置,以及用于利用主会话密钥来产生分别用于对已存储密码密钥进行加密和验证的加密和验证密钥之一的装置。
用于利用主会话密钥的装置可以适合于根据主会话密钥来产生加密密钥和验证密钥。优选地,用于利用主会话密钥的装置适合于利用相应的会话标识符,使主会话密钥多样化。所述计算机程序产品优选地还包括用于使用加密/验证密钥对另外的会话进行加密/验证的装置,并且还可以包括用于与接收器/解码器中的非密码数据相关地产生加密/验证密钥的装置。
在本发明的另一方面中,提供了一种计算机程序产品,包括用于与接收器/解码器的非密码数据相关地产生密钥的装置。
所述计算机程序产品还可以包括用于将非密码数据作为随机数发生器的种子的装置,以及用于与随机数发生器的输出相关地产生密钥的装置。
此外,所述计算机程序产品还可以包括:用于测量至少一个特性的装置,所述特性是随机、不可预测、时间变化和地理变化中的至少一个;以及用于与所述特性或每个特性相关地产生密钥的装置。具体地,用于产生密钥的装置可以适合于与由接收器/解码器接收到的比特流的特性、接收器/解码器中的硬件环境的特性、接收器/解码器中的软件环境的特性、以及接收器/解码器外部环境的可测量特性中的至少一个相关地产生密钥。
用于产生密钥的装置适合于在需要密钥之前,产生密钥;代替地或额外地,所述计算机程序产品还可以包括用于响应执行需要提供密钥的操作的命令的调用,产生密钥的装置。
所述计算机程序产品优选地还包括用于存储加密/验证密钥的装置,以及可以包括用于确定是否存储密钥的装置。此外,所述计算机程序产品还可以包括用于将由其可以构成密钥的数据存储在相应的多个位置中的装置。
在本发明的另一方面中,提供了一种计算机程序产品,包括用于将由其可以构成密码密钥值的数据存储在相应的多个位置中的装置。
所述计算机程序产品优选地还包括用于将密钥分为多个部分的装置,以及用于将所述多个部分存储在相应的多个位置中的装置。用于存储的装置可以适合于将其至少部分地存储在接收器/解码器中。优选地,所述计算机程序产品还包括用于选择多个位置,从而在整个接收器/解码器中伪随机分布所述多个位置的装置。
用于存储的装置优选地适合于将其存储在多个物理设备中。所述计算机程序产品优选地还包括用于创建其中定位所述多个位置中的至少一个的基本上为随机数的区域的装置,并且还包括用于从相应的多个位置读取多个密钥部分的装置,以及用于对数据进行组合以形成密码密钥的装置。
在本发明的另一方面中,提供了一种计算机可读介质,包括前述计算机程序产品。
在本发明的另一方面中,提供了一种信号,确切地实现了前述计算机程序产品。
在本发明的另一方面中,提供了一种接收器/解码器,包含或附加有大容量存储设备,所述接收器/解码器包括用于作为存取权利的函数,选择条件存储数据净荷和包含所述条件存储数据净荷的已加密条件存储数据之一的装置、用于将已加扰内容和所选择的条件存取数据净荷或已加密条件存取数据存储在大容量存储设备上的装置。
优选地,所述条件存取数据净荷是至少一个控制字,而所述已加密条件存取数据是至少一个权利控制消息。还优选地,所述接收器/解码器的特征在于由智能卡根据权利控制消息产生所述至少一个控制字。
为了语言清晰的目的,这里以多种方式使用了术语“已加扰”和“已加密”和“控制字”和“密钥”。但是,应当理解的是,在“已加扰数据”和“已加密数据”之间或者在“控制字”和“密钥”之间没有根本上的区别。
本发明还提供了一种计算机程序和计算机程序产品,用于执行这里所描述的任意方法和/或具体实现这里所描述的任意设备特征,以及一种计算机可读介质,在其上存储了用于执行这里所描述的任意方法和/或具体实现这里所描述的任意设备特征的程序。
本发明还提供了一种信号,具体实现了用于执行这里所描述的任意方法和/或具体实现这里所描述的任意设备特征的计算机程序,一种用于传输这种信号的方法,以及一种计算机产品,具有支持用于执行这里所描述的任意方法和/或具体实现这里所描述的任意设备特征的计算机程序的操作系统。
本发明将参照附图,对这里所描述的方法和/或设备进行展开。
本发明一个方面中的任意特征均可以应用于本发明的另一方面。具体地,方法方面可以应用于设备方面,反之亦然。
此外,通常可以以软件形式实现以硬件形式实现的特征,反之亦然。因此,应当理解这里对软件和硬件的特征的任何引用。
附图说明
现在,将参照附图,仅仅作为示例,对本发明的优选特征进行描述,其中:
图1是卫星数字电视系统的概况;
图2是有线数字电视系统的概况;
图3是整体系统图,更为详细地示出了首端;
图4是接收器/解码器的组件结构的示意图;
图5是接收器/解码器的软件结构的示意图;
图6是更为详细地示出了图5的上半部的示意图;
图7是更为详细地示出了图5的下半部的示意图;
图8是示出了图5的下半部的可选实施例的示意图;
图9是内容管理与保护系统的概况;
图10是采用了内容管理与保护系统的分布系统的概况;
图11是在接收器/解码器中实现内容管理与保护系统的示意图,设置用于记录数据;
图12是在接收器/解码器中实现内容管理与保护系统的示意图,设置用于回放数据;
图13是利用内容管理与保护系统记录数据的例图;
图14是利用内容管理与保护系统回放数据的例图;
图15是内容管理与保护系统和硬盘录像机之间的管理的例图;
图16是内容管理与保护系统的更为详细的示意图;
图17是内容管理与保护系统的不同组件间的命令流的例图;
图18是内容管理与保护系统的不同组件间的命令流的另一例图;
图19是用于利用随机数发生器产生加密密钥的系统的示意图;
图20是用于利用密钥多样化器产生加密密钥的系统的示意图;
图21是用于存储和检索加密密钥的系统的示意图;
图22是与上述系统相一致的存储加密密钥的进程的例图;
图23是存储加密密钥的进程的另一例图;以及
图24是将权利控制消息(ECM)封装在内容管理消息(CMM)中的例图。
具体实施方式
系统概况
图1中示出了数字电视系统500的概况。如下所讨论的那样,系统500包括广播中心1000、接收器/解码器2000、接收器/解码器的软件/硬件结构3000、交互系统4000、以及条件存取系统5000。
系统500包括大部分的传统数字电视系统502,使用已知的MPEG-2压缩系统来传送已压缩数字信号。更为具体地,广播中心1000中的MPEG-2压缩器1010接收数字信号流(典型地为视频信号流)。压缩器1010通过连接1020与多路复用器及加扰器1030相连。
多路复用器1030接收多个其他的输入信号,组成传送流,并通过连接1022,向广播中心的发送器510传送已压缩数字信号,当前,连接1022也可以采用包括电信链接在内的多种变体形式。发送器510通过上行链路514向卫星转发器512发送电磁信号,在卫星转发器512对其进行电处理,并通过全国下行链路516向地面接收器512广播,地面接收器512通常是由端用户所拥有或租借的盘的形式。针对数据传输的其他传送信道当然是可能的,例如陆地广播、有线传输、组合卫星/有线链路、电话网络等。
向端用户所拥有或租借的并与端用户的电视机10000相连的一体化接收器/解码器2000传输由接收器512接收到的信号。接收器/解码器2000将已压缩MPEG-2信号解码成用于电视机10000的电视信号。尽管在图1中示出了分离的接收器/解码器,接收器/解码器也可以是一体化数字电视的一部分。如这里所用,术语“接收器/解码器”包括分离的接收器/解码器,如机顶盒等,以及其中集成有接收器/解码器的电视。
在接收器/解码器2000中,设置了硬盘2100,其上可以存储视听和其他数据。这实现了针对由接收器/解码器接收到的程序的高级记录和回放设备,并且也允许将大量的其他类型的数据,如电子节目指南数据等存储在接收器/解码器中。
接收器/解码器中的内容管理与保护系统(CMPS)2300(未示出)提供了安全而灵活地控制硬盘2100(或其他存储设备)上的数据的记录和回放的功能。
在多信道系统中,多路复用器1030处理从多个并行源接收到的音频和视频信息,并与发送器510相互作用,以便按照相应的信道数广播信息。除了视听信息以外,可以将消息或应用程序或任意其他种类的数字数据与所传送的数字音频和视频信息相互交织地引入到一些或全部信道中。
交互系统4000与多路复用器1030和接收器/解码器2000相连,并且部分位于广播中心中,部分位于接收器/解码器中。其使得端用户能够通过后向信道570与多种应用程序进行交互。例如,后向信道可以是公共开关电话网络(PSTN)信道(例如,调制解调后向信道),或带外(OOB)信道。
同样与多路复用器1030和接收器/解码器2000相连,并且部分位于广播中心中,部分位于接收器/解码器中的条件存储系统5000使端用户能够存取来自一个或多个广播提供商的数字电视广播。可以将能够对与商业供应(即,由该广播提供商出售的一个或几个电视节目)有关的消息进行解码的智能卡插入接收器/解码器2000中。利用接收器/解码器2000和智能卡,端用户可以按照订户模式或付费节目模式来购买商业供应。典型地,这使用由交互系统4000使用的后向信道570来实现。
如上所述,在多路复用器1030对由系统传送的节目进行加扰,由存取控制系统5000确定施加到给定传输上的条件和加密密钥。这种方式的已加扰数据的传输在付费TV系统领域是众所周知的。典型地,与用于对数据进行解扰的控制字一起传送已加扰数据,通过所谓的采用密钥对控制字自身进行加密,并以已加密形式进行传输。
然后,由可以使用存储在插入到接收器/解码器中的智能卡上的采用密钥的等价物的接收器/解码器2000接收已加扰数据和已加密控制字,以便对已加密控制字进行解密,之后,对所传输的数据进行解扰。例如,已付费订户将在每月广播的EMM(权利管理消息)中接收到对已加密控制字进行解密所需的采用密钥,从而允许其观看传输。
图2示出了数字电视系统的可选实施例504,利用有线网络作为已压缩数字信号的广播介质。在此图中,相似的部件以相似的数字表示。
卫星转发器和发送和接收台由有线网络550代替。此外,在此特定的实施例中,去除了接收器/解码器2000和交互系统4000以及条件存取系统5000之间的调制解调后向信道,分别以有线网络550和条件存取系统5000以及交互系统4000之间的连接554、556代替。因此,接收器/解码器2000通过有线网络550与其他系统进行通信,使用线缆调制解调器或其他装置允许其在接收到来自广播中心的数据的同时,通过相同的链路发送和接收数据。
有线网络550可以是任意形式的广域网(WAN),如专用连接、因特网、本地有线分布网络、无线连接或上述的任意组合等。在本实施例中,使用了混合光纤同轴线(HFC)网络。应当明白的是,接收器/解码器2000和电视系统的其他组件之间的多种通信装置是可互换的。
条件存取系统
参照图3,一般来看,条件存取系统5000包括订户授权系统(SAS)5200。SAS 5200通过可以是TCP-IP链路或其他类型的链路的链路1044与一个或多个订户管理系统(SMS)1100相连,一个SMS用于每个广播提供商。可选地,可以在两个商业经营者之间共享一个SMS,或者一个商业经营者可以使用两个SMS,等等。
作为利用“母”智能卡5110的编码单元5100形式的第一加密单元通过连接1042与SAS相连。同样是利用母智能卡5112的编码单元5102形式的第二加密单元通过连接1040与多路复用器1030相连。接收器/解码器2000接收“子”智能卡5500。接收器/解码器2000通过通信服务器1200和调制解调后向信道570直接与SAS 5200相连。SAS根据请求向子智能卡发送其他事务中的订户权利。
在优选实施例的变体中,因特网或有线连接补充或代替PSTN 570和通信服务器1200。
智能卡包含来自一个或多个商业经营者的机密信息。“母”智能卡对不同种类的消息进行加密,而如果“子”智能卡具有解密消息的权利,则其对该消息进行解密。
参照图3,在广播中心中,首先利用MPEG-2压缩器1010,对数字视频信号进行压缩(或降低比特率)。然后,将此已压缩信号传送到多路复用器和加扰器1030,以便与如其他已压缩数据等其他数据进行多路复用。
在多路复用器1030中,加扰器产生用在加扰处理并包括在MPEG-2流中的控制字。在内部产生控制字,并使端用户的接收器/解码器2000能够对节目进行解扰。
将表示该节目如何进行商业化的存取判据也添加到MPEG-2流中。可以按照多个“订阅”模式之一和/或多个“付费节目”(PPV)模式或事件之一,对节目进行商业化。在订户模式下,端用户订阅一个或多个商业供应,或“捆绑服务(bouquet)”,从而得到观看这些捆绑服务中的每个信道的权利。在付费节目模式下,向端用户提供根据意愿购买事件的能力。
控制字和存取判据均用于构建权利控制消息(ECM);这是一个与一个已加扰节目相关地发送的消息;此消息包含控制字(允许对节目进行解扰)和广播节目的存取判据。通过连接1040,向第二加密单元5102传送存取判据和控制字。在此单元中,产生ECM,对其进行加密,并将其传送到多路复用器和加扰器1030。
在数据流中,由广播提供商广播的每个服务包括多个不同的组件;例如,电视节目包括视频组件、音频组件、子标题组件等。针对随后的广播,对服务的这些组件中的每一个进行独立的加扰和加密。对于服务的每个已加扰组件,需要分立的ECM。
多路复用器1030接收包括来自SAS 5200已加密EMM、来自第二加密单元5102的已加密ECM和来自压缩器1010的已压缩节目的电信号。多路复用器1030对节目进行加扰,并向广播系统600传送已加扰节目、已加密EMM和已加密ECM,作为电信号,例如,广播系统600可以使如图1所示的卫星系统或其他广播系统。接收器/解码器2000对信号进行多路分解,以获得具有已加密EMM和已加密ECM的已加扰节目。
接收器/解码器接收广播信号,并提取MPEG-2数据流。如果对节目进行了加扰,接收器/解码器2000从MPEG-2流中提取相应的ECM,并将ECM传递到端用户的“子”智能卡5500。其设置在接收器/解码器2000的箱体中。子智能卡5500控制端用户是否有权利对ECM进行解密并对节目进行存取。如果没有,向接收器/解码器2000传递否定状态,表示不能对节目进行解扰。如果端用户具有该权利,则对ECM进行解密,并提取出控制字。于是,解码器2000可以利用此控制字对该节目进行解扰。对MPEG-2流进行解压缩,并转换为视频信号,以便前向传输到电视机10000。
如果未对节目进行加扰,将没有ECM与MPEG-2流一起传输,并且接收器/解码器2000对数据进行解压缩,并将信号转换为用于传向到电视机10000的视频信号。
订户管理系统(SMS)1100包括数据库1150,其中,其对全部的端用户文件、商业供应(如价目和优惠)、订阅、PPV细节和与端用户消费和授权有关的数据进行管理。SMS在物理上可以远离SAS。
SMS 1100向SAS 5200传送表示对要传送给端用户的权利管理消息(EMM)的修改或创建的消息。SMS 1100还向SAS 5200传送表示并未对EMM进行修改或创建但只表示端用户的状态变化(当定购产品或达到将要向端用户收费的数量时,与授予端用户的授权有关)的消息。SAS 5200也向SMS 1100发送消息(典型地,如回叫信息或账单信息等请求信息),从而显而易见的是,这二者之间的通信是双向的。
接收器/解码器
现在,将参照图4,按照功能模块,对接收器/解码器2000的多个元件进行描述。
例如,可以是数字机顶盒(DSTB)的接收器/解码器2000包括中央主处理器2002和数字TV协处理器2004,均具有相关联的存储器元件(未示出),并通过协处理器总线2006相连。协处理器2004适合于接收来自USB接口2070、串行接口2072、并行接口(未示出)、调制解调器2074(与图1所示的调制解调器后向信道570相连)以及位于解码器的面板2054上的开关触点的输入数据。
接收器/解码器额外地适合于接收来自红外遥控器2080(以及,可选地,来自如蓝牙使能设备等其他无线外围设备2082)的输入,并且还拥有两个智能卡读出器2050、2052,分别适合于读取银行和订阅智能卡2060、2062。订阅智能卡读出器2052与插入的订阅卡2062相啮合,并与条件存取单元(未示出)相啮合,以便向多路分解器/解扰器/重新多路复用器单元2010提供所需的控制字,以便实现对已加密广播信号的解扰。解码器还包括传统的调谐器2016和解调器2012,以便在被解调器/解扰器单元2010进行滤波和多路分解之前,接收和解调卫星传输。还设置了第二调谐器2018和第二解调器2014,以便允许与第一信道并行地对第二信号进行接收和解码。
还设置了硬盘2100,实现了对由接收器/解码器接收和产生的节目和应用数据的存储。两个解调器2012、2014,解扰器/多路分解器/重新多路复用器2010和数据解码器2024和音频解码器2026,协同两个调谐器2016、2018,提供了高级记录和回放特征,实现了在观看另外的节目的同时,对一个或多个节目的同时记录,并且更一般地,从硬盘向显示设备传送输入和输出,和/或,从显示设备向硬盘传送输入和输出,均并行发生。
分别由PCM混频器2030和音频DAC 2034,以及MPEG视频解码器2028、图形引擎2032和PAL/SECAM编码器2036来提供接收器/解码器中的音频输出2038和视频输出2040。代替地或补充地,当然也可以提供输出。
如本说明书中所用,应用程序优选地表示用于控制尤其是接收器/解码器2000的高级功能的计算机代码块。例如,当端用户将遥控器2080的焦点定位在电视机(未示出)的屏幕上所看到的按钮对象上,并按下确认键时,运行与此按钮相关联的指令序列。当需要时,利用通过协处理器总线2006向数字电视协处理器2004做出的远程过程调用(RPC),由主处理器2002执行应用程序和相关联的中间件。
交互应用程序提供菜单,并根据端用户的请求,执行命令,并提供与应用程序的目的有关的数据。应用程序可以是驻留应用程序,即,存储在接收器/解码器2000的ROM(或FLASH或其他非易失性存储器)中,或者广播和下载到接收器/解码器2000的RAM、FLASH存储器或硬盘中。
将应用程序存储在接收器/解码器2000中的存储单元中,并表示为源文件。源文件包括图形对象描述单元文件、可变模块单元文件、指令序列文件、应用程序文件和数据文件。
接收器/解码器包括分为至少一个RAM卷、FLASH卷和至少一个ROM卷的存储器(未示出),但此物理组织不同于逻辑组织。可以将存储器进一步分为与多种接口相关联的存储器卷。从一个观点来看,可以将存储器作为部分硬件;从另一观点来看,可以将存储器看作支持或包含除硬件之外的所示出的整个系统。
接收器/解码器的结构
参照图5,接收器/解码器的软件/硬件结构3000包含五个软件层,对其进行组织,从而可以在任何接收器/解码器中,利用任何操作系统,来实现这些软件。所述多个软件层是应用程序层3100、应用程序编程接口(API)层3300、虚拟机层3500、设备接口层3700(经常将其简称为‘设备层’)和系统软件/硬件层3900。
应用程序层3100包括驻留在或下载到接收器/解码器中的应用程序3120。这些应用程序可以是由顾客所使用的、以如Java、HTML、MHEG-5或其他语音写成的交互应用程序,或者可以是由接收器/解码器使用的针对其他目的的应用程序,例如用于运行这些交互应用程序。此层基于由虚拟机层提供的公开应用程序编程接口(API)的集合。此系统允许自由地或根据需求地将应用程序下载到接收器/解码器中的硬盘、闪速存储器或RAM存储器上。可以利用如数据存储介质命令和控制(DSMCC)、网络文件服务器(NFS)或其他协议等协议,以压缩或未压缩格式,传送这些应用程序代码。
API层3300提供了对交互应用程序开发的高级应用。其包括构成此高级API的几个程序包。这些程序包提供了运行交互应用程序所需的所有功能。应用程序可以对这些程序包进行访问。
在优选实施例中,API适用于由Java、PanTalk或这些类似的编程语音所编写的应用程序。此外,可以有利于HTML和如MHEG-5等其他格式之间的翻译。除了这些特征以外,其还包括可以按照所规定的要求拆装和扩展的其他程序包和服务模块。
虚拟机层3500由语音解释程序和多种模块和系统组成。由内核3605(未示出)进行管理的此层由在接收器/解码器中接收和执行交互应用程序所需的所有事物构成。
设备接口层3700包括设备管理器和软件设备(通常,这里只是将其称为“设备”)。设备是由管理外部事件和物理接口所需的逻辑源码构成的软件模块。该设备接口层,在设备管理器的控制下,对驱动器和应用程序之间的通信信道进行管理,并提供增强的错误排除检查。受到管理的(硬件)设备的一些示例为:卡读出器3722(未示出)、调制解调器3730(未示出)、网络3732(未示出)、PCMCIA(个人计算机存储卡国际协会)、LED显示器等。由于API层从上面对设备进行控制,程序员不必直接处理此层。
由接收器/解码器的制造商提供系统软件/硬件层3900。由于系统的模块性,并且因为由高级操作系统(如,事件调度和存储管理)提供的服务是虚拟机和内核的一部分,并未将更高的层与特定的实时操作系统(RTOS)或特定的处理器进行绑定。
典型地,虚拟机层3500,有时与设备接口层3700和/或API 3300相组合,被称为接收器/解码器的“中间件”。
现在,将参照图6,对与图5的上半部分相对应的接收器/解码器3000的软件结构(包括应用软件层3100、API层3300和虚拟机层3500)进行描述。
交互应用程序是用于与其进行交互以便获得如电子节目指南、视频银行业务应用程序和游戏等产品和服务的应用程序。
在应用程序层3100中,存在两类应用程序,加上应用管理器3110。这些是如网络浏览器3130等交互应用程序,只要其与API 3300相一致,可以在任何时间添加,并且存在对交互应用程序进行管理和支持的驻留应用程序。驻留应用程序实质上是永久性的,并包括以下这些:
·引导程序。引导应用程序3142是在接收器/解码器上电时所加载的第一个应用程序。引导应用程序首先启动应用程序管理器3110,然后启动虚拟机3500中的“管理器”软件模块,如存储器管理器3544和事件管理器3546等。
·应用程序管理器。应用程序管理器3110对运行在接收器/解码器中的交互应用程序进行管理,即,其启动、停止、挂起、恢复、处理事件,以及处理应用程序之间的通信。其允许多个应用程序同时运行,因此,其涉及这些应用程序之间资源的分配。此应用程序对用户是完全透明的。
·配置程序。配置应用程序3144的目的是配置接收器/解码器,主要在其第一次使用时。其执行如扫描TV频道、设置日期和事件、建立用户偏好等动作。但是,用户可以在任何时刻使用配置应用程序,以改变接收器/解码器配置。
·跳台程序。跳台应用程序3146用于使用节目上、节目下和数字键来改变频道。当使用跳台的另一种形式时,例如,通过标志(导频)应用程序,停止跳台应用程序。
·回叫程序。回叫应用程序3148用于提取存储在接收器/解码器存储器中的多个参数的值,并通过调制解调后向信道1070(未示出)或其他装置,将这些数值返回给商业经营者。
应用程序层3100中的其他应用程序包括节目指南应用程序3132、付费节目应用程序3134、标志(导频)应用程序3136、标识库应用程序3138、软件下载应用程序3140和PVR(个人录像机)应用程序3154(见下)。
如上所述,应用程序编程接口(API)层3300包括几个程序包。这些程序包包括:基本系统程序包3310,例如,用于对虚拟机的基本特征进行存取;DAVIC程序包3320;以及专有程序包3330,用于对相对于主要软件厂家惟一的软件结构的特征进行存取。
更为详细地加以考虑,虚拟机3500包括以下这些:
·语言解释程序3510。可以安装不同的解释程序,以便与要读取的应用程序的类型相一致。这些解释程序包括Java解释程序3512、PanTalk解释程序3514、HTML解释程序3516、MHEG-5解释程序3518等。
·服务信息(SI)引擎。SI引擎3540加载和监控公共数字视频广播(DVB)或节目系统信息协议(PSIP)表,并将其放入高速缓存中。其允许需要包含在其中的数据的应用程序访问这些表格。
·调度程序3542。此模块允许具有其自身事件队列的每个线程的抢占和多线程调度。
·存储器管理器3544。此模块管理对存储器的存取。在需要时,其自动对存储器中的数据进行压缩,并执行自动碎片收集。
·事件管理器3546。此模块允许根据优先级触发事件。其管理定时器和事件获取,并允许应用程序彼此间发送事件。
·动态连接器3548。此模块允许由本地Java函数发起的地址解析,从下载到RAM中的Java类中加载本地方法,以及将来自已下载本地代码的调用转向ROM。
·图形系统3550。此系统是面向对象的,并且是最优化的。其包括图形窗口和对象管理,以及具有多语言支持的矢量字体引擎。
·类管理器3552。此模块加载类,并解决任何类引用问题。
·文件系统3554。此模块是紧凑且最优化的,用于利用多个ROM、flash、RAM和DSMCC卷来管理分层次的文件系统。对于任何事件,均确保Flash完整性。
·安全性管理器3556。此模块对应用程序进行验证,并控制应用程序对机顶盒的敏感存储器和其他区域的存取。
·下载程序3558。此模块从DSMCC传送带或通过NFS协议,对与驻留文件相同的方式进行存取的已下载文件进行自动数据加载。还提供了存储器清空、压缩和验证。
此外,支持DAVIC资源通知模块,从而可以对客户资源进行有效的管理。
内核3650对运行在虚拟机3500和设备接口层3700(未示出)中的多种不同的进程进行管理。为了效率和可靠性的原因,内核实现了针对操作系统的POSIX标准的相关部分。
在内核的控制下,虚拟机(运行Java和Pantalk应用程序)在其自身的线程中运行,与操作系统的其他‘服务器’元件相分离,如大容量存储服务器3850(未示出)等。在API层3300中,也进行相应的提供,如需要要传递的线程ID,作为系统调用中的参数,以允许应用程序3120从多线程环境中受益。
通过提供多个线程,可以实现更好的稳定性。例如,如果虚拟机3500由于某些原因停止了操作,通过经历崩溃或锁定较长的时间,应用程序试图对设备进行存取,如硬盘服务器等系统的其他时间决定部分可以继续操作。
与虚拟机3500和内核3650一起,硬盘录像机(HDVR)模块3850设置用于处理硬盘2210或其他附加大容量存储部件的记录和回放功能。服务器包括:两个分离的线程3854,3856,用于处理记录;一个线程3858,用于处理回放;以及文件系统库3852,用于与大容量存储部件进行接口。
硬盘录像机(HDVR)3850中的线程3854、3856、3858中适合的一个,例如响应用于按下‘记录’按钮,接收来自如个人录像机(PVR)应用程序3154等客户端的命令(如,开始记录特定的节目的命令等)。
依次,所述线程然后与服务设备3736(如图7所示)相互作用,以建立和同步接收器/解码器处理要记录或回放的比特流的部分。并行地,线程也与文件系统库3852相互作用,以便在硬盘2210(未示出)的适当位置处,对记录或回放操作进行合作。
于是,文件系统库3852向大容量存储设备3728(也如图7所示)发送命令,指示大容量存储设备3728要传送哪些子传送流(STS)(通过FIFO缓冲器),以及应当将所述流存储在哪些硬盘目标上。由文件系统库3852执行硬盘上的簇的分配和普通文件管理,大容量存储设备本身与低级操作有关。
上述服务设备3736在所有设备中是惟一的,其并不涉及接收器/解码器的物理组件。代替地,其提供了高级接口,将接收器/解码器中的调谐器、多路分解器、重新多路复用器和硬盘设备的多个集合一起组成单一的‘实例’,将高级处理从对多个子设备进行协调的困难中解脱出来。
现在,将参照图7,对与图5的下半部相对应的接收器/解码器3000的软件结构进行更为详细的描述。
设置在设备层中的其他设备包括条件存取设备3720、与图4所示的两个(可能更多)调谐器2016、2018相对应的调谐器设备3724、视频设备3734、I/O端口设备3726以及上述的服务设备3736和大容量存储设备3728。
在广义的术语中,可以将设备认为定义了逻辑接口,从而两个不同的设备可以与共同的物理端口相连。特定的设备可以在其中进行通信,而且所有的设备也可以在内核3650的控制下进行操作。
在使用任何设备的服务之前,必需将程序(如应用程序指令序列等)声明为“客户端”,即,对设备或设备管理器3710的逻辑存取方式。管理器将在所有对设备的存取中进行查询的客户端号赋予客户端。设备可以具有几个客户端,根据设备的类型来规定每个设备的客户端数量。通过过程“设备:打开信道”将客户端引入设备。此过程将客户端号分配给客户端。可以通过过程“设备:关闭信道”,从设备管理器3710客户端列表中去除客户端。
由设备管理器3710提供的对设备的存取可以是同步的或异步的。对于同步存取,使用过程“设备:调用”。这是对立即可用的数据进行存取的手段或不涉及等待所需响应的功能性。对于异步存取,使用过程“设备:I/O”。这是对涉及等待响应的数据进行存取的手段,例如,扫描调谐器频率,以找出复用段(multiplex),或者从MPEG流中找回表格。当所请求的结果可用时,将事件放入引擎的队列中,以通知其到达。另一过程“设备:事件”提供了对意想不到的事件进行管理的手段。
在接收器/解码器的第二实施例中,以图8所示的层代替接收器/解码器结构的下半部分。
在此实施例中,在虚拟机3500(未示出)和设备接口层3700之间设置扩展设备层接口(EDLI)3600,并在设备接口层3700和系统软件/硬件层3900之间设置抽象设备接口3800。另外,相似的部件以相似的参考数字来表示。
扩展设备层接口3600提供了虚拟机3500和设备接口层3700之间的专用接口,并通常提供对设备接口层的多线程支持。EDLI的功能包括向中间件中的适当线程发送异步事件(由于设备接口层不需要其自身支持多线程),和在线程之间发送消息。
抽象设备接口3800提供了设备接口层3700和系统软件/硬件层3900中的设备驱动器3910之间的另一接口。通过提供这种接口,可以使较大且较复杂的设备层3700更大程度地与硬件无关。
内容管理及保护系统(CMPS)
参照图9,上述内容管理及保护系统(CMPS)2300分布在广播中心1000和接收器/解码器2000之间。以如下形式设置CMPS的接收器/解码器部件:物理智能卡(具有相关联的智能卡读出器)和虚拟智能卡,这二者均在虚拟智能卡管理器的控制下(如稍后将详细描述的那样),但在优选实施例的变体中,单独以软件或硬件来实现CMPS的接收器/解码器组件,或者可以对二者进行置换。CMPS依照预定的使用规则,可确保只有授权用户才能记录和回放内容。其还可以确保遵守由内容所有者和/或分布者定义的其他规则,如复制控制和时间偏移限制等。
内容管理及保护系统的重要部件是特定使用规则消息(URM),其包含了与给定内容(如程序或传输)有关的内容管理信息,并在该程序或传输之前,进行传输。本质上,使用规则消息暗示了对内容的回放和再现的使用限制,并可以只指向内容的特定部分,如程序中分离的‘段’,或作为整体指向该内容。典型的使用规则包括对时间偏移、快进、记录可以回放的次数和可用再现模式的限制。下面将对其进行详细描述的另一重要特征是与可以与相应的内容或条件存取信息独立地(从不同的位置,在不同的时间)发送的给定程序有关的URM。
设置了第二类消息-CMPS权利管理消息(CMPS EMM或CMP_EMM),用于向CMPS传送存取权利。CMPS EMM等价于其他地方所提及的条件存取权利管理消息(EMM或CAS_EMM),但所传送的存取权利涉及节目数据的本地存储,而不是广播节目数据,如同‘传统’EMM的情况一样。
在优选实施例中,如图9所示,多路复用器和加扰器1030接收CMPS EMM 5614和URM 5612,将其与包含未加扰内容(节目数据)810的比特流进行多路复用,并通过广播系统600广播所得到的已加扰内容800。然后,接收器/解码器接收已加扰内容800,并且去除CMPSEMM和URM,将CMPS EMM和URM传递给CMPS 2300,以及如果需要的话,传递给条件存取系统5000。但是,在优选实施例中,由CMPS内部处理CMPS EMM和URM。
以URM采用密钥对URM进行加密,在优选实施例的变体中,URM采用密钥与ECM采用密钥相同。在接收器/解码器CMPS智能卡(未示出)中保持了URM采用密钥的等价物,以允许对URM进行解密。在另一变体中,并不对URM进行解密,而是对其进行密码签名,以确保数据完整性。在另一变体中,将包含在URM中的数值用作种子值,可能与其他信息相组合,以产生密码密钥。可以利用以下这种密钥(其派生)对如CMP_EMM等特定的已加密单元进行加密:例如,该密钥表示对URM的任何篡改都将阻碍对CMP_EMM的解密。
如上所述,以CMPS权利管理消息(CMPS EMM或CMP_EMM)的形式设置了允许用户使用接收器/解码器记录和/或回放的使用权利;CMPS EMM可以具有与传统EMM相同的结构,但通常更加面向按键-CMP_EMM典型地嵌入与内容或服务相关联的按键。回放已记录内容的权利通常依赖于编码在URM中的商业规则,也依赖于已经获得的使用权利。例如,可以作为一次性付费(刺激购买)或订阅的回报,授予这种权利。也可以与任何内容相关地授予多种级别的存取权利,例如,借此用户可以支付第一种费用,以交换对内容重放一次的权利,或者支付第二种更高的费用,以换取无限制的重放。典型地,将CMP_EMM存储在接收器/解码器CMPS智能卡中,但也可以存储在其他地方,例如,硬盘上安全的已编码区域中。
在优选实施例中,可以在进行记录之后(‘付费节目’模式)或记录之前(‘订阅’模式)获得重放记录的权利。在前一种情况下,在记录了内容之后,用户指示条件存取系统,他想要获得回放内容的权利。如果订阅管理系统对此指令授权,则通过双向链路向接收器/解码器发送适当的CMPS权利管理消息(“CMP_EMM”)。
由CMPS系统提供的多种优点之一是记录和回放节目的存取权利与传统的系统中的简单观看节目的存取权利完全无关。因此,用户可能具有以下的情形:其可以观看节目,但不能对其进行记录和回放,以及相反,其可能会不能观看节目,但可以对其进行记录,获得所需的权利,然后,对其进行回放。
在优选实施例的变体中,对于因特网分布模型尤为典型,如图10所示,从第一方700、第二方701和第三方704向接收器/解码器2000独立地传递已加扰内容(“内容*”)、CMPS EMM(“CMP_EMM”)和URM(“URM”)。例如,第一、第二或第三方可以是多存取入口(MAP),并且例如,可以通过广播流、其他其它宽带连接或拨号连接来传递已加扰内容800、CMPS EMM 5614和URM 5612。典型地,节目供应商(第二方1202)向多路复用器/加扰器发送节目内容(“内容”),在多路复用器/加扰器处产生已加扰内容1300(内容*),然后按照通常的方式,将其传送到接收器/解码器2000。优选实施例中的上述信息传递的独立性反映了通常由不同的参与者来起到内容分布、商业供应展示和使用权利传递的多种作用的事实。
现在,将参照图11和12,对使用CMPS 2300在接收器/解码器2000分别记录和回放内容的实现进行描述。
在示出了记录模式下的CMPS的结构的图11中,除了CMPS已链接客户端库3562、虚拟智能卡管理器(VSC管理器)2350、MLOAD设备3738、LCARD设备3740和HDVR模块3850之外,示出了CMPS服务器模块(核心)2200,其包括导出客户端库(API)、消息监控器和资源管理器。还示出了设备层接口3700。
将CMPS核心2200设置在接收器/解码器中间件中,并通过已链接客户端库3562与HDVR模块3850进行接口。CMPS核心2220还与MLOAD设备3738、LCARD设备3740(容纳条件存取智能卡)和RCARD设备3442(未示出,容纳可选的CMPS智能卡)进行接口。
在CMPS系统记录模式下的操作中,稍后将进行更为详细的描述,由MLOAD设备隔离在节目数据流中接收到的ECM 5602,然后由CMPS资源管理器路由到条件存取智能卡。然后,除了适当情况下的相应URM和CMPS EMM之外(最好也在节目数据流中进行接收,但也可以通过其他路线进行接收),将根据ECM得出的控制字5600路由到虚拟智能卡管理器2350。
于是,虚拟智能卡管理器2350适当地利用真实的或虚拟的CMPS智能卡2400(未示出),对控制字和其他数据到CMM 5610的转换进行控制,并将CMM转发回CMPS核心,以及进行进一步的处理。在优选实施例中,在多个软件和硬件组件之间使用安全验证信道(SAC)以传送控制字和其他敏感数据。稍后,将更为详细地描述虚拟智能卡管理器2350和虚拟智能卡2400。
然后,将CMM传递给HDVR控制器3350,从而可以将其与相应的内容数据一起存储在盘上。在不能对ECM进行解密(典型地,因为用户并不具有适当的权利)的情况下,代替控制字,将ECM本身存储在CMM结构中,以便在权利变得可用时,允许在稍晚的日期,进行ECM到控制字的进一步转换。稍后,也将对上述CMM中的ECM封装进行更为详细的描述。
在优选实施例的变体中,可以在记录阶段,对内容进行解扰和重新加扰,在这种情况下,产生新的内容密钥(等价于本地控制字),并将其存储在CMM中。在另一变体中,对内容进行超级加扰(即,通过通常更为强有力的加密方法对其进行进一步加扰),其需要包含另外的加扰/加密密钥的第二级CMM。在这种情况下,可以将具有168比特密钥长度的Triple DES用作适当的更为强有力的加密方法。
在示出了回放模式下CMPS的结构的图12中,除了CMPS已链接客户端库3562、虚拟智能卡管理器(VSC管理器)2350和HDVR模块3850之外,示出了CMPS核心2200,其包括导出客户端库、消息监控器和资源管理器。
在CMPS系统回放模式下的操作中,稍后将进行更为详细的描述,在虚拟智能卡管理器2350的控制下,对由HDVR模块3850转发的CMM进行解码,以产生所需的控制字,然后,将其转发回HDVR模块3850。如上所述,如果CMM包含已封装ECM,而不是已解码控制字,CMPS将再次试图对ECM进行解密,如果成功,则以适当的控制字填充CMM。
现在,将从更为功能性的角度,对将内容记录到盘上的处理进行描述,如图13所示。在图13中,将每个ECM 5602传递给条件存取智能卡中的解密级5550,在此利用全局采用密钥KG 5606对其进行解密。然后,将已解密控制字5600传递给CMPS智能卡中的加密级2202,在此将其与相应的URM 5612和CMPS EMM 5614组合成内容管理消息(CMM),然后利用本地采用密钥KL 5608重新加密为整体。然后,将未改变的已加扰内容和得到的多个CMM分别存储在硬盘2100中的单一文件内的内容部分2110和管理数据部分2112中。在优选实施例的变体中,使用分离的文件来存储每个部分。
在从盘回放内容的逆向处理中,如图14所示,从硬盘2100上的文件中的内容部分2110读取已加扰内容1300,并提供给解扰器2010。并行地,从分离的管理数据部分2112中读取CMM,并提供给CMPS智能卡中的解密级2204。利用本地采用密钥5608对CMM进行解密,然后将其分为URM 5612、CMPS EMM 5614和控制字5600。如果CMPS模块确定用户有权观看该材料(根据URM和CMPS EMM),则在适当的时间,将控制字5600发送到2010,以允许对内容进行解扰。
此外,该系统在尽可能多地保持安全性和速度的同时,提供了用于产生和存储所有会话所需的所有主和从加密和/或验证密钥的装置。稍后,将对产生和存储这些密钥所涉及的处理进行更为详细的描述。
使用HDVR进行记录
现在,将更为详细地描述使用HDVR 3850的记录处理。
在记录节目时,HDVR产生其结构主要为两部分的文件:管理数据(例如,hdvr_file.management_data)和内容本身(例如,hdvr_file.content_data)。
文件的第一部分对应于(尤其)由CMPS产生和处理的本地消息(内容管理消息-CMM),其包含内容的使用规则以及相关联的未加扰密钥(换句话说,控制字)。第一部分还包括索引表,所述索引表包括将比特流中的时间偏移映射到文件中的数据偏移的索引。
第二部分由部分传送流(pTS)组成,所述部分传送流对应于给定节目(视频、音频、子标题等)的多个组件,并且在公共加扰格式DVB_CS中保持与广播一样的已加扰。在优选实施例的变体中,将管理数据和内容存储在至少两个分离的文件中。在另外的变体中,对内容进行加扰和重新加扰(优选地,利用对于给定的接收器/解码器惟一的本地密钥),或利用另外的更为安全的加密等级对其进行超级加扰(如具有适当的较大密钥长度的Triple DES)。
CMPS负责与其自身的管理和控制消息同步,以创建每个加密周期中的CMM。然后,将此CMM发送给HDVR,以便插入到hdvr_file.management_data部分中。CMPS还对与内容的管理有关的特定数量的信息(hdvr_data)进行通信,如段的起点或在时间偏移模式下授权的最大的记录范围。
在图15中示意性的示出了这个方面。将URM、CMP_EMM和CW输入CMPS。将hdvr_data从CMPS 300传递到HDVR 350。
如上所述,文件的hdvr_file.management_data部分还包括索引表,所述索引表包括将比特流中的时间偏移映射到文件中的数据偏移的索引。在索引表中包括两类索引:HDVR索引,由HDVR自动插入;以及用户索引,根据用户的命令插入。
由HDVR按照与比特流中的周期性时间偏移相对应的间隔定位HDVR索引,并用作已记录文件中的播放入口点。在优选实施例中,在记录节目期间,由HDVR自动产生HDVR索引。
用户索引也是播放入口点,并由用户在记录节目时或在回放已记录节目期间进行设置。
索引表还包括将每个HDVR和用户索引映射到适当CMM的指针,实现了对位于由HDVR和用户索引所索引的点的已存储比特流的解密。
处理已记录内容,例如搜索文件或相应的比特流中的点,以及如快进、倒带和跳过等“特技模式”操作,使用存储在索引表中的HDVR和用户索引。
使用HDVR进行回放
现在,将更为详细地描述使用HDVR 3850的回放处理。
在使用已记录内容时,CMPS通过将出现在已记录CMM中的使用规则与由订户获得并存储在CMPS智能卡或存储在接收器/解码器内部的安全位置中(在虚拟智能卡的控制下)的权利进行比较,确保了相关权利的有效性。该机制最好只针对HDVR应用程序,与响应请求描述无效动作的可能的错误消息(状态)分开。此外,优选地,使用人机界面应用程序向用户中继特定的消息,特别地,对遥控器的无效动作(例如,当在序列中未授权“特技”模式的快进时,在屏幕上显示警告)。
为了便于在内容中进行导航,可以重新加载具有新CW的解扰器,而不会受到CMPS智能卡内在处理时间的限制。为此目的,HDVR应用程序能够请求服务器在有效使用其所包含的CW之前,预处理特定数量的CMM。为此,HDVR产生与当前位置任一侧的段、索引和加密周期相关联的CMM的不同缓冲区。在CMPS的请求下,HDVR额外地检索要重新插入到视频文件的hdvr_file.management_data部分中的已更新CMM。
与内容使用(段起始标签、导航限制、最大记录范围等)和为了在CMPS服务器进行处理而提交的CMM缓冲器的状态相比,HDVR所需的主要数据由导航和使用限制信息(CMM.navigation和CMM.hdvr_rules)构成。在URM中以明文传递信息的情况下,在进行内容记录(典型地,段起始标签)时,可以从URM获得特定的管理信息(hdvr_data)。为了避免视频文件的hdvr_file.management_data部分过载,CMPS可以在回放内容时,通过CMM对如与使用限制(导航、段的道德代码等)有关的信息等其他信息进行通信。
现在,将对消息交换的协议尤其是相关的数据结构进行描述。
规定了在HDVR和CMPS之间的交换协议中所出现的数据的特定数量。其主要涉及传送CMM的CMM_message消息以及导航信息和对内容使用的限制。其结构如下:
数据结构 描述
struct CMM_message{
struct CMM, 要存储的全部CMM
struct CMM.navigation,与导航有关的数据
struct CMM.hdvr_rules 与限制有关的数据
}
按照顺序,CMM包含其细节如下的不同结构。
特别地,CMM_message由与内容中的导航有关的信息组成。与其中可以对导航和限制数据进行加密的CMM相反,在CMM_message中,这些均以明文出现,从而由HDVR直接进行翻译。以下给出了CMM的一般结构(与其编码和签名无关):
数据结构 描述
struct CMM{
struct CMM.navigation, 与导航有关的数据
struct CMM.hdvr_rules, 与限制有关的数据
struct CMM.content_key,内容密钥(已编码)
struct CMM.private_data 专用数据(使用规则)
}
内容中的导航数据表示标题,并给出如下:
数据结构 描述
struct CMM.navigation{
total_chapter_number, 内容的总段数
chanpter_index 段号
}
以下,示出了在无效动作和时间偏移限制方面与内容使用限制相关的数据:
数据结构 描述
struct CMM.hdvr_rules{
trick_mode_bitmap, 无效录像机动作
time_shifting_duration,最大记录长度
content_rating 道德等级(当前段)
}
CMPS的内部结构
现在,将参照图16,对CMPS进行详细的描述。如图11和12所示,CMPS包括CMPS核心2200和已链接客户端库3562。CMPS核心2200本身包括CMPS消息管理器线程2310和CMPS设备管理器线程2320。
总体上,CMPS消息管理器线程为运行在接收器/解码器上的应用程序(例如,HDVR 3850)提供了对CMPS的功能性的结构,而CMPS设备管理器线程2320与多种相关设备(如MLOAD设备、CW设备、CA设备、LCARD设备等)进行接口。
已链接客户端库3562包含初始化CMPS所需的功能。具体地,已链接客户端库提供了创建CMPS消息管理器2310和CMPS设备管理器2320线程的功能。
CMPS消息管理器线程2310包括导出客户端库2340和消息监控器模块2330。
导出客户端库1340规定了由CMPS支持的应用程序消息,而消息监控器模块2330接收这些消息,并验证其是否有效(如果无效,则返回错误)。消息管理器线程2310支持同步和异步消息发送。
现在,将详细描述设备管理器线程的功能性。
如前所述,CMPS设备管理器线程2320包括消息路由器模块2360、资源管理器2370、虚拟智能卡(VSC)2400和虚拟智能卡管理器(VSC管理器)2350。稍后,对虚拟智能卡和虚拟智能卡管理器进行详细的描述。
消息路由器模块2360处理设备管理器线程2320中的消息排队(适当地)和路由。当消息管理器线程2310的消息监控器2330接收到有效应用程序信息时,其向消息路由器2360发送相应的异步应用程序消息。然后,消息路由器2360验证所接收到的应用程序消息是否有效(如果无效,则产生错误),然后将该消息传递给资源管理器2370,以便进行进一步处理。当资源处理器2370已经对这种应用程序消息进行了处理时,通过消息路由器2360、消息管理器线程2310向适当的客户端传回响应消息。
通过上述EDLI 3600来实现消息管理器2310与设备管理器2320线程之间、以及资源管理器2370和设备之间的通信。
如上所述,资源管理器2370与多个设备进行通信,包括:
·MLOAD设备3738,用于从已解码MPEG流中提取相关的条件存取数据(如ECM、EMM等)。
·CA设备3720,用于对ECM管理器进行配置(在订阅模式下进行记录的情况下),以及如果需要的话,改变关联表中的PID(这种关联表提供了构成了节目的多个组件与其关联ECM的PID之间的对应关系)。
·CW设备3760,用于将控制字插入到解扰器中。
·LCARD设备3740,用于与传统存取智能卡进行通信。
会话管理
利用会话来实现CMPS设备管理器线程2320与CMPS的客户端(如HDVR等)之间的通信。在CMPS设备管理器和客户端之间,提供了两类会话:记录器和播放器。如下详细所述,CMPS设备管理器线程2320响应适当的消息交换,创建新的线程。
将对内容的记录封装在记录器会话中,而将对已存储内容的回放封装在播放器会话中。如前所述,图11总体上示出了针对记录会话的典型数据流,而图12总体上示出了针对播放器会话的典型数据流。在任一时刻,CMPS可以处理一个播放器会话和两个记录器会话,尽管在优选实施例的变体中,根据相关硬件考虑,提供了两种类型的另外的会话。
图17示出了新记录会话的创建和管理。在此图中,步骤7002到7026对应于在CMPS系统的元件和其他设备之间所交换的消息,如以下描述所示。
在步骤7002中,客户端发送打开记录会话的请求,于是,由设备管理器线程适时地打开该记录会话。在步骤7004中,CMPS消息管理器返回包含惟一会话标识符(‘SessionID’)的适当的确认。与此会话相关的所有后续通信都包含此会话标识符。
在步骤7006中,客户端向CMPS消息管理器发送请求,以打开记录会话中的记录序列。在步骤7008中,CMPS消息管理器从CMPS设备管理器请求文件标识符(‘文件ID’)。然后,CMPS设备管理器启动位于VSC管理器的记录会话,如步骤7010所示。在步骤7012中,CMPS设备管理器将获得文件ID的请求通知给CMPS消息管理器。随后,在步骤7014中,从CMPS消息管理器向客户端发送已经打开了记录序列的确认。
在步骤7016中,客户端使CMPS消息管理器从虚拟机获得与ECM相关地进行存储的节目的PMT表的一部分。在步骤7018中,向客户端确认已成功执行。
在步骤7020中,由客户端发送开始内容的实际记录的请求。然后,CMPS消息管理器向CMPS设备管理器发送相应的请求(步骤7022)。在步骤7024中,CMPS设备管理器向CMPS消息管理器确认此请求,并且在步骤7026中,CMPS消息管理器确认由客户端进行的请求。
记录适当地开始,在接收器/解码器中的CMPS、HDVR和其他系统之间重传送另外的消息,直到记录适当地结束为止。稍后,将参照图18,对此记录‘环’进行描述。仍将参照图17,首先对此环结束之后的其他步骤进行描述。
在记录期间的任何时刻,客户端都可以向CMPS消息管理器发送结束正常记录的请求(步骤7028)。在步骤7030中,CMPS消息管理器通知CMPS设备管理器:应当结束记录,并且在步骤7032中,CMPS设备管理器通知VSC管理器:应当关闭记录会话。在步骤7034中,CMPS设备管理器向CMPS消息管理器确认已经成功地执行了结束记录的请求。在步骤7036中,CMPS消息管理器向客户端进行报告。
在步骤7038中,客户端请求CMPS消息管理器关闭记录序列,在步骤7040中,CMPS消息管理器向客户端确认已经完成。
最后,在步骤7042中,客户端请求CMPS消息管理器关闭记录会话,在步骤7044中,CMPS消息管理器向客户端确认已经完成。
现在,将参照图18,对正常记录进行描述。具体地,步骤7102、7104和7106示出了记录‘环’的核心:在步骤7102中,由EDLI将由MLOAD提取出的下一ECM传递给设备管理器线程2320中的资源管理器。然后,资源管理器将ECM发送给LCARD设备(提供对条件存取智能卡的存取),并依次接收来自LCARD设备的已解码控制字(再次使用EDLI作为中介)。在步骤7104中,将这样获得的控制字转发给中间件(再次通过EDLI),如果适当的话,允许对相应内容的现场解扰(以及下述的CMM的创建)。在步骤7106中,将控制字转发给VSC管理器,以允许针对其他记录会话适当地创建CMM。
在步骤7108中,客户端向CMPS消息管理器发送针对当前记录会话开始记录的请求。在步骤7110中,从CMPS消息管理器向CMPS设备管理器发送相应的请求。在步骤7112中,CMPS设备管理器向CMPS消息管理器确认该请求,CMPS消息管理器在步骤7114中确认由客户端做出的开始记录的请求,并确认已经开始。与先前一样,步骤7116、7118涉及从MLOAD设备接收下一ECM(步骤7116),并由条件存取智能卡(未示出)对ECM进行解码,向其他感兴趣的各方返回控制字(步骤7118)。在步骤7120中,CMPS设备管理器通知CMPS消息管理器:已经从EDLI接收到新的ECM部分。在步骤7122中,由CMPS消息管理器将此报告给客户端。
在步骤7124中,客户端向CMPS消息管理器发送针对新CMM的请求。在步骤7126中,CMPS消息管理器向CMPS设备管理器发送此请求。随后,在步骤7128中,向VSC管理器发送命令,以创建CMM(利用由设备管理器线程2320中的资源管理器提供的控制字和其他相关信息与命令一起),并由VSC管理器(未示出)将CMM返回给设备管理器。在步骤7130中,CMPS设备管理器向CMPS消息管理器确认已经获得CMM,并在步骤7132中,向客户端进行确认。
播放器会话的消息交换大体上遵循与上述消息相同的结构,具有:一系列的初始化消息以打开播放器会话、消息的主‘环’以处理CMM到CMPS的传送(如其他地方所述,由虚拟智能卡直接设置控制字)、以及消息的最终交换以关闭会话。因此,这里将不再对播放器会话的消息进行描述。
虚拟智能卡
先前所提及的虚拟智能卡(VSC)2400是对能够插入到RCARD设备3442中的CMPS智能卡的功能的软件仿真。
VSC提供以下功能:
·根据ECM创建CMM
·从CMM中提取内容
·返回从CMM中提取出的控制字
·产生会话密钥
·借助于会话密钥对消息进行加密和解密
·产生控制字(在要执行本地重新加扰的情况下)
VSC利用位于接收器/解码器的中间件中的密码库,以软件的形式仿真CMPS智能卡的这些基本功能。将此密码库设置为虚拟机中的分立模块,但在优选实施例的变体中,将其设置在VSC管理器本身中,或者设置在接收器/解码器的其他部分或附加的密码智能卡中。主处理器和相关联的存储器用于仿真真实智能卡的板上处理器和存储器。在优选实施例中,CMPS设备管理器线程2320的资源管理器模块2370与VSC管理器进行通信,其顺序与VSC进行通信。然后,资源管理器2370适当地与消息管理器进行通信,以便将结构返回给系统的其他部件。
VSC包含三个惟一的密钥,分别用于加密、签名验证和会话产生。在优选实施例中,响应打开会话的第一请求,在需要时,产生这些密钥。在优选实施例的变体中,在创建VSC时(例如,在重新引导之后,初始化接收器/解码器时),较早地产生了这些密钥。
当CMPS智能卡出现时,由CMPS系统从CMPS智能卡获得上述密钥。代替地,如稍后所讨论的那样,有效地利用接收器/解码器的随机特性来产生这些密钥。
现在,将简要描述VSC 2400执行以上所列出的CMM相关功能的方式。
VSC根据其通过VSC管理器2350从CMPS资源管理器线程2320接收到的两个数据组件,创建CMM。第一组件包含公共信息;第二组件包含从ECM中提取出的控制字或ECM本身(参见稍后与图24有关的描述)。在优选实施例的变体中,第二组件还包含从URM中提取出的数据。
VSC连接这两个组件,然后参照已连接的组件,计算密码签名;在对净荷(即,控制字和/或ECM、签名和填充)进行解密之前,将此签名附加到消息上(如果需要的话,与多个比特的填充一起,使消息具有均匀的长度)。在优选实施例中,使用CBC-MAC密码技术来计算和验证消息上的签名,该签名是与消息本身和共享对称密钥相关地创建的。
在回放期间,VSC 2400通过对净荷进行解密,去除填充,并利用所附加的签名,对已解密消息(和公共信息)进行验证,从客户端经CMPS线程传递给其的CMM中提取控制字(或ECM)。然后,由VSC使用控制字设备3760将提取出的控制字直接加载到解扰器中。在优选实施例的变体中,为了在不明确的情况下进行参阅的目的,将密钥句柄(密钥ID)返回客户端。
在优选实施例的变体中,VSC创建和存储包含以URM形式传送的信息的表格,代替如上所述的存储来自CMM本身中的URM的信息。此信息包括文件标识符以及与其相关联的权利和限制(从URM中提取出)。当用户想要回放已存储节目时,可以对与该节目相关联的权利和限制进行访问,而无需从存储设备读取内容数据本身。
虚拟智能卡管理器
VSC管理器2350封装了CMPS智能卡的功能性,其为虚拟智能卡(VSC)或真实智能卡(如RCARD设备中所示出的那样)的形式。因此,(尤其)VSC管理器执行路由功能,但也执行特定的管理功能。VSC管理器还定义了可以正当地发送给VSC的消息。
依照其上述路由功能,VSC管理器提供了用于确定是将真实的智能卡还是将VSC用于特定任务的功能(在其中提供了虚拟CMPS智能卡和真实CMPS智能卡的优选结构中)。可以根据接收器/解码器(包括其上的负载)的特性和/或正在进行处理的内容数据的特性,做出这一决定。例如,该内容可能是具有相对的商业价值的,从而希望从真实智能卡所提供的较好的安全性中获益,或者可能需要由VSC提供的更快速的处理。
由VSC管理器提供的高级功能包括用于创建VSC实例的创建器功能、用于毁坏VSC(释放分配给VSC的资源)的破坏器、以及用于确定VSC模块当前是否存在的询问功能。在优选实施例中,任何时刻,都只能存在一个虚拟智能卡,但在优选实施例的变体中,多个实例是可能的。
由VSC管理器提供的低级功能(由VSC和/或真实CMPS智能卡来反映)包括:用于创建、复制、销毁、存储、加载和删除数据对象的功能;加密和解密功能;以及上述用于构造CMM的功能,包括产生和使用签名,以及添加和去除封装;以及用于产生随机数和产生和/或得出密钥的功能,如稍后详细所述。
VSC管理器还提供用于创建和销毁或者在设备管理器线程2320和VSC之间的会话的功能。在创建时,向每个新会话分配惟一的标识符(‘SessionID’),并且随后传递给VSC管理器的消息规定了其与之相关的会话的SessionID。此会话不同于(但类似于)先前所述的用于CMPS和客户端之间的通信的会话。与这些CMPS-客户端会话相比,提供了总共三种会话类型:记录器、播放器和管理会话。其中,典型地,只在CMPS和客户端之间相应的记录器和播放器会话期间,创建记录器和播放器后话。
更具体地,记录器会话用于创建与节目数据一起存储的针对本地控制的消息(即,CMM)。播放器会话在已记录内容的回放期间使用;在这些会话期间所使用的功能包括那些与由客户端从发送到VSC的CMM中其他控制字有关以及与通过CW设备将其插入到解扰器中有关的功能。在优选实施例的变体中,利用安全验证信道,向其他实体转发控制字,如具有解扰能力的数字电视或负责加载控制字的HDVR等。
在管理会话中,VSC的基本功能是可用的:即,如创建伪随机数序列等功能。在管理会话中,与CMM的处理有关的功能是不可用的。
需要确保VSC管理器和VSC或真实CMPS智能卡之间的通信。针对此目的,使用主会话密钥。如稍后所述,在与密钥的产生有关的部分中,可以利用SessionID使主会话密钥多样化,以便在需要多于一个的情况下,产生不同的会话密钥。此主会话密钥也可以用于建立与HDVR之间的安全通信,例如,在其中向负责将其传递到CW设备3760的HDVR传送控制字的实施例中。
同样应当注意,作为CMPS设备管理器线程的形成部件,已经描述和示出了(图16)VSC和VSC管理器;但是,其可以适当地设置在CMPS系统内的其他部分。
密钥产生
现在,将参照图19和20,对用于产生密钥的多种装置进行描述。
如上所述,在优选实施例中,通过随机数发生器的操作或通过使已知的密钥多样化来产生多个密钥。
图19示出了前一种情况,其中产生了新的主会话密钥8100。示出了接收器/解码器的多个元件8110(在这种情况下,调谐器、系统时钟和操作系统)和这些元件的多种可测量属性8120(如调谐器的平均误码率、给定信号的信号电平、当前系统时间和自从最后一次复位以来由设备层接口进行的存取次数),还有归一化滤波器8130的频带、比特加扰器模块8140、异或运算器(XOR)8150、以及随机数发生器8160。
选择元件8110的属性8120,如果可能,尽其有效随机和/或不可预测值的能力,优选地,随时间变化。在适当的情况下,则对每个属性8120进行归一化,使其具有与随机种子相同的比特宽度(换句话说,如优选实施例中的情况那样,对于32比特的随机种子,创建32比特的数),从而没有属性可以占有优势。
随后,由比特加扰器对每个属性的归一化数值进行加扰,其以各个属性彼此不同的方式,有效地交换了每个属性的数值的不同比特。例如,如果将已测量属性的不可预测性只限制在几个低阶比特,比特加扰将有效地将此不可预测性分布到整个32比特的空间。
最后,异或运算符将第一比特已加扰数值与第二比特已加扰数值进行组合,然后,将其结果与第三比特已加扰数值进行组合,等等。
然后,将这样创建的随机种子提供给随机数发生器,于是,产生具有所需比特长度的所需的加密密钥(如果需要,追加任意数目的固定长度的随机数)。
在优选实施例的变体中,不存在归一化、比特加扰和异或级中的某些或全部,在一些情况下,以用于组合属性的不同方法进行整体替换,例如,对其进行简单的求和。
在图20中,示出了密钥多样化器8200,其输入为典型的主会话密钥8210、会话ID 8220,而其输出为所得到的会话密钥8230。
本质上,密钥多样化器使用利用了强密码密钥的属性(即,典型地使用素数的多种属性)的公式、与会话ID相关地操作主会话密钥8210,以创建对该会话惟一的会话密钥8230。其伴随这对密钥多样化器的限制,实质上所有不同的会话ID输入将产生惟一的会话密钥8230,并且会话密钥8230足够强,对其的密码分析不容易得到主会话密钥8210。
同样值得注意的是,图19和20所示的元件是示例性的,而不必对应于实际的物理设备。事实上,在优选实施例中,由先前提及的主处理器2002执行归一化和比特加扰功能、异或操作和随机数发生。在优选实施例的变体中,至少一个另外的处理器执行这些功能中的一些,以便减少主处理器上的负荷。
密钥存储
现在,将参照图21,对用于安全存储和再现加密密钥的装置进行描述。
在图21中,示出了密钥分割器8310、存储器存取设备8320和密钥重新组合器8330,以及将存储器存取设备8320与传统的RAM元件8350、硬盘单元2100、EEPROM元件8360和FLASH RAM元件8370相连的数据总线8340。
为了存储加密密钥,例如,将密钥提供给密钥分割器8310,其将密钥截成每个具有特定的比特数的适当数目的部分。在优选实施例中,为了方便,所有部分均具有相同的8比特大小(一个字节),但在优选实施例的变体中,这些部分具有较小和/或较大的尺寸,并且可以彼此间具有不同的尺寸。对于操作,少于8比特的大小通常是不方便的,但可以提供改进的安全性。
然后,由存储器存取设备8230存储密钥的各个部分。实际上,此设备包括多个负责与如大容量存储设备3728(硬盘)等多个存储设备8350、2100、8360、8370进行通信的软件设备。
在优选实施例中,由存储器存取设备根据由调用进程提供的密钥标识符(例如,将其限制为8比特),产生其中存储各个部分的位置(包括存储设备和存储设备中的地址)的精确选择。每个位置和目的地设备需要对特定的密钥标识符惟一,以避免不同密钥的部分之间的重写。在优选实施例中,使用适当复杂的公式,根据密钥标识符和部分号来计算每个空闲的存储位置。在优选实施例的变体中,使用多个表格(在初始化或重新初始化VSC时所产生的)来保持对存储位置的跟踪,并且在存储时,可以利用根据密钥标识符和/或部分号而得到的密钥对已存储密钥的每个单独存储的部分进行加密。
通过来自规定了密钥标识符的调用进程的命令来初始化读取密钥的相应进程,其使得存储器存取设备首先计算存储位置(如上所述),然后,加载所有密钥部分。
然后,将密钥部分转发给密钥重新组合器8330,其对密钥进行重新组装,并将其输出给调用进程。
对上述针对密钥存储方法的另一改进在于,对其中要存储密钥的各个部分的存储器进行随机化(以及,优选地,对其中并不存储这些部分的另一存储器进行随机化)。由于经常可以根据其显而易见的随机性,检测到加密密钥,例如,这样做可以减少密钥被私自重新组装的可能性。
图22和23更详细地示出了密钥存储机制的操作。
图22示出了48比特的加密密钥8400(这里,以16进制的格式示出)、密钥部分8410、8412、8414、8416、8418和已随机化存储器区域8420,并示出了将密钥8400分割成组成部分(在此情况下,不同的尺寸),并将这些部分存储在所指示位置的已随机化存储器区域8420中。
图23示出了使用多于一个设备来存储相同密钥(与只使用一个存储器区域的图22所示的示例相比较)。
在图23中,示出了48比特加密密钥8500、其组成部分8510、8512、8514、8516、8518和EEPROM元件8520、硬盘单元2100和闪速RAM元件8530。这里,示出了将不同部分8510、8512、8514、8516、8518分配给不同的设备8520、2100、8530。
在CMM中对ECM的封装
现在,将参照图24,对在CMM中封装的ECM进行更为详细的描述。
图24示出了在第一和第二情况下(分别为虚线的左侧和右侧),CMM创建步骤8600和内容回放步骤8610。在多种场景中,示出了条件存取系统5000、CMM 5610和CMM中的密钥字段8620。
在第一步骤8600中,用户正在记录对于其需要至少一个CMM的内容(如电视节目)。在这两种情况下,通常需要针对给定CMM 5610的相关ECM。
第一种情况示出了其中已经向用户授权观看对于其需要CMM的内容的存取权利的情形。在这种情况下,条件存取系统5000将包含在ECM中的控制字返回给CMPS系统,并且以控制字填充CMM的相关字段8620。
但是,在第二种情况下,用户并不具有对正在记录的内容的存取权利。响应来自条件存取系统5000的DENY信号,将相关ECM存储在通常为已加密控制字保留的字段8620中。此时,用户不能观看内容,并且只要继续拒绝存取权利,CMM就不能按预期那样进行工作。为了将ECM封装在CMM中,资源管理器2370通过VSC管理器2350,向VSC 2400传递ECM,而不是控制字,作为在上述参照图11的过程期间,创建CMM的请求的参数。
在第二步骤8610中,用户试图回放先前在步骤8600中记录的内容。但是现在,假设先前丢失了对内容的存取权利,但现在适当地获得了该权利。依照CMPS系统的正常功能,客户端(典型地,HDVR系统)将CMM转发给CMPS系统,以便进行处理。
在第一种情况下,CMPS系统照常从CMM 510中的相关字段8620中提取控制字,并将控制字自动提供给解扰器(未示出),以便允许观看该内容。
在第二种情况下,CMPS系统从CMM 5610中提取出ECM,并将其再次转发给条件存取系统5000。在再次未能解密的情况下,CMPS系统将报告故障,并在回放内容的另外的尝试期间,继续对其进行尝试。但是,这一次,解密成功。将控制字传递给解扰器2010,以便使其能够对内容进行解扰,并传递给VSC,VSC使用其产生新的CMM5610,并将其发送给客户端,以便如前所述地进行存储。
应当注意的是,上述系统也可以应用于除了ECM和控制字以外的其他数据形式。此外,尽管已经将第二步骤8610描述为在所述内容的回放期间进行操作-其具有在空闲时执行CMM的有效性的优势,但也可以在任何其他时间“在后台”进行操作,例如,在早上的早些时间,或者响应对授予了适当权利的EMM的接收。
在CMM中封装ECM可以提供HDVR和条件存取系统之间一定程度的独立性。例如,如果在接收器/解码器中设置了多于一个的条件存取系统,这将是尤为有用的。在这种情况下,如前所述,CMPS可用嵌入来自多个条件存取系统的ECM,直到其中之一接收到适当的权利,以允许对ECM进行解析。
上述多种功能的实现的精确的细节及其在硬件和软件之间的分布是实现者进行选择的问题,这里将不对其进行描述。但是,应当注意的是,能够执行接收器/解码器中所需操作的专用集成电路已经商用或可以容易地进行设计,而且可以将其用作硬件加速器的基础,或者更为优选地,对其进行修改,以产生专用硬件加速器,以实现所需的多种操作,从而减少运行软件所需的处理功率。此外,如果足够的处理能力是可用的,可以以软件来实现所需的操作。
已经按照每个组件所提供的特征和功能,以及可选和优选的特征,对模块和其他组件进行了描述。利用所给出的信息和所提供的说明,将对这些特征的实际实现和精确的细节都留给实现者。作为示例,可以以软件实现某些模块,优选地,以C编程语言来编写,并优选地,编译特定模块以运行在用于运行应用程序的处理器上;但是,也可以在分立的处理器上运行某些组件,并可以通过专用硬件来实现一些或全部组件。
上述模块和组件只是示例性的,并且可以按照多种方式来实现本发明,具体地,一些组件可以与执行类似功能的其他组件进行组合,或者在简化的实现中,可以省略一些组件。可以对每个功能的硬件和软件实现进行自由的混合,包括组件间的功能和单一组件内的功能。
应当清楚的是,在电信号和类似的信号上,或利用电信号和类似的信号来执行由硬件、计算机软件等执行的功能。可以将软件实现存储在ROM中,或者可以插入在FLASH中。
应当理解的是,以上只是通过示例,对本发明进行了描述,可以在本发明的范围内,对细节进行修改。
可以单独地或以任意适当的组合来设置在说明书、以及(适当的)权利要求和附图中所公开的每个特征。
Claims (6)
1、一种用于处理数据的设备(2000),包括:
用于接收包括对已加扰内容(800)进行解扰所必需的至少一个控制字的已加密数据(5602)的装置(5550),其中所述设备对于所述已加密数据(5602)不具有存取权利;
用于存储已加密数据的装置(2100);
用于获得对于所存储的已加密数据的存取权利的装置(5000);
用于检索所存储的已加密数据的装置;
用于对检索到的已加密数据进行解密以获得所述至少一个控制字的装置(5000);以及
用于存储所述至少一个控制字来代替所存储的已加密数据,从而能够对所述已加扰内容进行解扰的装置(2300)。
2、如权利要求1所述的设备,还包括用于接收已加扰内容(800)的装置和用于存储已加扰内容的装置。
3、如权利要求2所述的设备,其中所述用于存储已加密数据的装置适于存储具有已加扰内容的已加密数据。
4、一种用于处理设备中的数据的方法,所述方法包括以下步骤:
接收所述设备对其不具有存取权利的已加密数据(5602),所述已加密数据包括对已加扰内容进行解扰所必需的至少一个控制字;
存储所接收的已加密数据;
获得对于所存储的已加密数据的存取权利(5614);
检索所存储的已加密数据;
对检索到的已加密数据进行解密,以获得所述至少一个控制字;
存储所述至少一个控制字来代替所述已加密数据,从而能够对所述已加扰内容进行解扰。
5、如权利要求4所述的方法,还包括接收已加扰内容(800)和存储已加扰内容的步骤。
6、如权利要求5所述的方法,其中所述存储已加密数据的步骤包括存储具有已加扰内容的已加密数据。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP01403228.8 | 2001-12-12 | ||
EP01403228A EP1320006A1 (en) | 2001-12-12 | 2001-12-12 | Processing data |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1605052A CN1605052A (zh) | 2005-04-06 |
CN100476683C true CN100476683C (zh) | 2009-04-08 |
Family
ID=8183020
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB02825029XA Expired - Fee Related CN100476683C (zh) | 2001-12-12 | 2002-12-12 | 用于处理数据的设备,接收器和解码器 |
Country Status (9)
Country | Link |
---|---|
US (1) | US7590860B2 (zh) |
EP (2) | EP1320006A1 (zh) |
JP (1) | JP2005531165A (zh) |
KR (1) | KR100917487B1 (zh) |
CN (1) | CN100476683C (zh) |
AU (1) | AU2002366694A1 (zh) |
IL (1) | IL162346A0 (zh) |
MX (1) | MXPA04005607A (zh) |
WO (1) | WO2003050661A2 (zh) |
Families Citing this family (79)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8806549B1 (en) | 1999-10-13 | 2014-08-12 | Starz Entertainment, Llc | Pre-storing a portion of a program to allow user control of playback |
US20050091376A1 (en) * | 2001-10-12 | 2005-04-28 | Helfman Nadav B. | Apparatus and method for optimized and secured reflection of network services to remote locations |
US20040268410A1 (en) * | 2003-06-11 | 2004-12-30 | Starz Encore Group Llc | Subscription video on demand delivery |
JP4655452B2 (ja) * | 2003-03-24 | 2011-03-23 | 富士ゼロックス株式会社 | 情報処理装置 |
GB2399972A (en) * | 2003-03-26 | 2004-09-29 | Sony Uk Ltd | Common interface controller and method of descrambling transport stream channels |
TW200509637A (en) * | 2003-07-14 | 2005-03-01 | Nagravision Sa | Method to create and manage a local network |
US7900041B2 (en) * | 2003-07-22 | 2011-03-01 | Irdeto Canada Corporation | Software conditional access system |
KR100547810B1 (ko) * | 2003-08-27 | 2006-01-31 | 삼성전자주식회사 | 디지털 멀티미디어 데이터의 재생이 가능한 디지털멀티미디어 방송 수신 장치 및 방법 |
EP1668925A4 (en) * | 2003-09-10 | 2007-04-25 | A D I Video Technologies Ltd | DEVICE, SYSTEM AND METHOD FOR MULTI-CHANNEL PROCESSING |
WO2005051022A1 (en) * | 2003-11-14 | 2005-06-02 | Cingular Wireless Ii, Llc | Personal base station system with wireless video capability |
EP1542472A1 (fr) * | 2003-12-10 | 2005-06-15 | Canal + Technologies | Procédé et dispositif de récupération d'information dans des systèmes de TV numérique interactive |
JP3947978B2 (ja) * | 2003-12-24 | 2007-07-25 | ソニー株式会社 | 再生システム、再生装置及び再生方法 |
FR2866772B1 (fr) * | 2004-02-20 | 2006-04-28 | Viaccess Sa | Procede d'appariement d'un terminal recepteur avec une pluralite de cartes de controle d'acces |
JP2006186521A (ja) * | 2004-12-27 | 2006-07-13 | Leader Electronics Corp | チューナのビットエラーレート(ber)測定の方法および装置 |
DE112005003281B4 (de) | 2004-12-30 | 2012-02-16 | Topaz Systems Inc. | Elektronisches Signatursicherheitssystem |
JP4727237B2 (ja) * | 2005-01-24 | 2011-07-20 | 株式会社エヌ・ティ・ティ・データ | 演算装置およびコンピュータプログラム |
FR2882208B1 (fr) * | 2005-02-14 | 2007-05-11 | Viaccess Sa | Procede et systeme de reception d'un signal multimedia, entite cryptographique pour ce procede de reception et systeme, procede et boite noire pour la fabrication de l'entite cryptographique |
US9652637B2 (en) | 2005-05-23 | 2017-05-16 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Method and system for allowing no code download in a code download scheme |
US8144868B2 (en) * | 2005-05-25 | 2012-03-27 | Zenith Electronics Llc | Encryption/decryption of program data but not PSI data |
US8189786B2 (en) * | 2005-05-25 | 2012-05-29 | Zenith Electronics Llc | Encryption system |
CN100392597C (zh) * | 2005-09-15 | 2008-06-04 | 首都信息发展股份有限公司 | 一种虚拟硬件加速方法及系统 |
US20070140488A1 (en) * | 2005-12-21 | 2007-06-21 | Roundbox, Inc. | Restriction of broadcast session key use by secure module decryption policy |
GB2434661A (en) * | 2006-01-13 | 2007-08-01 | Deepnet Technologies Ltd | Portable communication device with smart card functionality |
KR100698164B1 (ko) * | 2006-01-26 | 2007-03-22 | 엘지전자 주식회사 | 디지털 방송 수신기 초기화를 위한 방법 및 장치 |
US9177176B2 (en) | 2006-02-27 | 2015-11-03 | Broadcom Corporation | Method and system for secure system-on-a-chip architecture for multimedia data processing |
US9904809B2 (en) * | 2006-02-27 | 2018-02-27 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Method and system for multi-level security initialization and configuration |
JP2007304792A (ja) * | 2006-05-10 | 2007-11-22 | Hitachi Omron Terminal Solutions Corp | 認証システムを構成する処理装置及び認証システム及びその動作方法 |
US20070286420A1 (en) * | 2006-06-08 | 2007-12-13 | Widevine Technologies, Inc. | Encryption of video content to vod services and networked personal video recorders using unique key placements |
CA2550698A1 (en) * | 2006-06-19 | 2007-12-19 | Daniel Mccann | Method and apparatus for encryption and pass-through handling of confidential information in software applications |
US9489318B2 (en) | 2006-06-19 | 2016-11-08 | Broadcom Corporation | Method and system for accessing protected memory |
US20080104704A1 (en) * | 2006-10-27 | 2008-05-01 | Ravikumar Mohandas | Security for physically unsecured software elements |
WO2008068078A1 (en) * | 2006-12-07 | 2008-06-12 | International Business Machines Corporation | Remote controller having an rfid tag |
RU2339077C1 (ru) * | 2007-03-13 | 2008-11-20 | Олег Вениаминович Сахаров | Способ функционирования системы условного доступа для применения в компьютерных сетях и система для его осуществления |
US8181039B2 (en) * | 2007-04-13 | 2012-05-15 | Microsoft Corporation | Disc drive counterfeiting countermeasure |
KR20090019579A (ko) * | 2007-08-21 | 2009-02-25 | 삼성전자주식회사 | 스크램블된 영상 제공방법, 이를 적용한 디스크램블 카드및 영상기기 |
US8627079B2 (en) | 2007-11-01 | 2014-01-07 | Infineon Technologies Ag | Method and system for controlling a device |
US8908870B2 (en) * | 2007-11-01 | 2014-12-09 | Infineon Technologies Ag | Method and system for transferring information to a device |
JP5209281B2 (ja) * | 2007-11-22 | 2013-06-12 | 株式会社エヌ・ティ・ティ・ドコモ | 通信端末装置、アクセス制御方法、icカード |
AU2009200139B2 (en) | 2008-01-15 | 2012-02-16 | Aristocrat Technologies Australia Pty Limited | A method of processing a user data card, an interface module and a gaming system |
WO2009100230A1 (en) * | 2008-02-07 | 2009-08-13 | Inflexis Corporation | Mobile electronic security apparatus and method |
US8347112B2 (en) * | 2008-05-08 | 2013-01-01 | Texas Instruments Incorporated | Encryption/decryption engine with secure modes for key decryption and key derivation |
US8300825B2 (en) * | 2008-06-30 | 2012-10-30 | Intel Corporation | Data encryption and/or decryption by integrated circuit |
EP2160030B1 (en) * | 2008-08-27 | 2016-12-21 | Irdeto B.V. | Multi-vendor conditional access system |
EP2192773A1 (en) * | 2008-12-01 | 2010-06-02 | Irdeto Access B.V. | Content decryption device and encryption system using an additional key layer |
US8238217B2 (en) * | 2008-12-16 | 2012-08-07 | General Electric Company | Method and system for detection enhancement for optical data storage |
WO2010080193A1 (en) * | 2009-01-06 | 2010-07-15 | Cytexone Corporation | Method and system for secure distributed computing |
US10057641B2 (en) * | 2009-03-25 | 2018-08-21 | Sony Corporation | Method to upgrade content encryption |
US9106628B2 (en) * | 2009-07-07 | 2015-08-11 | Alcatel Lucent | Efficient key management system and method |
JP5572705B2 (ja) | 2009-07-10 | 2014-08-13 | サーティコム コーポレーション | 電子資産を管理するためのシステムおよび方法 |
KR101295879B1 (ko) * | 2009-08-19 | 2013-08-16 | 한국전자통신연구원 | 패스워드 해독 장치 및 그것의 패스워드 해독 방법 |
CN101720011B (zh) * | 2009-11-23 | 2012-05-23 | 中兴通讯股份有限公司 | 一种在移动多媒体播放时实现智能卡热插拔的方法和终端 |
US9043827B1 (en) * | 2009-12-16 | 2015-05-26 | Prime Research Alliance E, Inc. | Method and system for providing conditional access to encrypted content |
US8250380B2 (en) * | 2009-12-17 | 2012-08-21 | Hitachi Global Storage Technologies Netherlands B.V. | Implementing secure erase for solid state drives |
US9191200B1 (en) * | 2010-10-07 | 2015-11-17 | L-3 Communications Corp. | System and method for changing the security level of a communications terminal during operation |
US8565422B2 (en) * | 2010-12-03 | 2013-10-22 | Salesforce.Com, Inc. | Method and system for enryption key versioning and key rotation in a multi-tenant environment |
FR2970134B1 (fr) | 2010-12-29 | 2013-01-11 | Viaccess Sa | Procede de transmission et de reception d'un contenu multimedia |
US20120237024A1 (en) * | 2011-03-18 | 2012-09-20 | Wei-Ti Liu | Security System Using Physical Key for Cryptographic Processes |
US9392318B2 (en) * | 2011-06-14 | 2016-07-12 | Sony Corporation | Receiver device with multiple decryption modes |
WO2013020003A1 (en) | 2011-08-02 | 2013-02-07 | Cavium, Inc. | Packet classification by an optimised decision tree |
CN102629215A (zh) * | 2012-02-28 | 2012-08-08 | 东信和平智能卡股份有限公司 | 一种虚拟智能卡的通信方法及装置 |
US8782768B2 (en) * | 2012-06-15 | 2014-07-15 | Vmware, Inc. | Systems and methods for accessing a virtual desktop |
EP2827601A1 (fr) * | 2013-07-19 | 2015-01-21 | Nagravision S.A. | Méthode et dispositif pour la protection des clés de déchiffrement d'un décodeur |
US9420325B2 (en) * | 2013-12-20 | 2016-08-16 | Echostar Technologies L.L.C. | Virtualized content sourcing |
US9544402B2 (en) * | 2013-12-31 | 2017-01-10 | Cavium, Inc. | Multi-rule approach to encoding a group of rules |
US9405925B2 (en) * | 2014-02-09 | 2016-08-02 | Microsoft Technology Licensing, Llc | Content item encryption on mobile devices |
EP3133544A4 (en) * | 2014-05-07 | 2017-04-19 | Huawei Technologies Co. Ltd. | Payment method and device and payment factor processing method and device |
CN103986950B (zh) * | 2014-05-12 | 2017-08-04 | 青岛海信电器股份有限公司 | 一种解扰模式的控制方法、装置及设备 |
US10055567B2 (en) | 2014-05-30 | 2018-08-21 | Apple Inc. | Proximity unlock and lock operations for electronic devices |
US9451438B2 (en) | 2014-05-30 | 2016-09-20 | Apple Inc. | Predefined wireless pairing |
US9549375B2 (en) | 2014-05-30 | 2017-01-17 | Apple Inc. | Operating-mode transitions based on advertising information |
US10067955B1 (en) | 2014-12-08 | 2018-09-04 | Conviva Inc. | Custom video metrics management platform |
US20170149749A1 (en) * | 2015-11-20 | 2017-05-25 | Qualcomm Incorporated | Exchanging encrypted media over a local wireless connection in accordance with a local wireless rendered media distribution scheme |
CN105554540B (zh) * | 2015-12-31 | 2019-04-09 | 深圳国微技术有限公司 | 一种网络接口在条件接收卡中的实现方法和装置 |
WO2017140381A1 (en) * | 2016-02-19 | 2017-08-24 | Nec Europe Ltd. | Method for storing data on a storage entity |
US10756892B2 (en) * | 2017-02-09 | 2020-08-25 | Sap Se | Protecting data in a multi-tenant cloud-based system |
US11671250B2 (en) * | 2017-06-04 | 2023-06-06 | Apple Inc. | Migration for wearable to new companion device |
US11113422B2 (en) | 2018-08-03 | 2021-09-07 | Micron Technology, Inc. | Data protection in computer processors |
US11074198B2 (en) * | 2018-09-18 | 2021-07-27 | Micron Technology, Inc. | Key management in computer processors |
US11113095B2 (en) * | 2019-04-30 | 2021-09-07 | Automation Anywhere, Inc. | Robotic process automation system with separate platform, bot and command class loaders |
Family Cites Families (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IL107967A (en) * | 1993-12-09 | 1996-12-05 | News Datacom Research Ltd | Apparatus and method for securing communication systems |
US5619501A (en) * | 1994-04-22 | 1997-04-08 | Thomson Consumer Electronics, Inc. | Conditional access filter as for a packet video signal inverse transport system |
DE69532434T2 (de) * | 1994-10-27 | 2004-11-11 | Mitsubishi Corp. | Gerät für Dateiurheberrechte-Verwaltungssystem |
FR2732537B1 (fr) | 1995-03-31 | 1997-06-13 | Canal Plus Sa | Procede et installation d'enregistrement d'informations numeriques cryptees |
US6157719A (en) * | 1995-04-03 | 2000-12-05 | Scientific-Atlanta, Inc. | Conditional access system |
US6035037A (en) * | 1995-08-04 | 2000-03-07 | Thomson Electronic Consumers, Inc. | System for processing a video signal via series-connected high speed signal processing smart cards |
US6178242B1 (en) * | 1997-02-07 | 2001-01-23 | Nds Limited | Digital recording protection system |
US6101255A (en) * | 1997-04-30 | 2000-08-08 | Motorola, Inc. | Programmable cryptographic processing system and method |
BR9815610A (pt) * | 1997-08-01 | 2004-06-22 | Scientific Atlanta | Verificação da fonte de informações de programa em sistema de acesso condicional |
DE69833821T2 (de) * | 1997-09-18 | 2006-11-30 | Matsushita Electric Industrial Co., Ltd., Kadoma | Übertragungsverfahren und -vorrichtung zum kombinierten Multiplexen und Verschlüsseln |
US6987854B2 (en) * | 1997-09-25 | 2006-01-17 | Thomson Licensing S.A. | Method and apparatus for recording of encrypted digital data |
FR2769779B1 (fr) * | 1997-10-14 | 1999-11-12 | Thomson Multimedia Sa | Procede de controle d'acces a un reseau domestique et dispositif mettant en oeuvre le procede |
JP3389843B2 (ja) * | 1997-10-17 | 2003-03-24 | 日本電気株式会社 | 情報処理装置におけるデジタル放送受信システム |
EP0917356A1 (en) * | 1997-11-17 | 1999-05-19 | CANAL+ Société Anonyme | Packet filtering |
DE19838628A1 (de) * | 1998-08-26 | 2000-03-02 | Ibm | Erweiterte Chipkarten-Kommunikationsarchitektur und Verfahren zur Kommunikation zwischen Chipkartenanwendung und Datenträger |
EP0936774A1 (en) * | 1998-02-13 | 1999-08-18 | CANAL+ Société Anonyme | Recording of scrambled digital data |
EP0936530A1 (en) * | 1998-02-16 | 1999-08-18 | Siemens Nixdorf Informationssysteme AG | Virtual smart card |
JP3428420B2 (ja) * | 1998-02-25 | 2003-07-22 | 松下電器産業株式会社 | デジタル放送受信再生装置 |
CA2241705C (en) | 1998-06-26 | 2006-06-20 | Certicom Corp. | A method for preventing key-share attacks |
US6422460B1 (en) * | 1999-01-29 | 2002-07-23 | Verisign, Inc. | Authorization system using an authorizing device |
EP1026898A1 (en) * | 1999-02-04 | 2000-08-09 | CANAL+ Société Anonyme | Method and apparatus for encrypted transmission |
DE19906432C1 (de) * | 1999-02-16 | 2000-06-21 | Fraunhofer Ges Forschung | Verfahren und Vorrichtung zum Erzeugen eines Datenstroms und Verfahren und Vorrichtung zum Abspielen eines Datenstroms |
US6697489B1 (en) * | 1999-03-30 | 2004-02-24 | Sony Corporation | Method and apparatus for securing control words |
US6289455B1 (en) * | 1999-09-02 | 2001-09-11 | Crypotography Research, Inc. | Method and apparatus for preventing piracy of digital content |
US7085931B1 (en) * | 1999-09-03 | 2006-08-01 | Secure Computing Corporation | Virtual smart card system and method |
KR100605825B1 (ko) * | 1999-09-14 | 2006-07-31 | 삼성전자주식회사 | 하드 디스크 드라이브를 구비하는 방송 수신 시스템의 복사 방지장치 및 방법 |
US6912513B1 (en) * | 1999-10-29 | 2005-06-28 | Sony Corporation | Copy-protecting management using a user scrambling key |
US7010685B1 (en) * | 1999-11-09 | 2006-03-07 | Sony Corporation | Method and apparatus for storing scrambled digital programs by filtering product identifier |
US7110542B1 (en) * | 1999-12-30 | 2006-09-19 | Intel Corporation | Protecting audio/video content during storage and playback on a processor-based system |
EP1134977A1 (en) * | 2000-03-06 | 2001-09-19 | Irdeto Access B.V. | Method and system for providing copies of scrambled content with unique watermarks, and system for descrambling scrambled content |
WO2001093212A2 (en) * | 2000-05-30 | 2001-12-06 | Pointsec Mobile Technologies, Inc. | Apparatus and methods for using a virtual smart card |
JP3742282B2 (ja) * | 2000-06-30 | 2006-02-01 | 株式会社東芝 | 放送受信方法および放送受信装置および情報配信方法および情報配信装置 |
US6853728B1 (en) * | 2000-07-21 | 2005-02-08 | The Directv Group, Inc. | Video on demand pay per view services with unmodified conditional access functionality |
EP1182874A1 (en) * | 2000-08-24 | 2002-02-27 | Canal+ Technologies Société Anonyme | Digital content protection system |
US7269744B1 (en) * | 2000-09-29 | 2007-09-11 | Intel Corporation | System and method for safeguarding data between a device driver and a device |
JP3435398B2 (ja) * | 2000-11-24 | 2003-08-11 | 株式会社東芝 | コンテンツ配信方法及びコンテンツデータ記録再生方法及び装置 |
US7383561B2 (en) * | 2001-06-29 | 2008-06-03 | Nokia Corporation | Conditional access system |
-
2001
- 2001-12-12 EP EP01403228A patent/EP1320006A1/en not_active Withdrawn
-
2002
- 2002-11-14 US US10/295,021 patent/US7590860B2/en not_active Expired - Fee Related
- 2002-12-12 AU AU2002366694A patent/AU2002366694A1/en not_active Abandoned
- 2002-12-12 WO PCT/IB2002/005774 patent/WO2003050661A2/en active Application Filing
- 2002-12-12 KR KR1020047009066A patent/KR100917487B1/ko not_active IP Right Cessation
- 2002-12-12 CN CNB02825029XA patent/CN100476683C/zh not_active Expired - Fee Related
- 2002-12-12 MX MXPA04005607A patent/MXPA04005607A/es not_active Application Discontinuation
- 2002-12-12 IL IL16234602A patent/IL162346A0/xx unknown
- 2002-12-12 EP EP02790676A patent/EP1463983A2/en not_active Ceased
- 2002-12-12 JP JP2003551653A patent/JP2005531165A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
EP1320006A1 (en) | 2003-06-18 |
JP2005531165A (ja) | 2005-10-13 |
WO2003050661A3 (en) | 2004-07-22 |
AU2002366694A8 (en) | 2003-06-23 |
CN1605052A (zh) | 2005-04-06 |
KR100917487B1 (ko) | 2009-09-16 |
EP1463983A2 (en) | 2004-10-06 |
KR20040082381A (ko) | 2004-09-24 |
IL162346A0 (en) | 2005-11-20 |
MXPA04005607A (es) | 2005-04-19 |
US7590860B2 (en) | 2009-09-15 |
US20030110382A1 (en) | 2003-06-12 |
AU2002366694A1 (en) | 2003-06-23 |
WO2003050661A2 (en) | 2003-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100476683C (zh) | 用于处理数据的设备,接收器和解码器 | |
CN100531295C (zh) | 控制集成接收机的解码器中的多路分离过程的方法和设备 | |
JP4358463B2 (ja) | ハードペア受信機および記憶装置でのメディアプログラムのスーパー暗号化記憶および取得 | |
CN1146233C (zh) | 用于处理加密和未加密视频数据的自适应解码系统 | |
CN1168312C (zh) | 用于处理加密的视频数据以便产生解密的节目数据的方法 | |
US7043020B2 (en) | Smartcard for use with a receiver of encrypted broadcast signals, and receiver | |
CA2321465C (en) | Multimedia terminal adapted for multiple users | |
EP1332621B1 (en) | Transmitting and processing protected content in a conditional access system | |
CA2284023C (en) | Broadcast and reception system, and conditional access system therefor | |
CN1655133B (zh) | 用于外部数据存储的方法与系统 | |
KR100566008B1 (ko) | 암호화된 디지털 데이터의 녹화를 위한 방법 및 장치 | |
CN100385910C (zh) | 在多信道中传输应用数据的方法和数字电视系统中的解码器 | |
US20040022271A1 (en) | Signal generation and broadcasting | |
JP4246414B2 (ja) | ハードペア受信機および記憶装置を使用したメディアプログラムの安全な記憶およびリプレー | |
JP2002111656A (ja) | スマートカード発生鍵によるメディアプログラムのスーパー暗号化記憶および取得 | |
KR20020061645A (ko) | 리시버/디코더 동작 | |
TW201228399A (en) | Method for transmitting and receiving a multimedia content | |
US20050114698A1 (en) | Remote control protocol for a local action to generate a command message |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090408 Termination date: 20161212 |