CN103354998A - 控制字保护 - Google Patents
控制字保护 Download PDFInfo
- Publication number
- CN103354998A CN103354998A CN2011800665828A CN201180066582A CN103354998A CN 103354998 A CN103354998 A CN 103354998A CN 2011800665828 A CN2011800665828 A CN 2011800665828A CN 201180066582 A CN201180066582 A CN 201180066582A CN 103354998 A CN103354998 A CN 103354998A
- Authority
- CN
- China
- Prior art keywords
- key
- chipset
- signature verification
- verification key
- receiver
- 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.)
- Granted
Links
- 238000012795 verification Methods 0.000 claims abstract description 199
- 238000000034 method Methods 0.000 claims abstract description 87
- 238000007726 management method Methods 0.000 claims description 31
- 238000003860 storage Methods 0.000 claims description 26
- 238000009795 derivation Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 7
- 230000006870 function Effects 0.000 description 81
- 230000002411 adverse Effects 0.000 description 18
- 230000007246 mechanism Effects 0.000 description 17
- 238000012545 processing Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 8
- 230000001419 dependent effect Effects 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 5
- 238000009826 distribution Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000011084 recovery Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0877—Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
- H04L9/0897—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3234—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
-
- 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
- H04N21/4181—External card to be used in combination with the client device, e.g. for conditional access 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/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/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
- H04N21/4367—Establishing a secure communication between the client and a peripheral device or smart card
-
- 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4405—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream decryption
-
- 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/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/633—Control signals issued by server directed to the network components or client
- H04N21/6332—Control signals issued by server directed to the network components or client directed to client
- H04N21/6334—Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key
- H04N21/63345—Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key by transmitting keys
-
- 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/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/835—Generation of protective data, e.g. certificates
- H04N21/8352—Generation of protective data, e.g. certificates involving content or source identification data, e.g. Unique Material Identifier [UMID]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
-
- 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
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/061—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0853—Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
一种用于在接收器的芯片组中安全地获得控制字的方法,所述控制字用于对由接收器接收到的已加扰内容进行解扰,所述方法包括在芯片组处:从可通信地连接到芯片组的有条件访问/数字权利管理客户端接收虚拟控制字的受保护版本;从虚拟控制字的受保护版本获得虚拟控制字;以及利用第一密码函数从包括虚拟控制字以及多个签名验证密钥或者由多个签名验证密钥导出的一个或更多值的输入产生给定输出,每一个签名验证密钥与一个有条件访问/数字权利管理系统相关联,所述给定输出包括至少一个控制字,其中第一密码函数具有如下属性:确定包括签名密钥和签名验证密钥的密钥对以及用于第一密码函数的包括所确定的签名验证密钥或者至少部分地从所确定的签名验证密钥导出的一个或更多值的输入是不可行的,从而使得第一密码函数从所确定的输入产生给定输出。
Description
技术领域
本发明涉及用于在接收器的芯片组中安全地获得控制字的方法和设备。本发明还涉及用于对接收器的芯片组提供控制字的方法和系统。本发明还涉及用于实施所述方法的计算机程序,以及存储所述计算机程序的计算机可读介质。
背景技术
用于数字视频广播(DVB)传送的有条件访问/数字权利管理(CA/DRM)系统是众所周知的,并且被结合付费电视(TV)服务广泛地使用。这样的系统提供包括一项或更多项服务的广播流到例如包含在机顶盒或支持广播服务的移动终端内的数字接收器的安全传送。为了保护广播服务免受未经授权的观看,利用通常被称作控制字的加密密钥在传送器侧对数据分组进行加扰(加密)。CA/DRM实施仅仅针对经过授权的接收器的控制字的选择性分发。通过周期性地改变控制字从而使其仅仅对于特定时间段有效的做法提供了另外的安全性。通常利用所谓的授权控制消息(ECM)按照已加密形式把控制字传送到接收器。
在接收器中,把ECM从传输流中滤出并且发送到安全的计算环境,所述安全的计算环境被称作CA/DRM客户端(例如CA/DRM客户端可以是具有嵌入式软件的智能卡,或者可以是在接收器内部执行的模糊软件模块)。CA/DRM客户端随后利用一个更高级别密钥对ECM进行解密,其中所述更高级别密钥是被授权访问与包括在ECM中的控制字相关联的TV频道的所有CA/DRM客户端所共有的。控制字被返回到接收器,所述接收器把控制字加载到解扰器中以用于解扰数据。
在数字视频广播(DVB)系统中,控制字盗版是一个严重的问题。常见的攻击对于控制字是在所有接收器上解锁内容的共享密钥这一事实加以利用。敌对方可以破解密钥递送基础设施的一部分以便获得控制字,并且把控制字重新分发给未经授权的接收器。举例来说,敌对方有时能够拦截从CA/DRM客户端向接收器传送的控制字,并且通过本地网络或因特网重新分发所述控制字。然后所重新分发的控制字被用来在没有经过合法授权的CA/DRM客户端的情况下对已加扰服务进行解扰。因此存在应当保护控制字的保密性和真实性的安全性要求。
在某些情况下,芯片组支持密钥分层结构,从而基于在制造处理期间安装的秘密密钥来保护控制字递送。附图当中的图1示出了用以加载密钥以便解扰内容的接收器的芯片组102的现有技术实例。解密模块114、116和118使用已加密输入数据和输入密钥来获得已解密输出数据。芯片制造商利用对应于对称芯片组独有密钥CSUK的伪随机秘密值来将芯片组个性化,并且为芯片组指派一个非秘密芯片组序列号CSSN以供未来识别。元件104和106分别是用于存储CSSN和CSUK的只读存储器位置。元件108和110是用于临时存储已解密输出数据的读写存储器位置。如图所示,内容解码器112对已解扰内容进行解码。各个元件之间的数据流程由箭头表示。沿着箭头的标签指示出数据流程。
如图1中所示,在芯片组102中接收到由{Content}CW标示的利用控制字CW加扰的内容流。为了提供解扰内容所需的控制字,芯片组102支持利用输入{CW}CSLK安全地加载相关联的CW,该输入{CW}CSLK标示利用对称芯片组加载密钥CSLK加密的CW。在芯片组102处接收到由输入{CSLK}CSUK标示的利用对称芯片组独有密钥CSUK加密的所述CSLK。为了解密{CSLK}CSUK,需要CSUK。与特定芯片组相关联的CSUK和芯片组序列号CSSN通常被预先安装在该芯片组的一些存储器位置处(分别是元件104和元件106)并且无法被更改。在操作中,从芯片组102中的受保护存储装置(即元件106)获取CSUK,并且将其用来利用解密模块114从{CSLK}CSUK中解密CSLK。一旦被解密之后,就把CSLK存储在存储器(即元件108)中,并且可以将其用来利用解密模块116解密{CW}CSLK。最后,存储在存储器(即元件110)中的明文控制字被解密模块118使用来对传入的已加扰内容{Content}CW进行解扰,从而可以由芯片组利用内容解码器112对内容进行解码。内容解码器112可以处在芯片组102外部并且通常是接收器的一部分。
通常来说,对于垂直市场接收器,芯片制造商向CA/DRM供应商提供一个(CSSN,CSUK)对列表,从而允许利用图1中描绘的方法把对应于芯片组加载密钥CSLK的值加载到芯片组中。已知的有条件访问系统使用例如图1中所示的密钥加载机制,这是通过把授权管理消息(EMM)和ECM从头端系统发送到CA/DRM客户端。对于图1中的实例,EMM包括CSLK(其针对CA/DRM客户端,并且利用由CA/DRM系统提供的保密且真实的信道来保护)及其已加密版本{CSLK}CSUK(其针对芯片组102)。ECM包括已加密CW。CA/DRM客户端把{CSLK}CSUK提供到芯片组,并且可以使用CSLK作为用于加载控制字序列的密钥。也就是说,CA/DRM客户端可以使用CSLK对包括在ECM中的CW进行再加密,从而得到被发送到芯片组102的消息{CW}CSLK。CSLK通常对于CA/DRM客户端与芯片组的特定组合来说是独有的,并且因此只有该芯片组可以对接收自所述CA/DRM客户端的{CW}CSLK进行解码(从而共享CW加载消息{CW}CSLK是不可能的)。
对于水平市场接收器,CA/DRM系统运营商应当能够交换CA/DRM系统。在前面对于垂直市场接收器描述的解决方案中,与接收器相关联的秘密主密钥(也就是密钥CSUK)对于CA/DRM供应商是已知的。从安全性的角度来看,这一属性对于水平市场接收器是不合期望的。这方面的一个原因在于,当前的CA/DRM供应商可能在CA/DRM系统已被交换之后公开所述秘密主密钥CSUK,从而损害接收器的安全性。因此,针对水平接收器的一项安全性要求是所述方案不应当要求对于某一CA/DRM供应商已知的任何接收器秘密需要被任何其他CA/DRM供应商所知。在前面描述的方案中,这一要求没有得到满足。
虽然图1中的实例描绘了一种使用对称密码算法的方法,但是也可能使用如附图当中的图2所示的非对称或公共密钥密码术。
图2示出了实施控制字加载的典型芯片组,其使用非对称密码算法来保护控制字的保密性。与芯片组序列号CSSN相关联的芯片组202包括元件204(只读存储器存储位置)、用于存储一个密钥对的元件208和元件210(读写存储器存储位置)以及用于临时存储明文控制字的元件212(读写存储器位置)。为了保护所述密钥对的真实性,元件208和元件210优选地是一次性写入存储器位置。
取代在制造期间加载(CSSN,CSUK)对并且把各个对发送到CA/DRM供应商及其运营商(如在图1所示的实例中所施行的那样),图2中所示的芯片组202的芯片制造商通过激活密钥对个性化模块206来对芯片组202进行个性化,该模块生成由芯片组公共密钥CSPK和芯片组秘密密钥CSSK构成的一个随机密钥对。CSPK和CSSK分别被存储在元件208和210中。可替代地,密钥对个性化模块206可以被实施在芯片组202外部(例如被实施在对于芯片组制造商可获得的芯片组个性化系统中),并且制造商可以在其个性化期间把CSSK加载到芯片组202中。在此之后,制造商可以从其(多个)系统中删除CSSK。
制造商保持各个数字对,其中每一对由芯片组序列号CSSN及其相关联的芯片组公共密钥CSPK构成。可以使得(CSSN,CSPK)对的列表对于所有CA/DRM供应商是可获得的。应当提到的是,只需要保护这些对的真实性,因为数字CSSN和CSPK不是秘密。CSPK被用来对只有具有相应的CSSK的接收器才能解密(利用解密模块216)的CW进行加密。也就是说,已加密控制字{CW}CSPK是一种独有数据式样,因为没有其他接收器会生成相同的随机密钥对(CSPK,CSSK),因此共享CW加载消息{CW}CSPK是不可能的。然后临时存储在元件212中的已解密CW被解密模块218用来解密{Content}CW,从而产生已解扰内容。然后利用内容解码器214随后对已解扰内容进行解码。
图2中描绘的公共密钥解决方案的好处是芯片组秘密密钥CSSK不需要为任何CA/DRM供应商所知。但是由于CSPK是公共密钥,因此其对敌对方也是可获得的。具体来说,例如在从另一个接收器破解了给定控制字CW之后,敌对方可以使用CSPK来向与该CSPK相关联的接收器分发CW。也就是说,这种方法不会保护CW加载消息的真实性。
可以针对图2中描绘的公共密钥解决方案添加用于保护CW加载消息的真实性的第二种独立机制。举例来说,可以使用消息认证代码(MAC)来保护CW加载消息{CW}CSPK的真实性。MAC是基于在CA/DRM客户端与芯片组之间共享的秘密密钥KMAC的一种对称密码技术。具体来说,CA/DRM客户端使用KMAC作为密码来生成CW加载消息{CW}CSPK的MAC值。可以把所计算的MAC值附加到该消息。在接收到所述消息和MAC值之后,芯片组使用KMAC来验证该MAC值。可替代地,可以使用一种基于公共密钥密码术(即非对称数字签名)的方法来保护CW加载消息{CW}CSPK的真实性。在这样的解决方案中,制造商在个性化阶段期间把与数字签名方案相关联的公共密钥加载到接收器中。该公共密钥可以被用作一种真实性机制的根密钥。接收器可以使用所述真实性机制来验证CW加载消息{CW}CSPK的真实性。
但是对于所述全部两种真实性方案(对称和非对称),被用于签署消息的主密钥都是秘密密钥。这就意味着如果该主密钥被分发到CA/DRM供应商,则以下要求得不到满足:所述方案不应当要求对于某一CA/DRM供应商已知的任何接收器秘密需要被任何其他CA/DRM供应商所知。
为了履行该要求并且保护控制字的保密性和真实性,可以扩展作为受信任方的芯片制造商的角色(或者可以使用附加的受信任方)。例如,可以在全部两种方案中引入一个附加的密钥层,并且所述受信任方可以管理这样的方案的根密钥。但是这就意味着受信任方需要在其个性化完成之后管理与接收器相关联的(至少)一个秘密。出于责任原因,受信任方的这一角色对于芯片组制造商来说是不合期望的。这就意味着将需要附加的受信任方。
需要一种用于把控制字加载到芯片组上的改进解决方案以解决前述问题。也就是说,需要一种具有以下属性的方案:(i)CW的保密性和真实性得到保护;(ii)CA/DRM系统可以独立地使用该方案而无需共享秘密密钥;以及(iii)在接收器的个性化之后,受信任方不再需要管理与该接收器(芯片组)相关联的任何秘密密钥。
发明内容
根据本发明的第一方面,提供一种用于在接收器的芯片组中安全地获得控制字的方法,所述控制字用于对由所述接收器接收到的已加扰内容进行解扰,所述方法包括在所述芯片组处施行以下步骤:从可通信地连接到芯片组的有条件访问/数字权利管理客户端接收虚拟控制字的受保护版本;从所述虚拟控制字的受保护版本获得虚拟控制字;以及利用第一密码函数从包括虚拟控制字以及多个签名验证密钥或者由多个签名验证密钥导出的一个或更多值的输入产生给定输出,每一个签名验证密钥与一个有条件访问/数字权利管理系统相关联,所述给定输出包括至少一个控制字,其中第一密码函数具有如下属性:确定包括签名密钥和签名验证密钥的密钥对以及用于第一密码函数的包括所确定的签名验证密钥或者至少部分地从所确定的签名验证密钥导出的一个或更多值的输入是不可行的,从而使得第一密码函数从所确定的输入产生给定输出。
所述方法可以包括接收及存储所述多个签名验证密钥当中的一些签名验证密钥,其中所述第一密码函数被设置成使用所述存储的签名验证密钥作为针对第一密码函数的输入的一部分。
所述方法可以包括:接收所述多个签名验证密钥;从所接收到的多个签名验证密钥生成一个导出值;以及存储所生成的导出值;其中,所述第一密码函数被设置成使用所述存储的导出值作为针对第一密码函数的输入的一部分。
所述方法可以包括:在芯片组处接收芯片组加载密钥的受保护版本,其中对芯片组加载密钥的受保护版本进行保护以保护芯片组加载密钥的真实性和保密性;以及从芯片组加载密钥的受保护版本获得芯片组加载密钥。
虚拟控制字的受保护版本可以是利用芯片组加载密钥加密的虚拟控制字;在这种情况下,从虚拟控制字的受保护版本获得虚拟控制字可以包括使用芯片组加载密钥来解密虚拟控制字的受保护版本。
芯片组加载密钥的受保护版本可以包括利用与芯片组相关联的公共密钥加密的芯片组加载密钥以及利用与一个有条件访问/数字权利管理系统相关联的签名密钥的基于芯片组加载密钥的签名,在这种情况下,从芯片组加载密钥的受保护版本获得芯片组加载密钥可以包括:利用对应于与所述有条件访问/数字权利管理系统相关联的签名密钥的签名验证密钥来验证签名,其中所述签名验证密钥是多个签名验证密钥的其中之一;以及利用与芯片组相关联的秘密密钥来解密所述已加密芯片组加载密钥,所述秘密密钥对应于与芯片组相关联的公共密钥。
所述方法可以包括:由芯片组存储从芯片组加载密钥的受保护版本获得的芯片组加载密钥,从而使得所存储的芯片组加载密钥可以被用来解密由芯片组接收到的虚拟控制字的受保护版本。
所述方法可以包括:接收多个签名验证密钥连同虚拟控制字的受保护版本;以及确定是否利用其中一个接收到的签名验证密钥对基于所存储的芯片组加载密钥的签名进行了验证,并且如果确定没有利用其中一个所接收到的签名验证密钥对基于所存储的芯片组加载密钥的签名进行验证,则不利用所存储的芯片组加载密钥来解密由芯片组接收到的虚拟控制字的受保护版本。
所述接收器可以是多个接收器当中的一个接收器,所述多个接收器当中的每一个接收器具有相应的芯片组,所述芯片组具有相关联的秘密密钥,并且与所述多个接收器当中的各个接收器的芯片组相关联的秘密密钥彼此不同。
根据本发明的第二方面,提供一种用于向接收器的芯片组提供控制字的方法,所述控制字用以允许接收器对传送到该接收器的已加扰内容进行解扰,所述方法包括:在头端系统处生成虚拟控制字;经由接收器把虚拟控制字从头端系统传送到一个有条件访问/数字权利管理客户端,其中所述有条件访问/数字权利管理客户端可通信地连接到芯片组;利用第一密码函数从包括虚拟控制字以及多个签名验证密钥或者由多个签名验证密钥导出的一个或更多值的输入产生给定输出,每一个签名验证密钥与一个有条件访问/数字权利管理系统相关联,所述给定输出包括至少一个控制字,其中第一密码函数具有如下属性:确定包括签名密钥和签名验证密钥的密钥对以及用于第一密码函数的包括所确定的签名验证密钥或者至少部分地从所确定的签名验证密钥导出的一个或更多值的输入是不可行的,从而使得第一密码函数从所确定的输入产生给定输出;利用控制字对内容进行加扰从而产生已加扰内容;以及把已加扰内容传送到芯片组。
所述接收器可以与一个有条件访问/数字权利管理系统相关联,在这种情况下,所述方法可以包括向芯片组传送芯片组加载密钥的受保护版本,其中对芯片组加载密钥的受保护版本进行保护以便保护芯片组加载密钥的真实性和保密性,所述芯片组加载密钥用以允许接收器访问虚拟控制字。
芯片组加载密钥的受保护版本可以包括利用与芯片组相关联的公共密钥加密的芯片组加载密钥以及利用与有条件访问/数字权利管理系统相关联并且对应于多个签名验证密钥的其中之一的签名密钥的基于芯片组加载密钥的签名,其中所述有条件访问/数字权利管理系统与接收器相关联。
所述方法可以包括经由第二接收器把控制字从头端系统传送到第二有条件访问/数字权利管理客户端,其中第二有条件访问/数字权利管理客户端可通信地连接到第二接收器的第二芯片组。
在前面的各个方面和实施例中,所述多个签名验证密钥当中的至少两个签名验证密钥可以与同一个有条件访问/数字权利管理系统相关联。
在前面的各个方面和实施例中,所述多个签名验证密钥当中的至少两个签名验证密钥可以与不同的有条件访问/数字权利管理系统相关联。
在前面的各个方面和实施例中,可以通过向第二密码函数提供多个签名验证密钥来产生一个导出值,其中第二密码函数具有如下属性:生成包括签名密钥和签名验证密钥的密钥对以及用于第二密码函数的包括所生成的签名验证密钥的输入是不可行的,从而使得第二密码函数从所生成的输入产生该导出值。
在前面的各个方面和实施例中,对于多个签名验证密钥当中的每一个签名验证密钥,所述一个或更多导出值可以包括该签名验证密钥的相应的密码散列值。
根据本发明的第三方面,提供一种用于安全地获得控制字的用于接收器的芯片组,所述芯片组被设置成实施如前所述的根据本发明的第一方面(及其实施例)的方法。
根据本发明的第四方面,提供一种内容递送网络的头端系统,所述头端系统被设置成实施如前所述的根据本发明的第二方面(及其实施例)的方法。
根据本发明的第五方面,提供一种包括根据本发明的第三方面的芯片组的接收器。
根据本发明的第六方面,提供一种包括根据本发明的第四方面的头端系统以及一个或更多根据本发明的第三方面的芯片组的系统。
根据本发明的第七方面,提供一种计算机程序,当被执行时,其实施如前所述的根据本发明的第一或第二方面(及其实施例)的方法。
附图说明
现在将仅仅通过举例的方式参照附图来描述本发明的实施例,其中:
图1示意性地示出了利用对称密码术的一种现有技术芯片组;
图2示意性地示出了利用非对称密码术的另一种现有技术芯片组;
图3示意性地示出了根据本发明的一个实施例的一种示例性系统;
图4示意性地示出了利用芯片组的一种示例性方法;
图5示意性地示出了用在内容递送网络的头端系统中的一种方法;
图6-8示意性地示出了用在利用DVB SimulCrypt的内容递送网络的头端系统中的各种方法;
图9示意性地示出了使用芯片组的一种实例方法;
图10-12分别示意性地示出了图7-9中所示的系统和方法的经过修改的版本;
图13示意性地示出了图12的芯片组的一种变型;以及
图14-18分别对应于图6、7、8、10和11,并且包括一个或更多传统ECM发生器以及一个或更多传统EMM发生器。
本发明的实施例的详细描述
在后面的描述中并且在附图中描述了本发明的某些实施例。但是将会认识到,本发明不限于所描述的实施例,并且一些实施例可以不包括后面所描述的全部特征。但是将会明显的是,在不背离如所附权利要求书中所阐述的本发明的更宽泛的精神和范围的情况下,可以在这里做出各种修改和改变。
图3示意性地示出了根据本发明的一个实施例的示例性系统7。系统7包括被设置成经由分发网络6与一个或更多接收器2进行通信的头端系统4。
头端系统4通过分发网络6向接收器2传送(或发送或传达)利用一个或更多控制字(即{Content}CW)加扰的内容流。头端系统4可以通过分发网络6向接收器2传送一个或更多ECM和EMM,从而使得接收器2可以访问所述一个或更多控制字,并且从而对已加扰内容流进行解扰。但是将会认识到,虽然将参照ECM和EMM来描述本发明的实施例,但是本发明的实施例不限于利用ECM和EMM。头端系统4可以使用关于图5-8、10、11和14-18描述的任何方法和系统来对内容加扰,并且向接收器2提供加扰信息(例如ECM和EMM)。
分发网络6可以是能够向接收器2传达或广播解扰信息(例如ECM、EMM)和已加扰内容流的任何网络。例如,分发网络6可以包括有线电视网络、卫星通信网络、地面广播网络、因特网等等当中的一项或更多项。
(已加扰)内容流可以包括任意种类的内容数据,比如视频数据、音频数据、图像数据、文字数据、应用/软件数据、节目指南数据等等当中的一种或更多种。
接收器2可以是用于接收ECM、EMM和已加扰内容流的任意类型的接收器(或客户端器件)。例如,接收器2可以是机顶盒、集成到内容输出器件(比如电视或无线电收音机)中的接收器、支持广播服务的移动终端、个人计算机等等。接收器2可以包括或者可通信地耦合到用于向用户输出或再现已解扰并且已解码的内容的器件(比如屏幕/监视器和/或一个或更多扬声器)。
接收器2包括用于解扰和/或解码已加扰和/或已编码内容的芯片组1。芯片组1可以可通信地连接到CA/DRM客户端3。一般来说,接收器2接收、过滤ECM和EMM并且将其转发到CA/DRM客户端3以供进一步处理。CA/DRM客户端3访问来自所接收到的ECM和EMM的有条件访问(CA)数据,并且然后可以利用关于图4、9、12和13描述的任何方法和系统把控制字加载到芯片组1上。CA/DRM客户端3可以是可从接收器2移除的安全器件,比如智能卡(并且从而可以包括处理器和存储器以用于实施将在下面描述的CA/DRM客户端功能)。附加地或可替代地,CA/DRM客户端3可以与接收器2集成在一起,并且可以被实施为接收器2的硬件组件和/或实施在运行在接收器2的受保护环境中的软件中和/或实施在运行在接收器2中的模糊软件中。
利用后面描述的方法和系统来传送有条件访问消息(EMM和/或ECM)所需的带宽与通过现有机制安全地把控制字加载到芯片组上所需的带宽相当。这一点是很重要的,因为带宽是宝贵的资源,并且后面描述的解决方案不会降低系统7的总体性能。后面描述的方法和系统提供了一种用于保护控制字的保密性和真实性的解决方案,其允许每一个CA/DRM系统和CA/DRM系统运营商独立地建立密钥加载机制,也就是说不需要在各个CA/DRM系统之间共享任何秘密(其中明显的例外是在SimulCrypt操作中共享控制字,这是因为控制字就其定义是在SimulCrypt操作中共享的)。此外,在所述方案中没有受信任方需要在其个性化完成之后管理与接收器(芯片组)相关联的任何秘密。这就意味着在当前可用的垂直市场接收器解决方案中,受信任方的角色与芯片组制造商的角色相当。此外,新的方法和系统可以从其中真实性机制的根密钥对被破解的安全性漏洞恢复,这是现有解决方案未能给出的安全性特征。
图4示意性地示出了使用芯片组的一种实例方法。通过图示的方式,利用芯片组402和CA/DRM客户端404来实施该方法。(例如头端系统4的)内容递送模块406可以向接收器2的芯片组402提供有条件访问数据(比如ECM和EMM)以及已加扰内容流。芯片组402可以把有条件访问数据传递到CA/DRM客户端404以供进一步处理。
在制造时,可以利用一个密钥对将芯片组402个性化。在个性化阶段期间,该密钥对与一个芯片组序列号CSSN相关联。CSSN被存储在芯片组402的存储器元件410中。所述密钥对包括芯片组公共密钥CSPK(其被存储在芯片组402的存储器元件414中)和相应的芯片组秘密(私有)密钥CSSK(其被存储在芯片组402的存储器元件416中)。所述密钥对优选地是在芯片组402中生成的(例如利用密钥对个性化模块412)。可替代地,密钥对个性化模块412可以被实施在芯片组402外部(例如实施在对于芯片组制造商可获得的芯片组个性化系统中),并且制造商可以在其个性化期间把CSSK和CSPK加载到芯片组402中。在这之后,制造商可以从其(多个)系统中删除CSSK。将会变得显而易见的是,相关联的公共密钥密码系统被用来保护解扰由芯片组402接收到的已加扰内容所需的控制字的保密性。通过使用公共密钥密码术允许芯片制造商对于所生产的每一个芯片组公开CSSN和CSPK。芯片组402的制造商保持各个数字对,每一对由芯片组序列号CSSN及其相关联的芯片组公共密钥CSPK构成。可以使得(CSSN,CSPK)对的列表对于所有CA/DRM系统可获得。在向CA/DRM系统分发的过程中,应当优选地只保护该信息的真实性。
为了防止敌对方也使用所述CSPK来成功地在一个芯片组中生成并使用CW加载消息,后面描述的系统和方法具有一种附加的机制,其要求芯片组402验证CW加载消息的真实性。这一机制防止敌对方向芯片组402发布控制字,即使其知道该芯片组的已公开CSPK。
后面描述的系统和方法通过使用与一个CA/DRM相关联的另一个非对称密钥对实现了这一点,其中所述CA/DRM系统与头端系统4相关联。该密钥对包括与所述CA/DRM系统相关联的(公共)签名验证密钥SVK和相应的(秘密/私有)签名密钥SK。该密钥对用在由签名生成算法和相应的签名验证算法构成的非对称密码方案中。密钥对(SK,SVK)优选地由与头端系统4相关联的CA/DRM系统生成,并且其秘密密钥SK不需要被任何CA/DRM供应商所知。
CA/DRM客户端404可以包括通信模块,其用于接收由芯片组402和/或接收器2转发的ECM和/或EMM以及/或者其他有条件访问信息。该通信模块可以被实施在CA/DRM客户端404的密钥控制模块408内。密钥控制模块408可以从其通过芯片组402接收自内容递送模块406的有条件访问数据获得SVK。SVK可以由头端系统4提供到CA/DRM客户端404。
签名验证密钥SVK被存储在CA/DRM客户端404的存储器元件420中。CA/DRM客户端404可以把签名验证密钥SVK发送到芯片组402,从而使得芯片组402可以把SVK存储在该芯片组402的存储器元件424中。
从后面的讨论将变得显而易见的是,与头端系统4相关联的CA/DRM系统生成一个随机值CW*(其或者被可互换地称作“虚拟控制字”)。虚拟控制字CW*不被直接用于对内容加扰(解扰)。相反,从CW*和SVK可导出的一个值(即控制字CW)是被用于对内容加扰(解扰)的密钥。头端系统4利用ECM把虚拟控制字CW*发送到接收器2的芯片组402。芯片组402对所接收到的ECM进行过滤并且将其转发到CA/DRM客户端404以作为转发到CA/DRM客户端404的有条件访问数据的一部分。密钥控制模块408从其接收到的ECM获得虚拟控制字CW*。
芯片组402包括用于对已加扰内容进行解扰的解扰器434。如前所述,芯片组402在解扰器434中不直接使用CW*,而是利用由芯片组402的H模块432实施的散列函数H从CW*和SVK(其被存储在存储器元件424中)导出CW。H模块432可以先把两个输入(CW*和SVK)合并,并且随后对所合并的输入应用散列函数从而产生输出CW。H模块432可以被实施在芯片组402的密码/安全模块内。函数H也可以是任何其他适当的密码函数(也就是说其不一定必须是散列函数)。函数H的可能实施方式优选地具有以下属性:在给定输出CW的情况下,很难(例如困难、计算上困难、不可行或者计算上不可行)找到一个密钥对(SK*,SVK*)和虚拟控制字CW**从而使得SVK*和CW**映射到CW(也就是说使得在把SVK*和CW**提供为针对函数H的输入或者提供为针对H模块432的输入的情况下将导致输出控制字CW)。在某些实施例中,“很难”可以意味着敌对方可能无法导出一个密钥对(SK*,SVK*)和虚拟控制字CW**从而使得SVK*和CW**在多项式时间或空间中映射到CW。在其他实施例中,可以通过指定找到这样的值所需的操作数目或者存储器大小的下限来定义“很难”。作为第三个实例,可以通过指定所述属性不会得到满足的概率的上限来定义“很难”。
具有这一属性的函数H的一个实例如下:(1)合并输入CW*与SVK从而产生中间结果X,例如通过把SVK的值附加到CW*的值;(2)对输入X应用第二原像抵抗(2nd pre-image resistant)散列函数,从而产生输出CW。为了看出所述优选属性对于该例同样成立,应当观察到,在给定控制字CW和公共密钥SVK的情况下,敌对方将很难确定不等于SVK的SVK*和虚拟控制字CW**从而使得SVK*和CW**映射到CW。为了看出这一点,假设对于敌对方生成这样的SVK*和这样的CW**是不可行的。然后,在给定输出CW以及输入SVK和CW*的情况下,可以应用相同的方法来为散列函数生成由SVK*和CW**构成的第二原像,这是因为SVK*不等于SVK。这意味着所述散列函数不是第二原像抵抗散列函数,从而与所述假设矛盾。其结果是,敌对方的唯一选项是确定与CA/DRM系统(其与头端系统4相关联)的公共密钥相关联的签名密钥(即SVK),这由其定义对于非对称方案来说是不可行的。此外还应当注意到,在虚拟控制字CW*是已知的情况下(即在针对第二原像抵抗散列函数的全部两个输入是已知的情况下),函数H也满足所期望的属性。这可以被视为以下情况:在给定输出CW和针对第二原像抵抗散列函数的指定输入的情况下,确定映射到给定输出CW的针对该第二原像抵抗散列函数的第二不同输入集合就其定义是不可行的。这意味着敌对方无法确定映射到给定CW的不同于SVK的签名验证密钥。敌对方的唯一选项是确定与SVK相关联的签名密钥,这就其定义而言对于非对称密码方案是不可行的。
在应用函数H之后,H模块432把输出CW存储在芯片组402的存储器元件438中。利用来自存储器元件438的CW,解扰模块434可以对由内容递送模块406提供的内容进行解扰,并且把已解扰内容传送到芯片组402的内容解码器440以供进一步处理(例如视频或音频解压缩)。内容解码器440可以被实施在接收器2中以作为与芯片组402分开(或者处于其外部)的模块。
使用对称加密来保护虚拟控制字CW*的保密性和真实性。具体来说,由与头端系统4相关联的CA/DRM系统生成对应于芯片组402(并且优选地为该芯片组402所独有)的对称芯片组加载密钥CSLK。所述CSLK(意图用于CA/DRM客户端404并且利用由CA/DRM系统提供的保密且真实的信道对其进行保护)与初始化式样CSLK-init(意图用于芯片组402)一起被传送到与芯片组402相连的CA/DRM客户端404。初始化式样CSLK-init包括CSLK的已加密版本(利用芯片组402的CSPK加密),并且正如后面将描述的那样还包括CSLK的已加密版本的签名(其中所述签名是利用签名密钥SK生成的)。因此,以可以在芯片组402对CSLK-init进行处理以产生CSLK值的方式,CSLK被加密以产生CSLK-init。
在一些实施例中,利用一个或更多EMM把CSLK(意图用于CA/DRM客户端404并且利用由CA/DRM系统提供的保密且真实的信道对其进行保护)和初始化式样CSLK-init(意图用于芯片组402)从头端系统4传送到芯片组402,并且芯片组402可以过滤出(多个)EMM并且将其转发到CA/DRM客户端404中的密钥控制模块408。(如果在头端系统4内不知道CA/DRM客户端404与芯片组402之间的唯一配对,则优选地使用分离的EMM来打包及传送CSLK和初始化式样CSLK-init)。密钥控制模块408然后可以从(多个)EMM中提取出CSLK和CSLK-init,以供CA/DRM客户端404和芯片组402使用。CSLK可以被存储在CA/DRM客户端404的存储器元件418中,并且CSLK-init可以被存储在CA/DRM客户端404的存储器元件422中。CA/DRM客户端404可以随后把初始化式样CSLK-init转发到芯片组402中。
通过使用CA/DRM客户端404的对称加密模块444,CA/DRM客户端404利用CSLK(其被存储在存储器元件418中)对CW*(其密钥控制模块408已经从被转发到该密钥控制模块408的ECM中提取出)进行加密,从而产生{CW*}CSLK。可以在CA/DRM客户端404的任何适当的安全性模块中利用CSLK对CW*施行加密。CW*的已加密版本{CW*}CSLK然后被传送到芯片组402,在该处将利用芯片组402的对称解密模块442(其对应于对称加密模块444)对{CW*}CSLK进行解密。解密模块442使用存储在芯片组404的存储器元件430中的CSLK值来获得CW*。
可以利用与芯片组402可通信地连接的CA/DRM客户端404中的任何适当的传送模块把初始化式样CSLK-init和/或CW*的已加密版本从CA/DRM客户端404传送到芯片组402。可以利用芯片组402中的再另一个通信模块在芯片组402处接收CW*的已加密版本和/或初始化式样CSLK-init。
为了获得存储在存储器元件430中的CSLK值以用于解密{CW*}CSLK,芯片组402包括两项密码操作,其被实施为签名验证模块426和解密模块428。签名验证模块426和解密模块428可以被实施在芯片组402内的任何适当的密码模块中。芯片组402使用签名验证模块426和与头端系统4相关联的CA/DRM系统的SVK(其被存储在芯片组402的存储器元件424中)来验证CSLK-init的真实性。如果签名验证模块426确定CSLK-init不真实(即如果所述签名不是利用与SVK相关联的SK生成的),则芯片组402可以采取任何适当的后续动作来确保接收器2的用户不会获得解密内容的访问权限,比如不施行任何内容解密直到已经接收到新的CSLK-init消息和/或新的SVK为止,从而可以验证该新的CSLK-init。可替代地,签名验证模块426可以输出一个值,只有在验证成功的情况下解密模块428才能够从该值获得CSLK,即只有在所述CSLK-init是已经利用对应于存储在存储器元件424中的SVK的SK签署的情况下才能够获得CSLK;否则,签名验证模块426可以输出一个值,如果验证不成功则解密模块428将无法从该值获得CSLK,也就是说如果所述CSLK-init不是利用对应于存储在存储器元件424中的SVK的SK签署的,则无法获得CSLK。例如可以使用带有消息恢复的签名机制。
在验证了CSLK-init的真实性之后,利用芯片组402的CSSK(其被存储在存储器元件416中)对CSLK-init中的已加密CSLK进行解密。由于CSLK是利用芯片组402的CSPK加密的,因此只有具有相应的CSSK的芯片组才可以正确地从CSLK-init消息中解密出CSLK。
一旦芯片组402获得了CSLK之后,就可以通过解密模块442利用所获得的CSLK来对{CW*}CSLK进行解密,以便获得CW*。CW*的真实性受到保护,因为如果SVK的真实性和CSLK-init消息的真实性受到保护,则敌对方无法构造出将在芯片组402中产生CW*的对应于给定CW*的已加密CW*消息。CSLK-init消息的真实性通过利用SK对其进行签署而受到保护。利用H模块432和存储在存储器元件424中的SVK值,可以把SVK与CW*合并并且进行处理,从而产生CW。H模块保护签名验证密钥SVK的真实性,因为如果SVK不真实则CW解扰将失败。也就是说,如果由不知道签名密钥SK的敌对方确定的一个密码对(SK*,SVK*)当中的签名验证密钥被提供为针对芯片组的输入(例如以便加载由敌对方选择的CSLK并且使用该CSLK来加载给定的CW*),则H模块432将不会输出正确的CW,并且从而内容解扰将失败。
对称芯片组加载密钥CSLK被用来解密利用对称加密算法和密钥CSLK加密的CW*值。H模块432从CW*和SVK适当地导出CW,从而可以把CW加载到解扰模块434中以便解扰内容。这种实施方式的好处在于,在处理CSLK-init消息以便最初获得CSLK时,芯片组402只需要施行(多项)公共密钥密码操作。在正常操作期间,CSLK和SVK可以被存储在芯片组内部,并且CW处理开销与现有系统类似。与H模块432相关联的计算步骤和普通对称加密(或解密)步骤相当。
为了与关于图4描述的CA/DRM客户端/芯片组配置一起工作,头端系统4被配置成为每一个芯片组402产生芯片组加载密钥初始化式样(CSLK-init)。图5示意性地示出了用在内容递送网络的此类头端系统4中的一种方法。
具体来说,头端系统4的EMM发生器518生成对应于目标芯片组402的随机芯片组加载密钥CSLK(例如利用EMM发生器518的芯片组加载密钥发生器508)。可以利用任何伪随机数发生器来生成CSLK。优选地,EMM发生器518使用芯片组加载密钥发生器508生成对于一个芯片组402群体当中的每一个芯片组402所独有的CSLK,也就是说由头端系统4处的CA/DRM系统服务的每一个接收器2具有不同于其他接收器2的其自身的CLSK。这样就防止了对于消息{CW*}CSLK的(未经授权的)共享。
EMM发生器518利用目标芯片组402的CSPK对所生成的CSLK进行加密(例如使用EMM发生器518的加密模块510)。
EMM发生器518可以包括CSPK存储库504,其存储由该CA/DRM系统服务的各个芯片组402的CSPK。加密模块510所施行的加密处理对应于由芯片组402的加密模块428施行的解密处理。
EMM发生器518使用SK(其被存储在EMM发生器518的存储器元件502中)来签署已加密CSLK,从而产生芯片组加载密钥初始化式样CSLK-init(例如使用EMM发生器518的签名模块512)。EMM发生器518然后把所生成的CSLK-init与CSLK(意图用于CA/DRM客户端404,并且利用由CA/DRM系统提供的保密且真实的信道来保护)打包在一起从而形成一则EMM。该EMM的目标是连接到具有相应的CSPK或CSSN的芯片组402的CA/DRM客户端404。如果在头端系统4内不知道CA/DRM客户端404与芯片组402之间的唯一配对,则优选地生成分离的EMM并且将其用于打包及传送CSLK和CSLK-init。
头端系统4包括生成对应于CW*的随机值的CW发生器506。CW发生器506可以利用任何伪随机数发生器来生成对应于CW*的随机值。
头端系统4包括ECM发生器516,其接收由CW发生器506生成的CW*,并且生成包含所接收到的CW*的ECM。
头端系统4包括多路复用器524。多路复用器524选择适当的数据以传送到CA/DRM模块(或加扰模块)526,其中选择以下各项当中的至少一项:来自ECM发生器516的ECM输出,来自EMM发生器518的EMM输出,以及内容。可以把ECM和/或EMM从多路复用器524传递到内容递送模块528以便传送到芯片组404。由CA/DRM模块526利用CW对传递自多路复用器524的内容进行加扰。这方面可以涉及任何形式的内容加扰技术,其对应于内容解扰模块434能够施行的内容解扰。随后把已加扰内容提供到内容递送模块528,后者把已加扰内容传送到接收器2。
所述头端系统包括H模块520,其用来产生用于在CA/DRM模块526中对内容进行加扰的控制字。H模块520可以被实施在密码模块中。为了产生CW,H模块520实施对应于图4的H模块432的函数H。具体来说,所述H模块从由CW发生器506生成并且在由ECM发生器516提供的ECM中传送的CW*值导出CW。H模块520把存储在存储器元件514中的签名验证密钥SVK与由CW发生器506生成的CW*相组合,并且应用函数H(例如散列函数)以便把CW*值转换成CW,并且前面对于芯片组402的H模块432和函数H的描述(和要求)也适用于H模块520及其函数H。当为其提供相同的输入(SVK和CW*)时,芯片组404的H模块432和头端系统4的H模块520产生相同的输出CW。
前面描述的方法和系统可以被用于例如在DVB SimulCrypt规范(DVB=数字视频广播)中描述的头端系统之类的系统——参见ETSI TS 103 197。DVB SimulCrypt规范允许两个或更多CA/DRM系统共享一个控制字CW以作为共同密钥。在DVB SimulCrypt规范中描述了在加扰数字TV内容流时所使用的用于促进共享CW流的一种常用头端系统协议。
因此,图6示意性地示出了用在利用DVB SimulCrypt的内容递送网络的此类头端系统4中的一种方法。具体来说,在图6中,头端系统4包括两个CA/DRM系统,其具有对应的EMM发生器518(EMMG1和EMMG2)和ECM发生器516(ECMG1和ECMG2)。已经知道,SimulCrypt同步器530被用来协调多个ECM发生器516(例如通过获得由CW发生器506输出的CW*,连同任何特定于CA/DRM的参数把CW*提供到ECM发生器516,从ECM发生器516获取ECM,同步各个ECM以及将其提供到多路复用器524的定时)。在ETSI TS 103 197中阐述的普通DVB系统中,SimulCrypt同步器530将把各个控制字传递到加扰模块526——但是正如前面所讨论的那样,是由H模块520生成用于内容加扰的实际控制字CW并且把所生成的这些控制字CW传递到加扰模块526(这是因为ECM不利用CW而是利用CW*)——因此在图6中,SimulCrypt同步器530被显示为把CW*提供到H模块520。因此,可以使用标准SimulCrypt同步器530,唯一的区别在于其“控制字输出”连接到H模块520而不是直接连接到加扰模块526。
图6中的两个CA/DRM系统可能由不同的内容提供商/CA系统运营商来运行或运营。应当认识到,可以有任意数目的CA/DRM系统与头端系统4相关联,并且本发明的实施例不限于仅仅两个CA/DRM系统。
在图6所示的系统中,各个参与的CA/DRM系统共享所述(SK,SVK)对。具体来说,第一EMM发生器518(EMMG1)和第二EMM发生器518(EMMG2)都知道并利用相同的SK和SVK。具体来说,二者都基于共同的SK和SVK如前所述地为与其对应的CA/DRM系统相关联的接收器2生成EMM。
如前所述地共享共同的SK和SVK存在若干缺陷。具体来说:
● 需要各个CA/DRM系统之间的保密信道来传输及共享秘密密钥SK。但是在不同的CA/DRM系统之间可能不存在保密电子接口(特别是在各个CA/DRM系统与不同CA/DRM供应商相关联的情况下)。因此将希望令每一个CA/DRM系统生成其自身的(多个)SK,并且仅仅共享(多个)相关联的(公共)签名验证密钥SVK。举例来说,这样的SK可以在头端系统4的CA/DRM系统的硬件安全性模块内部生成,并且不需要在任意时间点都在不受保护的情况下可用。
● 例如在秘密签名密钥SK被破解之后换新(SK,SVK)对对于参与在SimulCrypt操作中并且利用SK的所有CA/DRM系统都具有类似的操作影响。具体来说,必须生成利用新的签名密钥签署的新的CSLK-init EMM并且为每一个参与的CA/DRM系统及其所服务的所有接收器2分发。有益的将是限制换新(SK,SVK)对的操作影响。
本发明的实施例旨在解决这些问题。因此图7示意性地示出了用在利用DVB SimulCrypt的内容递送网络的头端系统4中的一种方法。具体来说,在图7中,头端系统4包括两个CA/DRM系统,其具有对应的EMM发生器718(EMMG1和EMMG2)和ECM发生器516(ECMG1和ECMG2)。这与图6中所示的架构相同,其不同之处在于EMM发生器718(EMMG1和EMMG2)包括并且利用对应的签名密钥SK1、SK2以及相应的签名验证密钥SVK1、SVK2。具体来说,第一CA/DRM系统具有其自身的签名密钥SK1及其自身相应的签名验证密钥SVK1,第二CA/DRM系统则具有其自身的(不同的)签名密钥SK2及其自身相应的签名验证密钥SVK2。每一个CA/DRM系统独立地生成其自身的(SKi,SVKi)对,并且可以将其签名密钥SKi对于所有其他CA/DRM系统保密——其只需要公开签名验证密钥SVKi。应当想到该密钥是公共密钥,因此不需要保护其保密性。这意味着在SimulCrypt操作中不再需要各个CA/DRM系统之间的受保护接口。
与图6一样,图7中的两个CA/DRM系统可能由不同的内容提供商/CA系统运营商来运行或运营。应当认识到,在图7所示的系统中可以有任意数目的CA/DRM系统与头端系统4相关联,并且本发明的实施例不限于仅仅两个有条件访问末端系统。因此一般来说可以有n个CA/DRM系统并且因此有对应的n个不同的(SKi,SVKi)对。
图6的H模块520被图7所示的系统中的H模块720所取代。具体来说,由于每一个CA/DRM系统现在具有其自身的签名验证密钥SVKi,因此H模块720被设置成接收签名验证密钥集合SVK1,...,SVKn以及输出自CW发生器506的CW*。H模块720实施的函数H与H模块520类似,其不同之处在于修改了安全性要求以便适应H模块720操作在一个签名验证密钥集合(或者多个签名验证密钥)SVK1,...,SVKn上这一事实。具体来说,H模块720可以合并输入CW*、SVK1,...,SVKn,并且然后可以对所合并的输入应用散列函数从而产生输出CW。函数H也可以是任何其他适当的密码函数(也就是说其不需要一定是散列函数)。函数H的可能实施方式优选地具有以下属性:在给定CW的情况下,很难(例如困难、计算上困难、不可行或者计算上不可行)找到或计算或确定一个密钥对(SK*,SVK*)和针对函数H的输入,从而使得所确定的签名验证密钥SVK*是针对H的所确定输入中的签名验证密钥,并且使得CW是H对于该输入的输出(即使得在向函数H提供该输入或者作为针对H模块720的输入的情况下将导致输出控制字CW)。在某些实施例中,“很难”可以意味着敌对方可能无法在多项式时间或空间中导出这样的输入。在其他实施例中,可以通过指定找到这样的输入所需的操作数目或者存储器大小的下限来定义“很难”。作为第三个实例,可以通过指定所述属性不会得到满足的概率的上限来定义“很难”。
具有这一属性的函数H的一个实例如下:(1)合并输入CW*、SVK1,...,SVKn从而产生中间结果X,例如通过把这些值串联;(2)对输入X应用第二原像抵抗散列函数,从而产生输出CW。前面在讨论仅接受单个SVK的函数H时所提供的分析类似地适用于接受一个签名验证密钥集合的该经过修改的函数H。
图8示意性地示出了用在利用DVB SimulCrypt的内容递送网络的头端系统4中的另一种方法。图8中所示的系统和方法与图7中所示的系统和方法相同,其不同之处在于所述CA/DRM系统之一具有多个(SKi,j,SVKi,j)对。具体来说,在图8中,第二CA/DRM系统具有第一(SK2,1,SVK2,1)对和第二(SK2,2,SVK2,2)对。但是应当认识到,一个CA/DRM系统可以具有任意数目的签名密钥和相应的签名验证密钥对(SKi,j,SVKi,j)。对应于第二CA/DRM系统的EMM发生器(EMMG2)可以包括开关800(或某种其他确定装置),其用于在实施签名处理以生成CSLK-init EMM时选择特定的SK2,j(从与该CA/DRM系统相关联的签名密钥SK2,1和SK2,2当中选择)来使用。
应当认识到,与头端系统4相关联的任意数目的CA/DRM系统可以具有多个相关联的签名密钥以及相应的签名验证密钥对(SKi,j,SVKi,j)。因此一般来说,如果有m(m≥1)个CA/DRM系统与一个头端系统4相关联并且如果第i(i=1...m)个CA/DRM系统具有ni(ni≥1)个相关联的签名密钥以及相应的签名验证密钥对(SKi,j,SVKi,j),则存在 个签名密钥以及相应的签名验证密钥对(SKi,j,SVKi,j)。H模块720从各个CA/DRM系统接收n个签名验证密钥SVKi,j并且连同所生成的虚拟控制字CW*作为其输入,并且如前面对于图7所描述的那样生成控制字CW。
由于图7和8的每一个CA/DRM系统使用特定于该CA/DRM系统(也就是说两个CA/DRM系统不会使用相同的签名密钥)的签名密钥(以及相关联的签名验证密钥),因此内容提供商/CA系统运营商可以改变一个CA/DRM系统的密钥对而不会显著影响另一个CA/DRM系统(其可能由另一个内容提供商/CA系统运营商运营)。更精确地说,当一个CA/DRM系统利用一个(SK,SVK)对来更新一个(SKi,j,SVKi,j)对时,则:(a)该CA/DRM系统的EMM发生器需要为与该CA/DRM系统相关联的接收器2生成并分发新的CSLK-init EMM(其包含CSLK值以及基于更新后的签名密钥SK的签名);(b)应当使得其他CA/DRM系统知晓新的签名验证密钥SVK;(c)所有CA/DRM系统都应当向所有其相关联的接收器分发新的签名验证密钥SVK(这是因为正如后面将描述的那样,接收器将需要使用新的签名验证密钥)。在广播网络中,这一分发通常具有非常高的带宽效率,这是因为包含新的签名验证密钥SVK的消息对于所有接收器可以是相同的。
因此,如果一个CA/DRM系统利用更新后的(SK,SVK)对来更新/换新密钥对(SKi,j,SVKi,j)(例如在签名密钥SKi,j被破解之后),则对于SimulCrypt操作中的其他CA/DRM系统的影响是最小的。此外,如果签名密钥SKi,j被破解,其他CA/DRM系统的头端安全性则不会受到损害,这是因为其自身的签名密钥与受到损害的签名密钥不同。这些其他CA/DRM系统只需要知晓新的更新后的签名验证密钥SVK并且这些其他CA/DRM系统需要使得其所服务的接收器2也知晓新的更新后的签名验证密钥SVK,这对于这些其他CA/DRM系统来说是直接明了的操作。如果签名密钥SKi,j被破解,则一旦更新后的签名验证密钥SVK被用作针对H模块的输入(而不是使用SVKi,j)从而废除被破解的签名密钥SKi,j,就对于SimulCrypt操作中的所有CA/DRM系统恢复了接收器安全性。
如果一个CA/DRM系统运营商想要利用一个新的密钥对(SK,SVK)来换新密钥对(SKi,j,SVKi,j),则对于运营商的接收器2群体当中的所有接收器2同时发生切换到所述新的密钥对(这是因为在切换到新的密钥对时,通过H模块720,被生成来加扰内容的控制字将是基于更新后的SVK)。从运营的角度来看,当提供商开始使用新的密钥对时,存在并非所有这些接收器2都已(通过EMM)接收到所有所需信息的风险(更精确地说:在使用新的SVK来生成控制字时,新的SVK、利用新SK签署的接收器的独有CSLK-init式样或者意图针对CA/DRM客户端的CSLK可能还没有通过EMM被传送到接收器2或者在接收器2处被接收到)。这样就可能潜在地导致若干接收器在一段时间内“停工”,因为其将无法成功地解扰内容(因为其将无法使用更新后的CSLK消息或更新后的SVK)。但是具有多个相关联的(SKi,j,SVKi,j)对的CA/DRM系统具有以下优点。第一(当前)密钥对(SKi,j,SVKi,j)可以被用来生成CSLK-init式样消息,也就是说使用签名密钥SKi,j来签署CSLK-init式样。第二密钥对(SKi,k,SVKi,k)的签名密钥SKi,k被保留用于将来使用(安全地存储密钥SKi,k)。第一和第二对的签名验证密钥(即SVKi,j和SVKi,k)都被H模块720使用来生成用于加扰内容的控制字。假设运营商想要废除第一密钥对(SKi,j,SVKi,j)(例如在签名密钥SKi,j被破解的情况下)。首先,CA/DRM系统从安全存储装置获取SKi,k。接下来,CA/DRM系统利用SKi,k作为签名密钥生成新的CSLK-init EMM(如果CSLK也被更新,则还需要生成包含对应于CA/DRM客户端的新的CSLK值的EMM)。CA/DRM系统把EMM分发到接收器2。CA/DRM系统还生成第三密钥对(SKi,w,SVKi,w),并且把公共签名验证密钥SVKi,w分发到SimulCrypt操作中的所有CA/DRM系统。所有CA/DRM系统都把SVKi,w分发到其接收器(例如利用EMM)。只要SVKi,j和SVKi,k被H模块720使用来生成用于加扰内容的控制字CW,接收器2就将接受利用签名密钥SKi,j或SKi,k签署的CSLK-init消息(或者继续利用其正确地操作并且施行正确的解扰)。也就是说,在这一时间期间,芯片组402可以独立地切换到使用利用SKi,k签署的新的/更新后的CSLK-init消息,而不是强制所有芯片组402都同时切换。举例来说,CA/DRM系统可以一次请求一组CA/DRM客户端404开始使用新的CSLK EMM(其中利用SKi,k签署新的CSLK-init式样)。这样就限制了可能同时停工的接收器2的数目。在CA/DRM系统请求所有接收器2使用新的CSLK(EMM)之后,然后可以通过使用SVKi,w作为针对H模块720的输入以取代SVKi,j来恢复接收器安全性。在此之后,利用第二密钥对(SKi,k,SVKi,k)换新第一密钥对(SKi,j,SVKi,j),并且对于利用通过SVKi,w导出的控制字加密的内容恢复接收器安全性,因为芯片组将不会接受利用(被破解的)SKi,j签署的CSLK-init消息。应当提到的是,可以迭代地应用这一处理;下一次迭代中的密钥对是(SKi,k,SVKi,k)和(SKi,w,SVKi,w)。
图9示意性地示出了使用芯片组的一种实例方法。该方法与图4中所示的情况相同(并且因此后面将仅仅描述两幅图之间的区别)。图9中所示的系统和方法与图7和8中所示的系统相容。
具体来说,取代为CA/DRM客户端404提供单个签名验证密钥SVK并且将其提供到芯片组402,CA/DRM客户端404接收由n个签名验证密钥SVK1,...,SVKn构成的集合,并且将这n个签名验证密钥SVK1,...,SVKn提供到芯片组402(在不损失一般性的情况下,使用单个下标来区分不同的签名验证密钥;该集合中的多于一个密钥可以与单个CA/DRM系统相关联)。CA/DRM客户端404可以把每一个签名验证密钥SVKi存储在CA/DRM客户端404的相应存储器元件420(i)中;芯片组402可以把每一个签名验证密钥SVKi存储在芯片组402的相应存储器元件424(i)中。
正如前面所阐述的那样,由服务于CA/DRM客户端404的接收器2的CA/DRM系统(其与头端系统4相关联)向CA/DRM客户端404通知所述签名验证密钥集合SVK1,...,SVKn。
此外,图4的H模块432在图9中被H模块900取代。H模块900的操作方式与图7和8中所示的系统的H模块720相同。因此,假设已经为芯片组402提供了合法的/当前的签名验证密钥SVK1,...,SVKn并且假设其已经成功地获得了正确的虚拟控制字CW*,则H模块900的输出将是与由头端系统4中的H模块720输出的相同控制字CW,并且因此芯片组402将能够成功地对已加扰内容流进行解扰。
优选地,针对芯片组实施方式的安全性要求在于,只有在利用签名验证密钥集合SVK1,...,SVKn当中的一个密钥验证了与已加密CW*相关联的CSLK-init消息的真实性并且发现CSLK-init消息是真实的情况下,才可以把CW*和签名验证密钥集合SVK1,...,SVKn提供到H模块900以导出CW(或者才可以把这样导出的CW用于内容解扰)。
由于芯片组402具有多个对其可用的签名验证密钥SVK1,...,SVKn,因此签名验证模块426被设置成选择对应于其接收自CA/DRM客户端404的CSLK-init式样的签名验证密钥SVKi。例如,头端系统4可以为SVKi指派一个独有的密钥标识符IDi,并且可以把IDi附加到SVKi和利用相应的签名密钥SKi签署的CSLK式样。这样就允许签名验证模块426从所接收到的签名验证密钥集合SVK1,...,SVKn当中选择相关联的签名验证密钥SVKi。应当认识到,可以使用其他机制来允许签名验证模块426选择正确的签名验证密钥SVKi。例如,签名验证模块426可以被设置成尝试每一个签名验证密钥SVK1,...,SVKn,直到其中一个成功地验证CSLK-init式样的签名为止——如果其都没有成功地验证该签名,则签名验证处理失败。
在一些实施例中,所述签名验证密钥集合SVK1,...,SVKn和CSLK-init消息连同每一个已加密CW*被提供到芯片组402。在这样的实施例中,不需要把所述签名验证密钥集合存储在芯片组402内部以供将来使用。
在实践中,CA/DRM客户端404和芯片组402将使用密钥CSLK来保护从CA/DRM客户端404到芯片组402的多个虚拟控制字CW*的传送。为了避免用于导出每一个CW*的耗时的公共密钥操作(也就是说由解密模块428利用芯片组402的CSSK施行的公共密钥解密,以及由签名验证模块426利用SVKi施行的签名验证),在一些实施例中,密钥CSLK在其被获得之后被存储(并保持)在芯片组402内部(例如在存储器模块430中)。因此,只有在芯片组402从CA/DRM客户端404接收到新的CSLK-init式样时才需要施行签名验证模块426和解密模块428的公共密钥操作。
在一些实施例中,将被用作针对H模块900的输入的签名验证密钥集合SVK1,...,SVKn连同来自CA/DRM客户端404的每一个已加密CW*被提供到芯片组402。在这样的实施例中,不需要把所述签名验证密钥集合存储在芯片组402内部以供将来使用。如果所述集合SVK1,...,SVKn与来自CA/DRM客户端404的已加密CW*消息一起被提供,则在使用所存储的CSLK解密该已加密CW*之前,本发明的一些实施例被设置成使得芯片组402验证(存储在存储器模块430中的)CSLK是否是利用所接收到的集合SVK1,...,SVKn当中的一个密钥加载/获得的(也就是说用以最初获得并存储CSLK的处理是否涉及由签名验证模块426利用其中一个接收到的签名验证密钥SVK1,...,SVKn对所接收到的CSLK-init式样施行签名验证处理)。实现这一目的的一种方式是如下:在处理了(与相关联的签名验证密钥SVKi一起接收到的)CSLK-init消息之后,芯片组402计算(其使用来验证CSLK-init式样的真实性的)签名验证密钥SVKi的密码散列函数,并且芯片组402把该散列值与CSLK一起存储。对于所接收到的签名验证密钥集合(其与已加密CW*一起接收到)当中的每一个签名验证密钥,芯片组402可以计算其散列值,并且可以把所计算的散列值和与对已加密CW*进行解密所需的CSLK一起存储的散列值进行比较——如果这一检查揭示出所存储的CSLK是利用一个有效签名验证密钥加载的,则所存储的该CSLK可以被解密模块434使用来对已加密CW*进行解密。应当提到的是,在这样的实施例中,只需要把相关联的签名验证密钥SVKi(而不是所述签名验证密钥集合)提供给CSLK-init消息。也就是说,在这样的实施例中,签名验证模块426不需要被设置成从一个集合当中选择签名验证密钥SVKi。
在一些实施例中,所述密钥集合SVK1,...,SVKn(及其密钥标识符ID1,...,IDn)可以被存储在芯片组402内部以供将来使用。也就是说,所存储的密钥集合(及其密钥标识符)被用来处理从CA/DRM客户端404提供到芯片组402的CSLK-init消息和已加密CW*消息。在这样的实施例中,可以把一个或更多CSLK-init式样以及一个或更多已加密CW*提供到芯片组402。芯片组402可以利用所存储的密钥集合SVK1,...,SVKn和所存储的密钥标识符集合(其被签名验证模块426使用来从所存储的集合当中选择正确的密钥)从CSLK-init消息导出CSLK。芯片组402可以存储CSLK以供将来使用。芯片组402使用所导出的CSLK从已加密CW*获得CW*。接下来,芯片组402可以提供CW*和所存储的密钥集合SVK1,...,SVKn作为针对H模块900的输入,从而产生输出CW。这样,CA/DRM客户端404与芯片组402之间的通信成本就被降低,并且可以改进总体系统性能。
在一些实施例中,在(如前面所阐述的那样)获得多个CSLK密钥之后将其存储(并保持)在芯片组402内部。存储多个CSLK密钥可以避免在从当前所存储的CSLK切换到另一个所存储的CSLK时必须施行公共密钥操作。这在芯片组402支持同时使用多个CA/DRM客户端404时是特别有用的(其中每一个CA/DRM客户端404可以使用不同的CSLK(并且可能使用不同的签名验证密钥集合)),这是因为芯片组402于是可以在希望/必要时在各个CSLK之间施行(快速)切换。
如果密钥集合SVK1,...,SVKn(及其密钥标识符ID1,...,IDn或者密钥SVK1,...,SVKn的密码散列值)被存储在芯片组402内部以供将来使用,并且如果一个新的签名验证密钥集合被提供到芯片组402(以存储在芯片组402内部以取代密钥集合SVK1,...,SVKn),则芯片组402可以被设置成确定一个或更多所存储的CSLK是否是利用不存在于新近接收到的签名验证密钥集合中的密钥来加载的。例如,被用来验证CSLK-init消息的真实性的签名验证密钥SVKi的密钥标识符IDi(或密码散列值)可以与CSLK一起存储。新近接收到的签名验证密钥集合、所存储的签名验证密钥集合SVK1,...,SVKn(及其密钥标识符或其密码散列值)以及与(多个)CSLK一起存储的密钥标识符(或密码散列值)可以被用来确定所存储的一个或更多CSLK是否是利用不存在于新近接收到的签名验证密钥集合中的密钥来加载的。如果有任何这样的(多个)CSLK,则芯片组402可以被设置成不使用这样的CSLK导出CW*(例如可以停用这样的CSLK或者简单地从存储器模块430中删除)。可替代地,每当一个新的验证密钥集合被加载并存储在芯片组402内部时,可以从存储器模块430中删除所有存储的CSLK。此外,如果所存储的(多个)CSLK被停用,则芯片组402可以被设置成在新的签名验证密钥集合被提供到该芯片组402时并且在利用该新集合当中的一个密钥验证了相关联的CSLK-init式样时(重新)激活所述(多个)CSLK。举例来说,如果芯片组402支持同时使用多个CA/DRM客户端404则所述(重新)激活是有用的(其中每一个CA/DRM客户端404可以使用不同的CSLK和不同的签名验证密钥集合),这是因为芯片组402于是可以在希望/必要时在各个CSLK之间施行(快速)切换。
图10-12示意性地示出了分别在图7-9中示出的系统和方法的经过修改的版本。其区别在于,所示出的头端系统4和芯片组402包括h模块1000。h模块1000被设置成在其输入处接收签名验证密钥集合SVK1,...,SVKn而不是把该签名验证密钥集合提供到对应的H模块720、900。h模块1000使用其输入来产生中间值Z(芯片组402可以在芯片组402的存储器模块1010中存储该中间值Z以供将来使用)。然后H模块720、900接收中间值Z(即从签名验证密钥集合SVK1,...,SVKn导出的值)和虚拟控制字CW*以作为其输入,并且相应地输出控制字CW——在这种意义下,其操作方式与图4的H模块432(其具有两个输入,一个是CW*,另一个是第二值)类似。h模块1000可以按照与H模块720、900完全相同的方式操作,其不同之处在于h模块1000不接收虚拟控制字CW*作为其输入。例如,h模块720可以合并输入SVK1,...,SVKn并且然后可以对所合并的输入应用密码散列函数h,从而产生输出Z。函数h也可以是任何其他适当的密码函数(即不需要一定是散列函数)。函数h的可能实施方式优选地具有以下属性:在给定Z的情况下,很难(例如困难、计算上困难、不可行或者计算上不可行)找到或计算或确定一个密钥对(SK*,SVK*)和针对函数h的输入,从而使得所确定的签名验证密钥SVK*是针对h的所确定输入中的签名验证密钥,并且使得Z是h对于该输入的输出(即使得在向函数h提供该输入或者作为针对h模块1000的输入的情况下将导致输出Z值)。在某些实施例中,“很难”可以意味着敌对方可能无法在多项式时间或空间中导出这样的输入。在其他实施例中,可以通过指定找到这样的输入所需的操作数目或者存储器大小的下限来定义“很难”。作为第三个实例,可以通过指定所述属性不会得到满足的概率的上限来定义“很难”。实施函数h的可能方式包括(如前所述的)实施函数H的各种方式。
但是一般来说,对于(利用h模块1000的)这些实施例,函数H与函数h的联合实施方式优选地具有以下属性:在给定CW的情况下,很难(例如困难、计算上困难、不可行或者计算上不可行)找到或计算或确定一个密钥对(SK*,SVK*)和针对函数H与函数h的联合实施方式的输入,从而使得所确定的签名验证密钥SVK*是所确定的输入中的签名验证密钥,并且使得CW是函数H与函数h的联合实施方式对于该输入的输出。在某些实施例中,“很难”可以意味着敌对方可能无法在多项式时间或空间中导出这样的输入。在其他实施例中,可以通过指定找到这样的输入所需的操作数目或者存储器大小的下限来定义“很难”。作为第三个实例,可以通过指定所述属性不会得到满足的概率的上限来定义“很难”。
图13示意性地示出了图12的芯片组402的一种变型,其中芯片组402不被设置成存储签名验证密钥集合SVK1,...,SVKn以供将来使用。相反,芯片组402可以简单地存储h模块1000的输出(即中间值Z),并且把该中间值Z用作针对H模块900的输入。这样就可以降低芯片组402的存储要求,因为存储中间值Z所需的存储器通常将远小于存储签名验证密钥集合SVK1,...,SVKn所需的存储器。此外,用于从CW*和Z导出CW的性能可以得到改进。
在一些实施例中,在对CSLK-init消息(其与相关联的签名验证密钥SVKi一起被接收到)处理之后,芯片组402计算签名验证密钥SVKi(其被用来验证CSLK-init式样的真实性)的密码散列值,芯片组402把该散列值与CSLK一起存储。如果向芯片组402提供一个签名验证密钥集合(其被用作针对h模块1000的输入,从而产生将被存储在芯片组402内部以用于导出控制字的Z值),则芯片组402可以计算所述集合当中的每一个签名验证密钥的散列值,并且使用所计算的散列值和所存储的散列值(对于每一个所存储的CSLK存储有一个散列值)来确定其中一个或更多所存储的CSLK是否是利用存在于所接收到的签名验证密钥集合当中的密钥来加载的。与前面一样,这样的机制可以被用来基于所接收到的签名验证密钥集合激活、停用或删除(多个)CSLK。
在一些实施例中,在芯片组402接收到一个签名验证密钥集合SVK1,...,SVKn之后,其计算对应于这些密钥当中的每一个的密码散列值,并且把这些值与Z值一起存储以供将来使用。举例来说,如果与相关联的签名验证密钥SVKi一起接收到CSLK-init消息,则芯片组402可以计算该签名验证密钥SVKi的密码散列值。接下来,芯片组把所计算的散列值与所存储的散列值进行比较,并且只有在(至少)其中一个所存储的散列值与所计算的散列值相等时才对CSLK-init消息进行处理。这样,只有在SVKi是被用来产生所存储的Z的签名验证密钥集合SVK1,...,SVKn当中的一个元素的情况下才对CSLK-init消息进行处理。
在一些实施例中,向函数H(或者向函数h,如果其存在的话)提供一个密码散列值集合(其对于所述签名验证密钥集合SVK1,...,SVKn当中的每一个密钥包括从该签名验证密钥导出的一个相应的密码散列值)而不是所述签名验证密钥集合SVK1,...,SVKn。在这样的实施例中,芯片组402不需要接收(或存储)签名验证密钥集合;芯片组402只需要接收所述密码散列值集合以及与CSLK-init消息相关联的签名验证密钥。芯片组402可以计算所接收到的签名验证密钥(其与CSLK-init一起被接收到)的密码散列值,并且把该散列值与所接收到(或存储)的密码散列值集合当中的各个密码散列值进行比较,以便确定与CSLK-init消息一起提供的签名验证密钥是否与集合SVK1,...,SVKn当中的一个签名验证密钥相关联。在一个实施例中,CA/DRM(头端)系统可以计算所述密码散列值集合。接下来,CA/DRM(头端)系统可以把该密码散列值集合发送到其各个CA/DRM客户端。在这样的实施例中,CA/DRM系统只需要把与该CA/DRM系统相关联的(多个)签名验证密钥提供到与该CA/DRM系统相关联的各个CA/DRM客户端(以便处理与该CA/DRM系统相关联的CSLK-init消息)。在这样的实施例中可以降低通信成本、存储成本和计算成本。可替代地,可以由CA/DRM客户端计算所述密码散列函数集合(在接收到签名验证密钥集合SVK1,...,SVKn之后)。
图14-18分别对应于图6、7、8、10和11。但是在图14-18所示的系统中,存在一个或更多传统ECM发生器1500以及一个或更多传统EMM发生器1550。传统ECM发生器1500和传统EMM发生器1550对应于与头端系统4相关联的一个或更多CA/DRM系统,其不利用前面描述的方法来保护控制字的保密性和真实性(也就是说这些CA/DRM系统不利用CW*)。因此,传统ECM发生器1500被设置成接收由H模块900生成的CW并且基于CW生成ECM——这与基于虚拟控制字CW*生成ECM的ECM发生器516相反。在图14-18所示的系统中,传统ECM发生器1500被设置成通过SimulCrypt同步器530接收CW,但是应当认识到,这并非实质性的。类似地,传统EMM发生器1550生成EMM并且将这些EMM提供到多路复用器524——其不提供针对H模块900或h模块1000的输入。
在一些实施例中,函数H的输出可以包括将被用在内容加扰(解扰)机制中的多于一个值。举例来说,H模块的输出可以由虚拟控制字CW*和从CW*导出的第二密钥以及密钥集合SVK1,...,SVKn(或者如果使用h模块1000的话则是Z值)构成。这两个导出密钥然后可以被用在超加扰解决方案中,其中在头端系统4处把一个密钥用在第一加扰步骤中,并且把另一个密钥用在第二加扰步骤中。芯片组402可以被修改成施行两个相应的解扰步骤而不是一个。一般来说,H模块的输出可以包括多个内容加扰(解扰)密钥,其可以被使用在由多个加扰(解扰)步骤构成的超加扰解决方案中。函数H的输出还可以包括多于一个控制字。这些控制字当中的每一个可以被用于对相关联的内容段进行加扰(解扰)。举例来说,H模块的输出可以由两个控制字构成。第一控制字可以被用于加扰(解扰)第一段内容,第二控制字可以被用于加扰(解扰)第二段内容。在其中函数H的输出包括将被用在内容加扰(解扰)机制中的多于一个值的实施例中,函数H的可能实施方式优选地具有以下属性:在给定输出Y的情况下,很难(例如困难、计算上困难、不可行或者计算上不可行)找到或计算或确定一个密钥对(SK*,SVK*)和针对H的输入,从而使得所确定的签名验证密钥SVK*是针对H的所确定输入中的签名验证密钥,并且使得Y是H对于该输入的输出。(如果使用了h模块1000,则可以如前所述地适配所述优选属性。)此外还可能要求函数H的优选属性对于输出的各个部分独立地成立,例如对于与一段内容相关联的所有密钥独立地成立。应当提到的是,这是一项有用但是并不严格必要的更强属性,因为所述较弱属性(即前面关于输出Y描述的属性)已经暗示了对于与H的输出相关联的至少一段内容的解扰将会失败。
在一些实施例中,签名验证密钥集合SVK1,...,SVKn(或其散列值)的第一子集被提供到函数h,并且函数H的输入包括函数h的输出和签名验证密钥集合SVK1,...,SVKn(或其散列值)的第二子集。这两个子集可以分别包括其中一个或更多(或者所有)签名验证密钥SVK1,...,SVKn。这两个子集的并集是整个签名验证密钥集合SVK1,...,SVKn。这两个子集可以或者可以不重叠。
在一些实施例中,虚拟CW*的(比特)长度可以大于CW的(比特)长度,例如如果H模块的输出包括多于一个控制字的话。
在一些实施例中,函数H和/或函数h可以接收一个或更多附加输入,并且基于这一个或更多附加输入生成其对应的输出。
虽然在本发明的前述实施例中描述并使用了通用公共密钥密码术模块,但是应当认识到,只要提供CW加载消息的真实性和保密性,就可以使用任何其他适当的密码操作和基础设施。作为一个实例,所述真实性机制可以使用其中SK和SVK都是秘密密钥的对称方案。这样的系统的一个众所周知的实例是RSA,其具有随机选择的加密(或解密)指数,二者都被保密。如果使用其中SVK是秘密密钥的真实性机制,则优选地按照已加密形式把SVK传送到芯片组402,其中例如使用相关联的芯片组402的芯片组秘密密钥CSSK作为加密密钥。但是应当提到的是,如果使用对称真实性机制,则在本公开内容中描述的一些优点不适用。还有可能把附加的密钥层插入到前面描述的方法和系统中,或者去除前面描述的方法和系统中的某一密钥层。
前面所提到的各种对称和非对称加密/解密模块和方案可以利用当前已知或者未来所设想的任何对称或非对称加密/解密算法。类似地,前面所提到的各种签名生成和验证模块和方案可以利用当前已知或者未来所设想的任何签名生成和验证算法。
应当认识到,可以利用多种不同的信息处理系统来实施本发明的实施例。具体来说,虽然附图及其讨论提供了示例性架构,但是这些示例性架构仅仅是为了提供讨论本发明的各个方面时的有用参考而给出的。当然,出于讨论的目的简化了对于所述架构的描述,并且可以用于本发明的实施例的仅仅是许多不同类型的架构的其中之一。应当认识到,各个逻辑块之间的边界仅仅是说明性的,并且替换实施例可以合并各个逻辑块或元件,或者可以在各个逻辑块或元件当中施加替换的功能分解。
应当认识到,如果本发明的实施例由计算机程序实施,则载送所述计算机程序的存储介质和传送介质也构成本发明的各个方面。所述计算机程序可以具有一条或更多条程序指令或程序代码,当由计算机执行时其实施本发明的一个实施例。这里所使用的术语“程序”可以是被设计成用于在计算机系统上执行的指令序列,并且可以包括子例程、函数、过程、对象方法、对象实施方式、可执行应用、小应用程序、小服务程序、源代码、对象代码、共享库、动态链接库以及/或者被设计成用于在计算机系统上执行的其他指令序列。所述存储介质可以是磁盘(比如硬盘驱动器或软盘)、光盘(比如CD-ROM、DVD-ROM或蓝光盘)或存储器(比如ROM、RAM、EEPROM、EPROM、闪存或便携式/可移除存储器器件)等等。所述传送介质可以是通信信号、数据广播、两台或更多台计算机之间的通信链路等等。
Claims (22)
1. 一种用于在接收器的芯片组中安全地获得控制字的方法,所述控制字用于对由接收器接收到的已加扰内容进行解扰,所述方法包括在芯片组处:
从能通信地连接到芯片组的有条件访问/数字权利管理客户端接收虚拟控制字的受保护版本;
从虚拟控制字的受保护版本获得虚拟控制字;以及
利用第一密码函数从包括虚拟控制字以及多个签名验证密钥或者由多个签名验证密钥导出的一个或更多值的输入产生给定输出,每一个签名验证密钥与一个有条件访问/数字权利管理系统相关联,所述给定输出包括至少一个控制字,其中第一密码函数具有如下属性:确定包括签名密钥和签名验证密钥的密钥对以及用于第一密码函数的包括所确定的签名验证密钥或者至少部分地从所确定的签名验证密钥导出的一个或更多值的输入是不可行的,从而使得第一密码函数从所确定的输入产生给定输出。
2. 根据权利要求1的方法,包括接收及存储所述多个签名验证密钥当中的一些签名验证密钥,其中所述第一密码函数被设置成使用所述存储的签名验证密钥作为针对第一密码函数的输入的一部分。
3. 根据权利要求1的方法,包括:
接收所述多个签名验证密钥;
从所接收到的多个签名验证密钥生成一个导出值;以及
存储所生成的导出值;
其中,所述第一密码函数被设置成使用所述存储的导出值作为针对第一密码函数的输入的一部分。
4. 根据任一条在前权利要求的方法,包括:
在芯片组处接收芯片组加载密钥的受保护版本,其中对芯片组加载密钥的受保护版本进行保护以保护芯片组加载密钥的真实性和保密性;以及
从芯片组加载密钥的受保护版本获得芯片组加载密钥。
5. 根据权利要求4的方法,
其中,虚拟控制字的受保护版本是利用芯片组加载密钥加密的虚拟控制字;并且
其中,从虚拟控制字的受保护版本获得虚拟控制字包括使用芯片组加载密钥来解密虚拟控制字的受保护版本。
6. 根据权利要求4或5的方法,其中,芯片组加载密钥的受保护版本包括利用与芯片组相关联的公共密钥加密的芯片组加载密钥以及利用与一个有条件访问/数字权利管理系统相关联的签名密钥的基于芯片组加载密钥的签名,其中从芯片组加载密钥的受保护版本获得芯片组加载密钥包括:
利用对应于与所述有条件访问/数字权利管理系统相关联的签名密钥的签名验证密钥来验证签名,其中所述签名验证密钥是多个签名验证密钥的其中之一;以及
利用与芯片组相关联的秘密密钥来解密所述已加密芯片组加载密钥,所述秘密密钥对应于与芯片组相关联的公共密钥。
7. 根据权利要求6的方法,包括芯片组存储从芯片组加载密钥的受保护版本获得的芯片组加载密钥,从而使得所存储的芯片组加载密钥能够被用来解密由芯片组接收到的虚拟控制字的受保护版本。
8. 根据权利要求7的方法,包括:
接收多个签名验证密钥连同虚拟控制字的受保护版本;以及
确定是否利用其中一个接收到的签名验证密钥对基于所存储的芯片组加载密钥的签名进行了验证,并且如果确定没有利用其中一个接收到的签名验证密钥对基于所存储的芯片组加载密钥的签名进行验证,则不利用所存储的芯片组加载密钥来解密由芯片组接收到的虚拟控制字的受保护版本。
9. 根据权利要求6到8当中的任一条的方法,其中,所述接收器是多个接收器当中的一个接收器,所述多个接收器当中的每一个接收器具有相应的芯片组,所述芯片组具有相关联的秘密密钥,其中与所述多个接收器当中的接收器的芯片组相关联的秘密密钥彼此不同。
10. 一种用于向接收器的芯片组提供控制字的方法,所述控制字用以使得接收器能够对传送到该接收器的已加扰内容进行解扰,所述方法包括:
在头端系统处生成虚拟控制字;
经由接收器把虚拟控制字从头端系统传送到一个有条件访问/数字权利管理客户端,其中所述有条件访问/数字权利管理客户端能通信地连接到芯片组;
利用第一密码函数从包括虚拟控制字以及多个签名验证密钥或者由多个签名验证密钥导出的一个或更多值的输入产生给定输出,每一个签名验证密钥与一个有条件访问/数字权利管理系统相关联,所述给定输出包括至少一个控制字,其中第一密码函数具有如下属性:确定包括签名密钥和签名验证密钥的密钥对以及用于第一密码函数的包括所确定的签名验证密钥或者至少部分地从所确定的签名验证密钥导出的一个或更多值的输入是不可行的,从而使得第一密码函数从所确定的输入产生给定输出;
利用控制字对内容进行加扰从而产生已加扰内容;以及
把已加扰内容传送到芯片组。
11. 根据权利要求10的方法,其中,所述接收器与一个有条件访问/数字权利管理系统相关联,所述方法包括向芯片组传送芯片组加载密钥的受保护版本,其中对芯片组加载密钥的受保护版本进行保护以便保护芯片组加载密钥的真实性和保密性,所述芯片组加载密钥用以使得接收器能够访问虚拟控制字。
12. 根据权利要求11的方法,其中,芯片组加载密钥的受保护版本包括利用与芯片组相关联的公共密钥加密的芯片组加载密钥以及利用与有条件访问/数字权利管理系统相关联并且对应于多个签名验证密钥的其中之一的签名密钥的基于芯片组加载密钥的签名,其中所述有条件访问/数字权利管理系统与接收器相关联。
13. 根据权利要求10到12当中的任一条的方法,包括经由第二接收器把控制字从头端系统传送到第二有条件访问/数字权利管理客户端,其中第二有条件访问/数字权利管理客户端能通信地连接到第二接收器的第二芯片组。
14. 根据任一条在前权利要求的方法,其中,所述多个签名验证密钥当中的至少两个签名验证密钥与同一个有条件访问/数字权利管理系统相关联。
15. 根据任一条在前权利要求的方法,其中,所述多个签名验证密钥当中的至少两个签名验证密钥与不同的有条件访问/数字权利管理系统相关联。
16. 根据任一条在前权利要求的方法,其中,通过向第二密码函数提供多个签名验证密钥来产生一个导出值,其中第二密码函数具有如下属性:生成包括签名密钥和签名验证密钥的密钥对以及用于第二密码函数的包括所生成的签名验证密钥的输入是不可行的,从而使得第二密码函数从所生成的输入产生该导出值。
17. 根据任一条在前权利要求的方法,其中,对于多个签名验证密钥当中的每一个签名验证密钥,所述一个或更多导出值包括该签名验证密钥的相应的密码散列值。
18. 一种用于安全地获得控制字的用于接收器的芯片组,所述芯片组被设置成实施根据权利要求1到9当中的任一条或者在从属于权利要求1到9当中的任一条时根据权利要求14-17当中的任一条的方法。
19. 一种内容递送网络的头端系统,所述头端系统被设置成实施根据权利要求10到13当中的任一条或者在从属于权利要求10到13当中的任一条时根据权利要求14-17当中的任一条的方法。
20. 一种包括根据权利要求18的芯片组的接收器。
21. 一种包括根据权利要求19的头端系统以及根据权利要求18的一个或更多芯片组的系统。
22. 一种计算机程序,当被执行时,实施根据权利要求1到17当中的任一条的方法。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP10193312A EP2461534A1 (en) | 2010-12-01 | 2010-12-01 | Control word protection |
EP10193312.5 | 2010-12-01 | ||
EP11250650.6A EP2461539B1 (en) | 2010-12-01 | 2011-07-11 | Control word protection |
EP11250650.6 | 2011-07-11 | ||
PCT/EP2011/071435 WO2012072707A1 (en) | 2010-12-01 | 2011-11-30 | Control word protection |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103354998A true CN103354998A (zh) | 2013-10-16 |
CN103354998B CN103354998B (zh) | 2017-08-18 |
Family
ID=44246428
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180066582.8A Active CN103354998B (zh) | 2010-12-01 | 2011-11-30 | 控制字保护 |
CN2011800665832A Pending CN103329500A (zh) | 2010-12-01 | 2011-11-30 | 控制字保护 |
CN2011800665688A Pending CN103339958A (zh) | 2010-12-01 | 2011-11-30 | 密钥传输协议 |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011800665832A Pending CN103329500A (zh) | 2010-12-01 | 2011-11-30 | 控制字保护 |
CN2011800665688A Pending CN103339958A (zh) | 2010-12-01 | 2011-11-30 | 密钥传输协议 |
Country Status (5)
Country | Link |
---|---|
US (3) | US20130262869A1 (zh) |
EP (4) | EP2461534A1 (zh) |
KR (1) | KR20140034725A (zh) |
CN (3) | CN103354998B (zh) |
WO (3) | WO2012072707A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105282590A (zh) * | 2015-09-17 | 2016-01-27 | 国家新闻出版广电总局广播电视规划院 | 机顶盒 |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2506175B1 (en) | 2011-03-30 | 2019-01-30 | Irdeto B.V. | Enabling a software application to be executed on a mobile station |
EP2506174B1 (en) | 2011-03-30 | 2019-01-09 | Irdeto B.V. | Enabling a software application to be executed on a hardware device |
GB201110254D0 (en) | 2011-06-17 | 2011-08-03 | Irdeto Corporate Bv | Dynamic fingerprinting |
GB201110492D0 (en) | 2011-06-21 | 2011-08-03 | Irdeto Corporate Bv | Receiver software protection |
EP2815345B1 (en) | 2012-02-17 | 2022-08-03 | Irdeto B.V. | Digital rights management |
GB201210472D0 (en) * | 2012-06-13 | 2012-07-25 | Irdeto Corporate Bv | Obtaining control words |
US9628268B2 (en) | 2012-10-17 | 2017-04-18 | Box, Inc. | Remote key management in a cloud-based environment |
US9756022B2 (en) | 2014-08-29 | 2017-09-05 | Box, Inc. | Enhanced remote key management for an enterprise in a cloud-based environment |
US9888283B2 (en) * | 2013-03-13 | 2018-02-06 | Nagrastar Llc | Systems and methods for performing transport I/O |
US10177915B2 (en) | 2013-03-15 | 2019-01-08 | Ologn Technologies Ag | Systems, methods and apparatuses for device attestation based on speed of computation |
US9698991B2 (en) * | 2013-03-15 | 2017-07-04 | Ologn Technologies Ag | Systems, methods and apparatuses for device attestation based on speed of computation |
US9456344B2 (en) | 2013-03-15 | 2016-09-27 | Ologn Technologies Ag | Systems, methods and apparatuses for ensuring proximity of communication device |
GB201305734D0 (en) | 2013-03-28 | 2013-05-15 | Irdeto Bv | Enabling a content receiver to access encrypted content |
CA3122954C (en) | 2013-05-10 | 2023-03-07 | Ologn Technologies Ag | Ensuring proximity of wifi communication devices |
US9455998B2 (en) | 2013-09-17 | 2016-09-27 | Ologn Technologies Ag | Systems, methods and apparatuses for prevention of relay attacks |
FR3019416A1 (fr) * | 2014-03-28 | 2015-10-02 | Orange | Procede de traitement de donnees |
WO2015149836A1 (en) * | 2014-03-31 | 2015-10-08 | Irdeto B.V. | Cryptographic chip and related methods |
US20150349954A1 (en) * | 2014-06-03 | 2015-12-03 | Mason Borda | System and method for random seed generation |
EP2958039B1 (en) * | 2014-06-16 | 2019-12-18 | Vodafone GmbH | Device for decrypting and providing content of a provider and method for operating the device |
US9473463B2 (en) * | 2014-07-29 | 2016-10-18 | Combined Conditional Access Development & Support, LLC | Control word and associated entitlement control message caching and reuse |
US10574442B2 (en) | 2014-08-29 | 2020-02-25 | Box, Inc. | Enhanced remote key management for an enterprise in a cloud-based environment |
US9736135B2 (en) * | 2014-10-17 | 2017-08-15 | Lam Research Corporation | Method, apparatus, and system for establishing a virtual tether between a mobile device and a semiconductor processing tool |
US10218702B2 (en) * | 2015-11-09 | 2019-02-26 | Silvercar, Inc. | Vehicle access systems and methods |
US10411900B2 (en) | 2016-07-12 | 2019-09-10 | Electronics And Telecommunications Research Institute | Control word protection method for conditional access system |
KR102190886B1 (ko) * | 2016-07-12 | 2020-12-14 | 한국전자통신연구원 | 조건부 액세스 시스템의 컨트롤 워드 보호 |
EP3291087A1 (en) * | 2016-09-01 | 2018-03-07 | Nxp B.V. | Apparatus and associated method for authenticating firmware |
KR20180085212A (ko) | 2017-01-18 | 2018-07-26 | 삼성전자주식회사 | 전자 장치, 그의 영상 처리 방법 및 비일시적 컴퓨터 판독가능 기록매체 |
US10728807B1 (en) | 2019-03-04 | 2020-07-28 | Cisco Technology, Inc. | Fast roaming and uniform policy for wireless clients with distributed hashing |
US20220078026A1 (en) * | 2019-04-30 | 2022-03-10 | Hewlett-Packard Development Company, L.P. | Verifications of workload signatures |
EP3751782A1 (en) * | 2019-06-14 | 2020-12-16 | Siemens Aktiengesellschaft | Method for establishing a secure data communication for a processing device and a trust module for generating a cryptographic key |
US11432040B2 (en) | 2020-03-18 | 2022-08-30 | Synamedia Limited | Smartphone-based conditional access system |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0801478A2 (en) * | 1996-04-10 | 1997-10-15 | International Business Machines Corporation | Cryptographic key recovery system |
US20010001014A1 (en) * | 1995-04-03 | 2001-05-10 | Akins Glendon L. | Source authentication of download information in a conditional access system |
WO2003028287A1 (en) * | 2001-09-21 | 2003-04-03 | Hughes Electronics Corporation | Method and apparatus for controlling paired operation of a conditional access module and an integrated receiver and decoder |
US20050190916A1 (en) * | 2004-02-27 | 2005-09-01 | Sedacca David A. | Secure negotiation and encryption module |
WO2006045014A2 (en) * | 2004-10-20 | 2006-04-27 | John Kevin Markey | Application of asymmetric digital signature scheme to broadcast system |
CN201515456U (zh) * | 2009-09-23 | 2010-06-23 | 北京视博数字电视科技有限公司 | 数字电视接收终端的安全装置、机顶盒和接收终端 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6252964B1 (en) * | 1995-04-03 | 2001-06-26 | Scientific-Atlanta, Inc. | Authorization of services in a conditional access system |
DE69720972T2 (de) * | 1997-05-28 | 2004-02-19 | Siemens Ag | Computersystem und Verfahren zum Schutz von Software |
US20020025045A1 (en) * | 2000-07-26 | 2002-02-28 | Raike William Michael | Encryption processing for streaming media |
US7168089B2 (en) * | 2000-12-07 | 2007-01-23 | Igt | Secured virtual network in a gaming environment |
US7305555B2 (en) * | 2002-03-27 | 2007-12-04 | General Instrument Corporation | Smart card mating protocol |
US7379548B2 (en) * | 2003-01-31 | 2008-05-27 | Nds Limited | Virtual smart card device, method and system |
FR2867930A1 (fr) * | 2004-03-16 | 2005-09-23 | France Telecom | Procede d'authentification anonyme |
US20060047976A1 (en) * | 2004-08-25 | 2006-03-02 | General Instrument Corporation | Method and apparatus for generating a decrpytion content key |
US8291236B2 (en) * | 2004-12-07 | 2012-10-16 | Digital Keystone, Inc. | Methods and apparatuses for secondary conditional access server |
WO2008146667A1 (ja) * | 2007-05-24 | 2008-12-04 | Nec Corporation | 匿名認証システムおよび匿名認証方法 |
CA2640804C (en) * | 2007-10-07 | 2015-04-07 | Embotics Corporation | Method and system for integrated securing and managing of virtual machines and virtual appliances |
EP2257062A1 (en) * | 2009-05-25 | 2010-12-01 | Nagravision S.A. | Method for providing access control to media services |
US8924723B2 (en) * | 2011-11-04 | 2014-12-30 | International Business Machines Corporation | Managing security for computer services |
-
2010
- 2010-12-01 EP EP10193312A patent/EP2461534A1/en not_active Withdrawn
-
2011
- 2011-03-30 EP EP11160417A patent/EP2461564A1/en not_active Withdrawn
- 2011-07-11 EP EP11250650.6A patent/EP2461539B1/en active Active
- 2011-11-30 US US13/990,748 patent/US20130262869A1/en not_active Abandoned
- 2011-11-30 KR KR1020137016746A patent/KR20140034725A/ko not_active Application Discontinuation
- 2011-11-30 US US13/990,752 patent/US20130251152A1/en not_active Abandoned
- 2011-11-30 WO PCT/EP2011/071435 patent/WO2012072707A1/en active Application Filing
- 2011-11-30 WO PCT/EP2011/071431 patent/WO2012072703A1/en active Application Filing
- 2011-11-30 CN CN201180066582.8A patent/CN103354998B/zh active Active
- 2011-11-30 EP EP11791525.6A patent/EP2647173A1/en not_active Withdrawn
- 2011-11-30 CN CN2011800665832A patent/CN103329500A/zh active Pending
- 2011-11-30 CN CN2011800665688A patent/CN103339958A/zh active Pending
- 2011-11-30 US US13/990,762 patent/US9270465B2/en active Active
- 2011-11-30 WO PCT/EP2011/071432 patent/WO2012072704A1/en active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010001014A1 (en) * | 1995-04-03 | 2001-05-10 | Akins Glendon L. | Source authentication of download information in a conditional access system |
EP0801478A2 (en) * | 1996-04-10 | 1997-10-15 | International Business Machines Corporation | Cryptographic key recovery system |
WO2003028287A1 (en) * | 2001-09-21 | 2003-04-03 | Hughes Electronics Corporation | Method and apparatus for controlling paired operation of a conditional access module and an integrated receiver and decoder |
US20050190916A1 (en) * | 2004-02-27 | 2005-09-01 | Sedacca David A. | Secure negotiation and encryption module |
WO2006045014A2 (en) * | 2004-10-20 | 2006-04-27 | John Kevin Markey | Application of asymmetric digital signature scheme to broadcast system |
CN201515456U (zh) * | 2009-09-23 | 2010-06-23 | 北京视博数字电视科技有限公司 | 数字电视接收终端的安全装置、机顶盒和接收终端 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105282590A (zh) * | 2015-09-17 | 2016-01-27 | 国家新闻出版广电总局广播电视规划院 | 机顶盒 |
CN105282590B (zh) * | 2015-09-17 | 2018-10-12 | 国家新闻出版广电总局广播电视规划院 | 机顶盒 |
Also Published As
Publication number | Publication date |
---|---|
EP2461534A1 (en) | 2012-06-06 |
CN103339958A (zh) | 2013-10-02 |
EP2461564A1 (en) | 2012-06-06 |
WO2012072704A1 (en) | 2012-06-07 |
US20130251146A1 (en) | 2013-09-26 |
KR20140034725A (ko) | 2014-03-20 |
US20130251152A1 (en) | 2013-09-26 |
US20130262869A1 (en) | 2013-10-03 |
EP2461539B1 (en) | 2020-01-22 |
EP2647173A1 (en) | 2013-10-09 |
US9270465B2 (en) | 2016-02-23 |
WO2012072707A1 (en) | 2012-06-07 |
CN103329500A (zh) | 2013-09-25 |
EP2461539A1 (en) | 2012-06-06 |
WO2012072703A1 (en) | 2012-06-07 |
CN103354998B (zh) | 2017-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103354998A (zh) | 控制字保护 | |
CN1655495B (zh) | 用于以强配对将安全密钥传送到目标用户的系统和方法 | |
CN1655503B (zh) | 安全密钥认证和等级系统 | |
EP2327211B1 (en) | Simulcrypt key sharing with hashed keys | |
US9402108B2 (en) | Receiver software protection | |
US8176331B2 (en) | Method to secure data exchange between a multimedia processing unit and a security module | |
RU2006147370A (ru) | Способ дескремблирования скремблированного информационного объекта контента | |
KR20100058840A (ko) | 디지털 방송용 제한수신장치를 다운로드하는 방법 | |
CN101640785B (zh) | 交互式网络电视的加/解密系统和加/解密方法 | |
US11308242B2 (en) | Method for protecting encrypted control word, hardware security module, main chip and terminal | |
US20110179444A1 (en) | Apparatus and method for downloading conditional access images | |
WO2013186274A1 (en) | Obtaining control words using multiple key ladders | |
CN100588244C (zh) | 一种实现广播网络条件接收的方法和系统 | |
Koo et al. | Key establishment and pairing management protocol for downloadable conditional access system host devices | |
JP2007036625A (ja) | コンテンツ配信方法、コンテンツ受信装置、コンテンツ送信装置及び限定受信モジュール | |
CN105306975A (zh) | 无需机卡绑定的控制字安全传输的方法及系统 | |
WO2014154236A1 (en) | Obtaining or providing key data | |
KR101281928B1 (ko) | 다운로더블 제한 수신 시스템에서의 상호 인증 장치 및 방법 | |
Roelse | A new key establishment protocol and its application in pay-TV systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C53 | Correction of patent of invention or patent application | ||
CB02 | Change of applicant information |
Address after: Holland Hoofddorp Applicant after: Ai Dide Technology Co., Ltd. Address before: Holland Hoofddorp Applicant before: Irdeto B.V. |
|
COR | Change of bibliographic data |
Free format text: CORRECT: ADDRESS; FROM: Free format text: CORRECT: APPLICANT; FROM: IRDETO B.V. TO: IRDETO B. V. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |