CN102137289A - 在接收器中使用变换来有效计算地获得控制字 - Google Patents
在接收器中使用变换来有效计算地获得控制字 Download PDFInfo
- Publication number
- CN102137289A CN102137289A CN2011100583891A CN201110058389A CN102137289A CN 102137289 A CN102137289 A CN 102137289A CN 2011100583891 A CN2011100583891 A CN 2011100583891A CN 201110058389 A CN201110058389 A CN 201110058389A CN 102137289 A CN102137289 A CN 102137289A
- Authority
- CN
- China
- Prior art keywords
- control word
- function
- transforming
- seed
- conversion
- 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
Images
Classifications
-
- 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/162—Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing
- H04N7/163—Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing by receiver means only
-
- 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/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- 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/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
- 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/16—Obfuscation or hiding, e.g. involving white box
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Storage Device Security (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明涉及在接收器中使用变换来有效计算地获得控制字。本发明提供了一种用于使用授权变换树而安全地获得控制字的接收器、智能卡和条件接入系统,其中中间结果被缓存以提高计算效率。
Description
技术领域
本发明涉及一种用于使用变换函数而有效计算地获得控制字的接收器、智能卡、条件接入系统和方法。
背景技术
条件接入系统,例如付费-电视(Pay-TV)系统已是公知技术,其使用软件抗干扰来保护数字电视接收器中的密钥存储和授权处理步骤。
软件抗干扰技术使用基础基元(basic primitive)以隐匿软件码变换。基础基元的例子包括“应用”、“移除”和“条件”。图1A、图1B和图1C分别表示应用基元A、移除基元R和条件基元C的框图。应用基元一般使用函数A(D,S)=AS(D)=DTS以根据参数种子(seed)S来变换数据元素D。移除基元一般使用函数R(DTR,S)=RS(DTS)=D来基于种子S进行数据元素D的逆变换。条件基元一般使用函数C(D1,D2)=CD1(D2)=DCS,其中其输出是两个输入的相关性。
可以通过多个数据元素的矩阵构建种子S。这也使得从种子中提取各个数据元素变得困难。参数混合函数一般被表述为f(A,B)=<A,B>。函数结果<A,B>被称为A和B的混合物。以下,种子和混合物都被称为“种子”。
基元一般在条件接入系统中实现密钥管理功能时被组合。基元的组合导致一个新的函数,其中各个基元将不再可识别。基元组合的已知例子是移除和应用基元的组合与安全相关性的组合物。
图1D示出移除和应用基元的组合的例子。该变换使用组合的移除和应用操作中的组合物<P,S>。函数RPAS通过将使用种子P的变换替换为使用种子S的变换来调整输入数据,即DataTP(数据TP)变换为DataTS(数据TS)。
图1E示出组合物的安全相关性的例子。其一般应用于条件授权处理,并且包括基础基元应用、移除和条件的组合。条件函数可与图1D中的移除和应用块RPAS组合以执行组合物的安全相关。
在相关的申请号为No.09155007.9的欧洲专利申请中描述了一种用于条件授权处理及获得控制字CW的方法和接收器,其通过参考并入本申请。
图2表示EP09155007.9中描述的分割密钥(split key)传递的例子。在图2中,由三个子密钥CW1、CW2和CW3生成CW。在种子P、G和U的保护下分别分配子密钥CW1、CW2和CW3。至此,CW1以数学变换的形式在变换空间P中分配,CW2以数学变换的形式在变换空间G中分配,以及CW3以数学变换的形式在变换空间U中分配。
图3表示EP09155007.9中描述的接收器中的CW处理的例子。在图3中,由子密钥生成CW,并且执行成员资格(membership)检查。该处理被划分为两个基础部分:安全计算环境和类属处理环境。在类属处理环境和安全计算环境中的功能性模块形成用于将输入变换的CW,例如CWDTP,变换为使用接收器特定密钥(例如{CW}CSSK)加密的CW的授权变换树。类属处理环境处理外部接口,例如存储器、数据通信和用户交互。安全计算环境处理密钥和/或种子的处理。
ECM传递路径被用于接收来自头端系统的授权控制消息(ECM)。ECM包括加密的或变换的CW。EMM传递路径被用于接收来自头端系统的授权管理消息(EMM)。EMM包括用于加密或变换加密的或变换的CW的密钥或种子。
在安全计算环境中的软件抗干扰基元具有如果被截取则对于攻击者无用的输入和输入。对于变换的控制字CWDTP的移除操作需要在组合物<P,G1>中接收到的与G1关联(tie)的值P。G1被分配在组合物<G1,U1>中,因此与U1关联。在两个移除/应用操作RPAG1和RG1AU1之后,所获得的变换的控制字CWDTU1被输入到用于生成可被接收器处理的加密的CW的TDES加密白盒模块。使用接收器特定密钥,例如芯片组会话密钥CSSK来加密结果CW。一般在一个授权消息中提供CSSK。一般将CSSK、U1和U2值作为组合物<CSSK,U1,U2>提供给TDES加密白盒。
图3的条件授权处理使用安全相关函数RG2CvectorAU2以实现组成员资格检查。相关计算的结果是在变换空间U2中的控制字差分密钥CWDK,即CWDKCTU2。CWDKCTU2和CWDTU1是用于在TDES加密白盒中计算CW的子密钥。
子密钥,例如图2的CW1、CW2和CW3以及图3的CWDKCTU2和CWDKTU1可能具有不同的寿命跨度。例如,CW1可能基于有规律的基础,例如每十秒钟发生改变,CW2可能基于以天为单位的不定时的基础发生改变,而CW3可能数月中都很少发生改变。
已知的用于从变换的子密钥中获得CW的软件抗干扰条件授权处理技术并不考虑子密钥的不同寿命跨度。因此,总是执行条件授权处理中的所有中间操作以获得CW。每个中间操作的执行在处理器循环方面是昂贵的。
存在减少软件抗干扰条件授权处理技术中的计算量的需求,特别在处理能力有限的设备中,而不会不利地影响实现方式的抗干扰。
发明内容
本发明的一个目的是提供一种用于获得CW的改进的软件抗干扰条件授权处理技术,其中提高了计算效率。
根据本发明的一个方面,提出了一种用于安全地获得控制字的接收器。该接收器包括第一存储器,其被配置为存储变换函数。该变换函数被配置为接收变换的控制字和种子,以及将变换的控制字从输入变换空间迁移到输出变换空间。因此,变换函数在种子的控制下使用算术变换来获得控制字。该接收器进一步包括缓冲(cache)存储器和缓冲控制模块。该缓冲控制模块被配置为截取变换的控制字和种子。该缓冲控制模块被进一步配置为在缓冲存储器中搜索匹配于变换函数、变换的控制字(x)和种子(y)的控制字。该缓冲控制模块被进一步配置为如果在缓冲存储器中找到控制字,则将控制字提供给变换函数的输出,从而旁路(bypass)变换函数。该缓冲控制模块被进一步配置为如果在缓冲存储器中没有找到控制字,则将控制字和种子提供给变换函数,从变换函数获得控制字,并且将控制字与变换函数、变换的控制字(x)和种子(y)相关联地存储在缓冲存储器中。
根据本发明的一个方面,提出了一种用于安全地在接收器中获得控制字的方法。该接收器包括第一存储器,其被配置为存储变换函数。该方法包括接收变换的控制字和种子的步骤。该方法进一步包括在缓冲控制模块中截取变换的控制字和种子的步骤。该方法进一步包括在缓冲存储器中搜索匹配于变换函数、变换的控制字和种子的控制字的步骤。该方法进一步包括如果在缓冲存储器中没有找到控制字,则将控制字提供给变换函数的输出,从而旁路变换函数的步骤。该方法进一步包括如果在缓冲存储器中没有找到控制字,则将控制字和种子提供给变换函数,以变换函数将变换的控制字从输入变换空间迁移到输出变换空间,以在种子的控制下使用算术变换来获得控制字,并且将控制字与变换函数、变换的控制字和种子相关联地存储在缓冲存储器中的步骤。
因此,如果基于变换函数的输入的期望的结果在缓冲存储器中可用,则不通过变换函数来计算在输出变换空间中的控制字。从而获得控制字的计算效率被提高。
输出变换空间可以是明文变换空间,其导致控制字是明文。在获得作为结果的明文控制字之后可对其进行加密。输出变换空间可以是其他任何变换空间,其需要控制字的进一步变换以获得明文变换空间中的控制字。
权利要求2和10的实施例有利地实现(enable)变换函数序列的随后的变换和/或变换函数树中的变换的子密钥的组合,其中中间结果为了计算效果被缓冲。
权利要求3的实施例有利地实现要用于在接收器中解扰内容的计算的最终结果,即明文控制字或加密的控制字。
权利要求4的实施例有利地实现计算机码的混淆(obfuscation)和变换函数的功能特性,使得在算术变换期间更难获得关于控制字的信息。有利地,缓冲的中间结果可被存储在通常的非混淆存储器中,使得可以更容易和便宜地实现缓冲存储器。
权利要求5的实施例有利地实现在类属计算环境中仅有单个缓冲控制模块的缓冲功能性。
权利要求6的实施例有利地实现要在安全计算环境中实现的缓冲控制功能性,只剩下类属计算环境中的缓冲的缓冲存储器部分。这导致类属计算环境的更少修改以用于实现缓冲功能性。
权利要求7的实施例有利地实现使用智能卡的条件接入系统中的缓冲功能性,以用于获得控制字。
权利要求8的实施例有利地实现智能卡在网络中的共享,其中中间结果可在每个接收器中被缓冲。
根据本发明的一个方面,提出了一种用于具有一个或多个以上描述的特征的接收器的智能卡。该智能卡包括在安全计算环境中的第一存储器。该第一存储器被配置为存储变换函数。该变换函数被配置为接收变换的控制字和种子,以及将变换的控制字从输入变换空间迁移到输出变换空间。因此该变换函数在种子的控制下使用算术变换来获得控制字。该变换函数包括缓冲控制模块。该缓冲控制模块被配置为截取变换的控制字和种子。该缓冲控制模块被进一步配置为在接收器的缓冲存储器中搜索匹配于变换函数、变换的控制字(x)和种子的控制字。该缓冲控制模块被进一步配置为如果在缓冲存储器中找到控制字,则将控制字提供给变换函数的输出,从而旁路变换函数。该缓冲控制模块被进一步配置为如果在缓冲存储器中没有找到控制字,则将控制字和种子提供给变换函数,从该变换函数获得控制字,并将该控制字与变换函数、变换的控制字和种子相关联的存储在缓冲存储器中。
因此,在使用智能卡的条件接入系统中允许缓冲功能性,以用于获得控制字。如果基于变换函数的输入的期望的结果在缓冲存储器中可用,不通过变换函数来计算输出变换空间中的控制字。从而在智能卡中获得控制字的计算效率被提高。
智能卡一般被实现为具有传统的形式因素(factor)。其他任何实现智能卡技术的计算设备也可被用来替代智能卡,例如运行智能卡仿真软件的PC。
根据本发明的一个方面,提出了一种条件接入系统。该条件接入系统包括头端系统和具有一个或多个上述特征的一个或多个接收器。头端系统被配置为传输(transmit)授权控制消息和授权管理消息给接收器。授权控制消息包括变换的控制字。授权管理消息包括一个或多个种子。
因此,在条件接入系统中能够实现缓冲功能性,其中头端系统提供变换的控制字给接收器以将变换的控制字从输入变换空间变换到输出变换空间。如果基于变换函数的输入的期望的结果在缓冲存储器中可用,不通过变换函数来计算输出变换空间中的控制字。从而获得控制字的计算效率被提高。
以下将进一步详细描述本发明的实施例。但应当理解,这些实施例并不构成对本发明保护范围的限制。
附图说明
通过参考附图中的示例性实施例,本发明将会被更详细地解释,其中:
图1A示出现有技术中用于软件抗干扰技术中的应用基元的方框图;
图1B示出现有技术中用于软件抗干扰技术中的移除基元的方框图;
图1C示出现有技术中用于软件抗干扰技术中的条件基元的方框图;
图1D示出现有技术中用于软件抗干扰技术中的移除和应用基元的组合的方框图;
图1E示出现有技术中用于软件抗干扰技术中的组合物的安全相关性的方框图;
图2示出现有技术中的简化的分割密钥传递处理;
图3示出现有技术中在接收器中的分割密钥传递处理;
图4示出本发明一个示例性实施例的变换函数;
图5示出本发明一个示例性实施例的具有缓冲的变换函数;
图6示出本发明一个示例性实施例的具有缓冲的变换函数;
图7示出本发明一个示例性实施例的两个变换函数的序列;
图8示出本发明一个示例性实施例的具有缓冲的两个变换函数的序列;
图9示出本发明一个示例性实施例的在接收器中具有缓冲的分割密钥传递处理;
图10示出本发明一个示例性实施例的接收器和智能卡;
图11示出本发明一个示例性实施例的共享智能卡的两个接收器;
图12示出本发明一个示例性实施例的通过网络共享智能卡的两个接收器;
图13示出本发明一个示例性实施例的条件接入系统;
图14示出本发明一个示例性实施例的用于在接收器中获得控制字的方法的步骤;
图15示出以一般术语阐明(clarify)变换函数和加密的框图;
图16A示出执行算术变换的函数的方框图;
图16B示出在种子的控制下执行算术变换的函数的方框图;
图17A示出应用基元的方框图;
图17B示出移除基元的方框图;
图17C示出条件基元的方框图;
图17D示出移除和应用基元的组合的方框图;
图17E示出组合物的安全相关性的方框图;
图18示出应用变换操作来获得控制字的接收器的示例性例子。
具体实施方式
缓冲是计算机科学中已知的优化技术,其允许存储和再使用以不管何种形式先前使用过的数据,以代替再计算。由于缓冲并非无限大小,所以一般基于使用模型算法来保持或丢弃缓冲的数据,例如最近最少使用(LRU)算法、最近最多使用(MRU)算法或最不经常使用(LFU)算法。
图3示出了授权变换树的实现的现有技术示例。本发明使得能够缓冲授权变换树中的中间结果,从而提高计算效率。创建缓冲功能性,使得其可在类属计算环境中实现,而不影响条件授权处理的抗干扰。
图3示出了授权变换树中的中间值,例如CWDKCTu2,当其仅在授权变换树中的函数和种子序列的情况下有用时,其可被认为是非敏感数据。因此,中间值可被存储在类属计算环境中以用于缓冲的目的,而不降低安全性。
通常,在频繁改变子密钥的两个连续生成之间保持不变的中间数据值被缓冲。可以理解,缓冲并不限于频繁改变子密钥的中间值,并且不频繁改变子密钥的中间值也可被缓冲。在CW本身的两个连续生成之间的所有中间值都没有改变的情况下,其可能使作为结果的CW被缓冲。在后一种情况下,CW一般以加密的形式缓冲,例如{CW}CSSK。
缓冲功能性是通过将一个或多个中间值和/或端结果值与相关联的缓冲参考存储在一起来实现的。通常,缓冲参考包括输入值,例如变换的CW、种子和/或组合物,以及函数的指示或参考,输入值被输入给该函数以用于中间值或端结果值的计算。
在授权变换树中的CW的计算包括变换函数的序列。图3示出了一个不具有缓冲的已知例子。诸如图1A-1E所示的变换函数并非全状态,并且是条件性的,在于仅当输入是正确时才可以生成语义正确的输出值。
每个变换函数可示意性图示为如图4所示。图4示出具有两个输入a和b并且生成输出c的变换函数F。输入a和/或b以及输出c都由算术变换所保护,使得数据值x、y和z能够被处理在存储在不可信的域中,例如,接收器的类属计算环境。
图5示出本发明一个示例性实施例的具有附加缓冲功能性的变换函数F。在图5的实施例中,缓冲控制被附加给变换函数F。缓冲将输入数据值x和y分别传输给变换函数F的输入a和b。函数F生成包括值z的输出。因为函数并非全状态,所以相同组的输入值x和y总是被变换函数F处理为相同的输出值z。输出z被存储在缓冲中以优化相同操作的稍后的计算。实现变换函数的模块具有缓冲控制函数,其仅当用于输入x和y的给定组合的作为结果的输出值z在缓冲中不可用时才激活函数F。如果用于给定组合x和y的输出值z被缓冲,那么缓冲会将输出值z直接提供给输出c。
图6示出本发明一个示例性实施例的具有附加缓冲功能性的变换函数F。在图6的实施例中,缓冲控制被附加给缓冲。缓冲控制将输入数据值x和y分别传输给变换函数F的输入a和b。函数F生成包括值z的输出。因为函数并非全状态,所以相同组的输入值x和y总是被变换函数F处理为相同的输出值z。输出z被存储在缓冲中以优化相同操作的稍后的计算。缓冲具有缓冲控制函数,其仅当用于输入x和y的给定组合的作为结果的输出值z在缓冲中不可用时才激活函数F。如果用于给定组合x和y的输出值z被缓冲,那么缓冲会将输出值z直接提供给输出c。
在图5和图6的例子中,缓冲链接函数输出值z与一组函数输入参数值x、y。至此,简单的URL类型串可被用作缓冲参考。可选地,任何其他已知的数据结构也可被用来实现缓冲参考。缓冲参考串的一个例子是“Fc?Fa=x&Fb=y”,使用用于输入“Fa”的值“x”和用于输入“Fb”的值“y”描述变换函数“F”的结果“Fc”的计算。缓冲参考“Fc?Fa=x&Fb=y”与相关联的函数结果“z”一起被存储在缓冲中。
作为一个例子,以下表格示出在“F(x,y)=z”和“F(u,V)=w”的计算之后存储在缓冲存储器中的缓冲条目。
缓冲参考 | 值 |
“Fc?Fa=x&Fb=y” | z |
“Fc?Fa=u&Fb=v” | w |
下次函数F被激活时,缓冲首先确定是否之前已经执行了计算的结果。如果有缓冲命中,则计算没有被执行,并且使用缓冲的结果来代替。
图7示出本发明一个示例性实施例,其中两个变换函数的序列产生输出y。变换函数F和G的每一个的操作类似于图4中描述的函数F,并且具有如图5或图6中描述的缓冲功能性。
为了生成输出“Gc”,使用“x”值作为其输入参数“Gb”来激活函数G。输入参数“Ga”被连接到变换函数“F<u,v>”的输出。缓冲使用结果参数串“Fc?Fa=u&Fb=v”来搜索该函数调用的先前计算。如果缓冲找到该缓冲参考的结果,则不需要激活函数“F”,并且使用缓冲的值w来代替。接着缓冲被用于确定是否“G<w,x>”的计算的结果被保持在缓冲中。现在,缓冲使用缓冲参考“Gc?Ga=w&Gb=x”来搜索结果。如果找到,则不需要激活函数“G”,并且将缓冲的结果“y”发送到变换函数“G”的输出。如果缓冲没有找到匹配,其激活“G<w,x>”的计算。在计算之后,结果“y被返回到缓冲和输出“Gc”。在这些操作之后,以下缓冲条目被存储在缓冲存储器中。
参数名称 | 值 |
“Fc?Fa=x&Fb=y” | z |
“Fc?Fa=u&Fb=v” | w |
“Gc?Ga=w&Gb=x” | y |
通过考虑变换树的结构以及将一系列变换函数的组合结果缓冲为单个串,可以优化缓冲操作。这降低了对缓冲存储器的访问。例如,在使用了该优化的图7的例子中,一次缓冲命中能产生输出值y而非两次缓冲命中。至此,图7的例子的缓冲内容被扩展为缓冲表格中的下述条目。
参数名称 | 值 |
“FGc?Fa=x&Fb=y&Gb=x” | z |
如图5或图6所示,缓冲控制被实现为围绕变换函数或围绕缓冲存储器的包封(wrapper)。在这两个实施方式中,缓冲控制被配置为条件地激活变换函数模块,并且向变换函数提供相关输入。
图8示出两个变换函数F和G的例子,使用总线结构将这两个变换函数连接到缓冲控制器。缓冲控制器通过总线连接到所有变换函数模块。这使得数据u、v、w、x和y分别被提供给变换函数F和G的输入Fa、Fb、Ga、Gb和输出Fc和Gc。缓冲控制接口被用于在输出值没有被存储在缓冲存储器的情况下激活变换功能模块。
图8的缓冲控制器操作类似于图6所示的缓冲控制。可以理解,图8所示的总线结构还可用于每个变换函数F和G中的缓冲控制功能性,这类似于图5所示的缓冲控制的操作。
除了搜索缓冲条目和条件地激活变换函数,缓冲控制器被可选地配置为移除未使用的缓冲条目以管理缓冲的存储大小。至此,缓冲控制器可使用任何已知的缓冲管理技术来保证只有最相关的信息被保持在缓冲中。
图9示出使用缓冲优化进行扩展的授权变换树实施方式的例子。在图9的授权变换树中的变换函数类似于图3所示的授权变换树的变换函数,并且使用相同的变换函数序列。在图9的例子中,变换树中的所有数据通过缓冲控制器和由“数据”指示的数据接口。缓冲控制器还通过缓冲控制接口来控制变换函数模块的激活。
图9示出接收器的两个部分:安全计算环境和类属处理环境。类属处理环境处理外部接口,例如存储器、数据通信和用户交互。安全计算环境处理密钥和/或种子的处理。该处理一般由一个或多个处理器(未示出)来执行。
ECM传递路径被用于从头端系统接收授权控制消息(ECM)。ECM包括加密的或变换的CW。EMM传递路径被用于从头端系统接收授权管理消息(EMM)。EMM包括用于解密或变换加密的或变换的CW的密钥或种子。一般在输入模块中实现ECM传递路径和EMM传递路径,以用于接收ECM和EMM。
在图9的例子中,类属计算环境包括被实现为缓冲控制器和缓冲存储器的缓冲功能性。通过缓冲控制器,数据从ECM传递路径和EMM传递路径流向缓冲存储器,并且在缓冲存储器和变换函数(RPAG1、RG1AU1和RG2CvectorAU2)以及TDES加密白盒之间流动。
在该例子中,以下镜像被用于变换函数:F=RPAG1、G=RG1AU1和H=RG2CvectorAU2。F具有两个输入Fa和Fb以及一个输出Fc,G具有两个输入Ga和Gb以及一个输出Gc,并且H具有两个输入Ha和Hb以及一个输出Hc。F、G和H的所有输入和输出通过数据总线连接到缓冲控制器。
通过ECM传递路径,接收在变换空间P中的变换的控制字,即CWDTP。通过EMM传递路径,接收种子<P,G1>、<G1,U1>、<G2,U2,n>和<CSSK,U1,U2>。通过EMM传递路径还接收在变换空间G2中的控制字差分密钥CWDK和向量的组合物,即<CWDKTG2,vector>,以用于组成员资格检查。
缓冲控制器在缓冲存储器中搜索匹配用于Fa的CWDTP和用于Fb的<P,G1>的输入值的变换函数F的缓冲的输出值。如果找到了缓冲的输出值,将缓冲值提供给Fc而不调用函数F。如果没有找到输出值,通过数据总线将CWDTP提供给Fa,并且将<P,G1>提供给Fb。通过缓冲控制接口,来自缓冲控制器的指令被给予到变换函数F以使用关于Fa和Fb的输入数据来生成输出值,并且将结果通过Fc和数据总线返回给缓冲控制器。结果被存储在缓冲存储器中,该缓冲存储器现在包括以下条目。
参数名称 | 值 |
“Fc?Fa=CWDTP&Fb=<P,G1>” | CWDTG1 |
接下来,缓冲控制器在缓冲存储器中搜索匹配作为用于Ga的F的输出值和用于Gb的<G1,U1>的输入值的变换函数G的缓冲的输入值。如果找到了缓冲的输出值,将缓冲值提供给Gc而不调用函数G。如果没有找到输出值,通过数据总线将F的输出值,在本例子中为CWDTTG1提供给Ga,并且将<G1,U1>提供给Gb。通过缓冲控制接口,来自缓冲控制器的指令被给予到变换函数G以使用关于Ga和Gb的输入数据来生成输出值,并且将结果通过Gc和数据总线返回给缓冲控制器。结果被存储在缓冲存储器中,该缓冲存储器现在包括以下条目。
参数名称 | 值 |
“Fc?Fa=CWDTP&Fb=<P,G1>” | CWDTG1 |
“Gc?Ga=CWDTG1&Gb=<G1,U1>” | CWDTU1 |
可替换地或可选地,在通过变换函数F和G处理输入之后的结果被存储在缓冲存储器中作为单个条目,其允许使用输入值Fa=CWDTP、Fb=<P,G1>和Gb=<G1,U1>来在一个步骤内在缓冲存储器中找到变换函数G的结果。接着缓冲存储器包含例如以下条目。
参数名称 | 值 |
“Fc?Fa=CWDTP&Fb=<P,G1>” | CWDTG1 |
“Gc?Ga=CWDTG1&Gb=<G1,U1>” | CWDTU1 |
“FGc?Fa=CWDTP&Fb=<P,G1>&Gb=<G1,U1>” | CWDTU1 |
为了组成员资格检查,缓冲控制器在缓冲存储器中搜索匹配用于Ha的<G2,U2,n>和用于Hb的<CWDKTG2,vector>的输入值的安全相关函数H的缓冲的输出值。如果找到缓冲的输出值,将缓冲值提供给Hc而不调用函数H。如果没有找到输出值,通过数据总线将<G2,U2,n>提供给Ha,并且将<CWDKTG2,vector>提供给Hb。通过缓冲控制接口,来自缓冲控制器的指令被给予到安全相关函数H以使用关于Ha和Hb的输入数据来生成输出值,并且将结果通过Hc和数据总线返回给缓冲控制器。结果被存储在缓冲存储器中,该缓冲存储器现在包括以下条目。
参数名称 | 值 |
“Fc?Fa=CWDTP&Fb=<P,G1>” | CWDTG1 |
“Gc?Ga=CWDTG1&Gb=<G1,U1>” | CWDTU1 |
“FGc?Fa=CWDTP&Fb=<P,G1>&Gb=<G1,U1>” | CWDTU1 |
“Hc?Ha=<G2,U2,n>&Hb=<CWDKTG2,vector>” | CWDKCTU2 |
在最后步骤中,通过数据总线将Gc和Hc的输出数据,即CWDTU1和CWDKCTU2与种子<CSSK,U1,U2>一起分别提供给TDES加密白盒以用于生成{CW}CSSK。得到的{CW}CSSK一般不缓冲在缓冲存储器中以防止在类属计算环境中得到该数据。
在安全计算环境中的变换树的实施方式不限于图9的例子。在变换函数的序列中一般有两个或更多个变换函数。变换函数可组成具有一个或多个分支的授权变换树。每个变换函数可以是任何已知的变换函数。作为TDES加密白盒的替代,任何其他的加密函数都可用于从变换的控制字生成加密的控制字。可替换地,作为TDES加密白盒的替代,移除基元可被用于从变换的控制字生成明文控制字。
缓冲并非对于变换序列中的所有步骤都是有效的。例如,当缓冲命中率对于特定变换函数期望为低时,因为缓冲存储器接入先于执行变换函数,所以缓冲功能性可切实地降低整体处理性能。为了避免这种整体处理性能的降低,一个或多个变换函数模块可被实现为不具有缓冲功能性,这导致其输入值被变换函数模块处理以用于生成输出值而不搜索缓冲命中。
在图9的例子中,类属计算环境和安全计算环境是接收器的一部分。可替换地,安全计算环境在智能卡中实现,而类属计算环境在接收器中实现。
作为具有传统形状因子的智能卡的替代,其他任何实现智能卡技术的计算设备都可被用于智能卡,例如运行智能卡仿真软件的PC。
图10示出一种简化的架构,其包括作为数字电视接收器的机顶盒(STB)和可通信地连接到STB的智能卡,例如通过将智能卡插入STB中。由STB接收到的EMM和ECM在被智能卡处理之前被存储在EMM/ECM存储器中。智能卡以原有任何已知的方式从ECM和EMM获得数据,这些数据包括用于智能卡的安全计算环境中的授权变换树的输入数据。到变换函数的输入以及从变换函数和/或安全相关函数的输出被存储到STB中的缓冲中。
可以使两个或更多个网络设备共享共同的智能卡。在图11的例子中,两个STB各自将从头端系统接收到的ECM和EMM以加密的形式存储到指示为EMM/ECM存储器的非易失性存储器中。没有插入智能卡的STB通过网络和通过插入有智能卡的STB的中间体建立到智能卡的安全连接。智能卡从接收器接收一个或更多个ECM和相关的EMM,并且解密ECM和EMM以获得用于智能卡的安全计算环境中的变换函数模块的输入数据。通过安全连接将变换函数的输出值传输到STB以存储在STB的本地缓冲中。
图12示出图11的例子的替换,其中智能卡可通信地连接到网络而不是插入到STB中的一个,并且其中每个STB通过网络访问智能卡。
STB一般具有比智能卡更大的存储空间。因此,在图10-12的例子中,在STB中实现缓冲存储器。可替换地,可以在智能卡中实现缓冲存储器。
图13示出本发明一个示例性实施例的条件接入系统。头端系统通过分布式网络将ECM和EMM传输给一个或多个接收器。ECM一般包括变换的控制字,例如图9的CWDTP,其要由接收器的安全计算环境中的授权变换树处理。安全计算环境可在可通信地连接到接收器的智能卡中实现。EMM一般包括一个或多个种子,例如图9中的<P,G1>和<G1,U1>,这些种子被用于变换变换的控制字。诸如组成员资格检查数据的其他数据也可在EMM中传输。多个EMM可用于数据的传输。
图14示意性示出本发明一个示例性实施例的由接收器执行的步骤。在步骤101中,接收变换的控制字和种子。在步骤102中,在缓冲控制模块中截取变换的控制字和种子。在步骤103中,在缓冲存储器中搜索匹配变换函数,变换的控制器和种子的控制字。在步骤104中,分析搜索的结果。如果找到控制字,在步骤105中,将控制字提供给变换函数的输出,从而旁路变换函数。如果没有找到控制字,在步骤106中,将控制字与种子一起提供给变换函数。在步骤107中,在种子的控制下使用算术变换将变换的控制字从输入变换空间迁移到输出变换空间以获得控制字。在步骤108中,控制字与变换函数、变换的控制字和种子相关联地存储在缓冲存储器中。步骤108能够实现步骤103中的缓冲命中,下次则调用具有相同输入值的相同的变换函数。
如上所述,数据和软件混淆技术可使用变换函数来混淆中间结果。本公开所使用的变换函数的概念不同于加密。参考图15和以下的描述可以大体更清楚地了解这些区别。
假设在非变换数据空间中存在具有多个数据元素的输入域ID。则定义使用一些密钥的加密函数E,其被配置为接收输入域ID的数据元素作为输入,以在输出域OD中传递相应的加密的数据元素。通过应用解密函数D,可以通过将解密函数D应用到输出域OD的数据元素来获得输入数据域ID的原始数据元素。在非安全环境(一般被称为“白盒”)中,假设一个“对手(adversary)”知道输入和输出数据元素,并且已经在运行期间访问了加密函数E的内部。除非在该环境中进行额外的防范,否则对手容易导出秘密(例如,加密/解密函数中使用的密钥)。
通过将变换函数应用到输入域ID和输出域OD,即变换函数是输入操作和输出操作,可在非安全环境中获得附加的安全。变换函数T1将数据元素从输入域ID映射到变换的数据空间的变换的输入域ID’的变换的数据元素。同样的,变换函数T2将数据元素从输出域OD映射到变换的输出域OD’。现在可使用变换的密钥在ID’和OD’之间定义变换的加密和解密函数E’和D’。在要执行逆变换的情况下,例如,当结果要被传输给非变换的空间时,T1和T2是双射(bijection)的。
代替将输入域ID的数据元素输入到加密函数E以获得输出域OD的加密的数据元素,和加密技术一起使用变换函数T1、T2意味着通过应用变换函数T1将域ID’的变换的数据元素输入到变换的加密函数E’。变换的加密函数E’在加密操作中组合逆变换函数T1 -1和变换函数T2以保护机密信息,例如密钥。接着获得域OD’的变换的加密数据元素。当在变换的数据空间中分析输入数据和输出数据时,不能检索用于加密函数E或解密函数D的密钥。这保证了即使在非安全环境中进行操作时,密钥也相对对手被保护。特别地,变换使得系统能够绝对不会在邻接存储器中以明文形式揭示密钥的任何部分、或从密钥导出的任何值。换言之,变换通过应用变换和在变换的空间中对数据进行操作来混淆数据。在某些实施例中,这些变换函数是随机生成的。
因为这些输入值和输出值对于对手是无用的特性,使用变换来混淆数据的优点在于允许这些变换的输入值和输出值在类属(非安全)计算环境中被存储或缓冲。相反地,非变换的加密函数的输入值和输出值不能在类属计算环境中被存储或缓冲。诸如加密的和解密的/明文密钥对的这些值不应在非安全存储器中被缓冲和存储,因为它们对于对手可能是有用的。
变换函数T1、T2中的一个应当是非平凡函数(non-trivial function)。在T1是平凡函数的情况下,输入域ID和ID’是相同的域。在T2是平凡函数的情况下,输出域是相同的域。
如图16A所示的函数F是将数据Z迁移通过由IN和OUT标识的两个不同的变换空间的算术操作。输出变换空间OUT的尺寸至少与输入变换空间IN的尺寸一样大,并且任何数据Z将分别在输入和输出变换空间中被表示为X和Y(可能不是唯一的)。函数F被设计为使其难以反向运行。因为输入和输出变换空间之间不存在明显的映射,并且变换空间IN和OUT的尺寸都优选为足够大,所以函数F的再创建被阻止。此外,函数F以如下方式被实现:当数据Z通过函数时难以被提取,例如使用例如白盒技术和/或其他码混淆技术。
参见图16A,函数F被定义为例如Y=F(X)=3*X+2。如果输入变换空间IN是明文变换空间,则X=(Z)IN=Z。在迁移之后可得到以下结果:Y=(Z)OUT=3*X+2。为了再次将Z从输出变换空间迁移到明文变换空间,逆函数F-1(Y)=(Y-2)/3必须可用以获得如下X:F-1(Y)=(3*X+2-2)/3=X。在该例子中,Z、X和Y是可用于使用简单加减算术进行变换的数字。可以理解,Z、X和Y可以是任何数据格式的数据,包括二进制值、数字、字符、字等。函数F可以是更复杂的函数,并且适用于对例如二进制值、数字、字符或字进行操作。在某些实施例中,以实现二进制值计算有效性的方式来选择函数F。
如图16B所示,函数F可被定义为继承(seed)额外的参数S的算术操作。函数F执行的迁移一般由种子S定义。这种类型的继承的变换函数的被相关地使用。一般,没有关于输入空间IN和输出空间OUT的信息被嵌入到F中。选择函数F,使得输入数据X或种子S的操作在输出变换空间中产生不可预测的结果数据Y。种子S不需要被保护或存储在安全环境中,因为种子S以如下方式被设计:没有任何关于变换空间IN或OUT的信息被提取。
参见图16B,函数F被定义为例如F(X,S)=X-7+S。如果输入变换空间IN是明文变换空间,则X=(Z)IN=Z。在迁移之后可由此得到以下结果:Y=(Z)OUT=X-7+S=Z-7+S。如果例如种子S被提供为包括值5的数据,则F(X,5)=X-7+5和Y=(Z)OUT=X-7+5=Z-2。为了再次将Z从输出变换空间迁移到明文变换空间,逆函数F-1(Y,S)=Y+7-S必须可用以获得如下X:F-1(Y,S)=(X-7+5)+7-S。如果种子S=5是已知的,则可以正确地获得Z:F-1(Y,5)=(X-7+5)+7-5=X=Z。
如果输入变换空间IN不是明文变换空间,则函数F一般首先在输入变换空间IN中执行逆变换,接着在输出变换空间OUT中执行变换。这样的函数F被定义为例如F(X,S1,S2)=F2(F1 -1(X,S1),S2),其中F1 -1(X,S1)=X-2-S1,F2(X,S2)=X-7+S2。在迁移之后可以由此得到以下结果:Y=(Z)OUT=(X-2-S1)-7+S2=X-9-S1+S2,其中X=(Z)IN。
可将种子S1和S2作为两个单独的种子、或者优选作为种子<S1,S2>的组合物来提供以先执行F1 -1(X,S1)并且接着执行F2(X,S2)。一般,种子的组合物是多个种子的混合物。从多个种子的混合物中无法导出单个的种子。用于混合种子S1和S2的参数混合函数被表示为:f(S1,S2)=<S1,S2>。函数结果<S1,S2>被称为种子S1和S2的组合物。在上述例子中,如果S1=5,S2=7,则组合物是<S1,S2>=5-7=-2。
在上述例子中,Z、X、Y和S是可用于使用简单加减算术进行变换的数字。可以理解,Z、X、Y和S可以是任何数据格式的数据,包括二进制值、数字、字符、字等。函数F可以是更复杂的函数,并且适于对例如二进制值、数字、字符或字进行操作。类似于图1A-E,图17A进一步详细描述了基础基元。
在图17A中,函数A(Data,S)=As(DaTa)=DaTaTs定义了应用基元,其使用输入种子S将输入数据变换为变换的DaTaTs。在图17B中,函数R(DataTs,S)=RS(DaTaTS)=DaTa定义了移除基元,其使用种子S来逆变换输入DaTaTs以获得输出数据。对于两个函数A()和R(),种子S需要相同以使它们成为彼此的逆反。
原始数据及其变换的变量DaTaTs一般具有相同的大小,即由相同数量的比特来表示,这使得基于其大小来确定该数据是否位于特定的变换空间中是不可能的。
在图17C中,函数C(Data1,Data2)=CData1(Data2)=DaTaC定义了一种条件变换,其中输出DaTaC是两个输入数据Data1和Data2的相关性。条件基元一般保持输入数据和输出数据的大小,使得其不可能确定数据是否是相关性的结果。
诸如应用基元、移除基元和条件基元的基元可以组合。组合产生新的操作,其中各个基元是不可见的。
图17D示出移除和应用基元的组合的例子。变换操作使用组合物<P,S>作为到应用到输入DataTP的组合的移除和应用操作的输入。RPAS函数将输入DataTP从输入变换域P映射到输出变换域S以获得输出DataTS。组合的移除和应用操作的所有输入和输出不会被变换或以组合物的形式。操作被应用到变换的数据,并且生成变换的数据。因此变换操作发生在变换域空间中,并且不会在任何接口上揭示各个参数或未变换的数据。用于产生组合物<P,S>的函数优选是唯一的,并且链接至组合的应用和移除操作的实施方式。
图17E示出对于两个输入组合物<P,S,Q1>和<DataTP,Q2>的安全相关操作的例子。RPCQAS函数组合移除、条件和应用基元,以由此创建输出DataCTS。
图18示出在条件接入系统的接收器中实现的变换路径的示例性例子。接收器一般至少部分由软件或可编程阵列中的场可编程门阵列(FPGA)程序来实现。接收器包括处理器的未保护的、部分保护的和/或安全的存储器。处理器被配置为执行存储在存储器中的函数以将秘密数据Z从输入变换空间IN迁移到输出变换空间OUT。秘密数据Z不能被提取或截取,并且因此不能例如被非法地分配到其它接收器。
接收器接收控制字CW作为授权控制消息ECM中的全局变换控制字CWDT P。接收器以三个步骤将CWD从输入变换空间P迁移到接收器的最终输出变换空间CSSK。最后一个迁移步骤创建了变换的控制字{CW}CSSK,其是在共享对于接收器唯一的秘密密钥{CSSK}的簇的输出变换空间中的控制字CW。
接收器包括类属计算环境和安全计算环境。
类属计算环境包括用于从头端系统接收ECM的ECM传递路径。类属计算环境进一步包括用于从头端系统接收授权管理消息(EMM)的EMM传递路径。EMM包括用于通过多种变换空间沿着变换路径的路径来迁移CWDT P的种子。在EMM中接收到的种子被存储在类属计算环境的NVRAM存储器中。第一种子等于组合物<P,G1>。第二种子等于组合物<G1,U1>。第三种子等于组合物<CSSK,U1>。
安全计算环境包括一序列的变换函数。第一函数RPAG1使用作为种子输入的组合物<P,G1>将CWDT P从输入变换空间P变换到输出变换空间G1。随后,第二函数RG1AU1使用组合物<G1,U1>将CWDT G1,即在变换空间G1中的CW从输入变换空间G1变换到输出变换空间U1。随后,第三函数,在这个例子中是TDES白盒加密函数将CWDT U1,即在变换空间U1中的CW从输入变换空间U1变换到输出变换空间CSSK。得到的{CW}CSSK是经CSSK密钥加密的CW,其可通过条件接入接收器使用CSSK来解密,该CSSK被预存在接收器的安全存储器中或由接收器安全地取得。
应当理解,在接收器中的变换路径并不限于图18所示的例子,并且其可以包括任何数量和任何类型的变换操作。
本发明的一个实施例可被实现为用于计算机系统的程序产品。程序产品的程序定义实施例的函数(包括这里描述的方法),并且可包括在多种计算机可读非暂时性存储媒介中。计算机可读存储媒介可以是非暂时性存储媒介。示例性的计算机可读和/或非暂时存储媒介包括但不限于:(i)其上面可以永久存储数据的不可写存储媒介(例如计算机内的只读存储设备,例如由CD-ROM驱动器可读的CD-ROM盘、闪存、ROM芯片或任何类型的固态非易失性半导体存储器);(ii)其上存储可改变信息的可写存储媒介(例如在磁盘驱动器或硬盘驱动器内的软盘或任何类型的固态随机存取半导体存储器)。此外,本公开不限于以上描述的实施例,这些实施例可在附后的权利要求的范围内变化而不脱离本公开的范围。
应当理解,与任何一个实施例相关描述的任何特征都可以单独使用,或与所描述的其他特征组合使用,并且还可以与任何其他实施例的一个或多个特征或任何其他实施例的任何组合一起组合使用。此外,可以使用以上没有描述的同等变化和修改而不脱离由附后的权利要求所定义的本发明的范围。
Claims (12)
1.一种用于安全地获得控制字的接收器,所述接收器包括第一存储器,所述第一存储器被配置为存储变换函数(F),所述变换函数被配置为接收变换的控制字(x)和种子(y),并且在所述种子(y)的控制下使用数学变换将所述变换的控制字(x)从输入变换空间迁移到输出变换空间以获得控制字(z),所述接收器进一步包括缓冲存储器和缓冲控制模块,其中所述缓冲控制模块被配置为:
截取所述变换的控制字(x)和所述种子(y);
在所述缓冲存储器中搜索匹配所述变换函数(F)、所述变换的控制字(x)和所述种子(y)的所述控制字(z);
如果在所述缓冲存储器中找到所述控制字(z),则将所述控制字(z)提供给所述变换函数(F)的输出,从而旁路所述变换函数(F);以及
如果在所述缓冲存储器中没有找到所述控制字(z),则将所述控制字(x)和所述种子(y)提供给所述变换函数(F),从所述变换函数(F)获得所述控制字(z),并且将所述控制字(z)与所述变换函数(F)、所述变换的控制字(x)和所述种子(y)相关联地存储到所述缓冲存储器中。
2.根据权利要求1所述的接收器,其中所述第一存储器被配置为存储形成变换函数序列和/或变换函数树的两个或更多变换函数(F,G),并且其中所述缓冲控制模块被链接到数据总线,所述数据总线将所述缓冲存储器通信地连接到一个或更多所述变换函数(F,G)。
3.根据权利要求2所述的接收器,其中在所述变换函数序列和/或变换函数树中的最后一个变换函数被配置为生成作为明文控制字或加密的控制字的控制字。
4.根据权利要求1-3中任一项所述的接收器,包括含有所述第一存储器的安全计算环境,所述接收器进一步包括含有所述缓冲存储器的类属计算环境。
5.根据权利要求4所述的接收器,其中所述类属计算环境包括所述缓冲控制模块,并且其中所述数据总线将所述缓冲控制模块通信地连接到一个或多个所述变换函数(F,G)的输入和输出。
6.根据权利要求4所述的接收器,其中一个或多个所述变换函数中的每一个包括缓冲控制模块,并且其中所述数据总线将所述每个缓冲控制模块通信地连接到所述缓冲存储器。
7.根据权利要求4-6中任一项所述的接收器,进一步包括智能卡,所述智能卡可以被可分离地连接到所述接收器,并且其中所述智能卡包括所述安全计算环境。
8.根据权利要求7所述的接收器,其中所述接收器通过网络通信地连接到所述智能卡。
9.一种用于根据权利要求7或权利要求8所述的接收器的智能卡,所述智能卡包括在安全计算环境中的第一存储器,所述第一存储器被配置为存储变换函数(F),所述变换函数被配置为接收变换的控制字(x)和种子(y),并且在所述种子(y)的控制下使用数学变换将所述变换的控制字(x)从输入变换空间迁移到输出变换空间以获得控制字(z),包括缓冲控制模块的所述变换函数(F)被配置为:
截取所述变换的控制字(x)和所述种子(y);
在所述接收器的缓冲存储器中搜索匹配所述变换函数(F)、所述变换的控制字(x)和所述种子(y)的所述控制字(z);
如果在所述缓冲存储器中找到所述控制字(z),则将所述控制字(z)提供给所述变换函数(F)的输出,从而旁路所述变换函数(F);以及
如果在所述缓冲存储器中没有找到所述控制字(z),则将所述控制字(x)和所述种子(y)提供给所述变换函数(F),从所述变换函数(F)获得所述控制字(z),并且将所述控制字(z)与所述变换函数(F)、所述变换的控制字(x)和所述种子(y)相关联地存储到所述缓冲存储器中。
10.根据权利要求9所述的智能卡,其中所述第一存储器被配置为存储形成变换函数序列和/或变换函数树的两个或更多变换函数(F,G),并且其中所述缓冲控制模块被链接到数据总线,所述数据总线将所述缓冲存储器通信地连接到一个或更多所述变换函数(F,G)。
11.一种包括头端系统和根据权利要求1-8中任一项所述的一个或多个接收器的条件接入系统,所述头端系统被配置为将包括所述变换的控制字(x)的授权控制消息和包括一个或多个种子(y)的授权管理消息传输给所述接收器。
12.一种用于在接收器中安全地获得控制字的方法,所述接收器包括被配置为存储变换函数(F)的第一存储器,所述方法包括以下步骤:
接收(101)变换的控制字(x)和种子(y);
在缓冲控制模块中截取(102)所述变换的控制字(x)和所述种子(y);
在缓冲存储器中搜索(103)匹配所述变换函数(F)、所述变换的控制字(x)和所述种子(y)的所述控制字(z);
如果(104)在所述缓冲存储器中找到所述控制字(z),则将所述控制字(z)提供(105)给所述变换函数(F)的输出,从而旁路所述变换函数(F);以及
如果(104)在所述缓冲存储器中没有找到所述控制字(z),则将所述控制字(x)和所述种子(y)提供(106)给所述变换函数(F),在所述种子(y)的控制下使用数学变换在所述变换函数(F)中将所述变换的控制字(x)从输入变换空间迁移(107)到输出变换空间以获得所述控制字(z),并且将所述控制字(z)与所述变换函数(F)、所述变换的控制字(x)和所述种子(y)相关联地存储(108)到所述缓冲存储器中。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP10151677A EP2348725A1 (en) | 2010-01-26 | 2010-01-26 | Computational efficiently obtaining a control word in a receiver using transformations |
EP10151677.1 | 2010-01-26 | ||
EP10196221.5A EP2360918B1 (en) | 2010-01-26 | 2010-12-21 | Computational efficiently obtaining a control word in a receiver using transformations |
EP10196221.5 | 2010-12-21 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102137289A true CN102137289A (zh) | 2011-07-27 |
CN102137289B CN102137289B (zh) | 2016-05-18 |
Family
ID=42270550
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110058389.1A Expired - Fee Related CN102137289B (zh) | 2010-01-26 | 2011-01-26 | 在接收器中使用变换来有效计算地获得控制字 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9106795B2 (zh) |
EP (2) | EP2348725A1 (zh) |
JP (1) | JP2011155642A (zh) |
KR (1) | KR20110088375A (zh) |
CN (1) | CN102137289B (zh) |
CA (1) | CA2726501C (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB201418815D0 (en) | 2014-10-22 | 2014-12-03 | Irdeto Bv | Providing access to content |
KR102311340B1 (ko) * | 2015-01-15 | 2021-10-15 | 한국전자통신연구원 | 암호화 장치 및 방법 |
EP3373505A1 (en) * | 2017-03-06 | 2018-09-12 | Koninklijke Philips N.V. | Device and method for sharing a matrix for use in a cryptographic protocol |
EP4044554B1 (en) | 2021-02-16 | 2023-10-18 | Irdeto B.V. | Providing and managing mobile network operator profiles |
AR126203A1 (es) * | 2021-06-23 | 2023-09-27 | Arris Entpr Llc | Sistema y método para entregar claves y encriptar contenido de forma segura en entornos informáticos en la nube |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040086127A1 (en) * | 2002-11-05 | 2004-05-06 | Candelore Brant L. | Mechanism for protecting the transfer of digital content |
CN1643922A (zh) * | 2002-03-20 | 2005-07-20 | 松下电器产业株式会社 | 内容重现装置、方法和程序以及密钥管理装置和系统 |
US20060184796A1 (en) * | 2005-02-16 | 2006-08-17 | Comcast Cable Holdings, Llc | System and method for a variable key ladder |
US20080065548A1 (en) * | 2004-09-10 | 2008-03-13 | Koninklijke Philips Electronics, N.V. | Method of Providing Conditional Access |
US20080279386A1 (en) * | 2001-09-21 | 2008-11-13 | The Directv Group, Inc. | Method and apparatus for encrypting media programs for later purchase and viewing |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6034411A (en) | 1997-10-29 | 2000-03-07 | Intersil Corporation | Inverted thin film resistor |
JP2002261747A (ja) * | 2000-12-28 | 2002-09-13 | Sony Corp | 配信方法及び配信システム |
JP4326186B2 (ja) * | 2002-04-15 | 2009-09-02 | ソニー株式会社 | 情報処理装置および方法 |
JP2004192038A (ja) * | 2002-12-06 | 2004-07-08 | Sharp Corp | 情報処理装置、情報処理システム、情報処理プログラム、および該プログラムを記録した記録媒体 |
JP4422437B2 (ja) * | 2003-06-25 | 2010-02-24 | 日本放送協会 | ライセンス情報送信装置およびライセンス情報受信装置 |
JP2005053009A (ja) * | 2003-08-07 | 2005-03-03 | Canon Inc | 印刷装置 |
US7577253B2 (en) * | 2003-11-13 | 2009-08-18 | Irdeto Eindhoven B.V. | Conditional access method and devices |
US20060200412A1 (en) * | 2005-02-23 | 2006-09-07 | Comcast Cable Holdings, Llc | System and method for DRM regional and timezone key management |
EP1722564A1 (fr) * | 2005-05-13 | 2006-11-15 | Nagra France Sarl | Méthode d'accès conditionnel local pour équipements mobiles |
EP2227014B1 (en) | 2009-03-02 | 2019-10-02 | Irdeto B.V. | Securely providing secret data from a sender to a receiver |
EP2227015B1 (en) * | 2009-03-02 | 2018-01-10 | Irdeto B.V. | Conditional entitlement processing for obtaining a control word |
-
2010
- 2010-01-26 EP EP10151677A patent/EP2348725A1/en not_active Withdrawn
- 2010-12-21 EP EP10196221.5A patent/EP2360918B1/en active Active
- 2010-12-28 JP JP2010293197A patent/JP2011155642A/ja active Pending
- 2010-12-29 US US12/980,978 patent/US9106795B2/en active Active
- 2010-12-29 CA CA2726501A patent/CA2726501C/en not_active Expired - Fee Related
- 2010-12-30 KR KR1020100138770A patent/KR20110088375A/ko active IP Right Grant
-
2011
- 2011-01-26 CN CN201110058389.1A patent/CN102137289B/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080279386A1 (en) * | 2001-09-21 | 2008-11-13 | The Directv Group, Inc. | Method and apparatus for encrypting media programs for later purchase and viewing |
CN1643922A (zh) * | 2002-03-20 | 2005-07-20 | 松下电器产业株式会社 | 内容重现装置、方法和程序以及密钥管理装置和系统 |
US20040086127A1 (en) * | 2002-11-05 | 2004-05-06 | Candelore Brant L. | Mechanism for protecting the transfer of digital content |
CN1736056A (zh) * | 2002-11-05 | 2006-02-15 | 索尼电子有限公司 | 保护数字内容传送的机构 |
US20080065548A1 (en) * | 2004-09-10 | 2008-03-13 | Koninklijke Philips Electronics, N.V. | Method of Providing Conditional Access |
US20060184796A1 (en) * | 2005-02-16 | 2006-08-17 | Comcast Cable Holdings, Llc | System and method for a variable key ladder |
Non-Patent Citations (1)
Title |
---|
HENNESSY J L,ET ALL: "《Computer Architecture, A Quantitative Approach》", 1 June 2002, article "《Computer Architecture,A Quantitative Approach", pages: 1-848 * |
Also Published As
Publication number | Publication date |
---|---|
CA2726501C (en) | 2018-10-16 |
EP2360918A1 (en) | 2011-08-24 |
US9106795B2 (en) | 2015-08-11 |
CN102137289B (zh) | 2016-05-18 |
EP2348725A1 (en) | 2011-07-27 |
KR20110088375A (ko) | 2011-08-03 |
JP2011155642A (ja) | 2011-08-11 |
US20110268271A1 (en) | 2011-11-03 |
EP2360918B1 (en) | 2017-05-17 |
CA2726501A1 (en) | 2011-07-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220171618A1 (en) | Obfuscation for protection of streaming media and other data flows | |
JP7225220B2 (ja) | 記憶データ暗号化/復号化装置及び方法 | |
CN101401348B (zh) | 用于使密码函数模糊的方法和系统 | |
CN103345609B (zh) | 一种文本加解密方法和加解密设备 | |
US8000467B2 (en) | Data parallelized encryption and integrity checking method and device | |
CN102164034A (zh) | 用于建立安全信任密钥的设备和方法 | |
CN110245498A (zh) | 解密方法和电路以及对应的设备 | |
CN101536398A (zh) | 用于白盒实现的加密方法 | |
CN102138300A (zh) | 消息认证码预计算在安全存储器中的应用 | |
CN102137289A (zh) | 在接收器中使用变换来有效计算地获得控制字 | |
US20140086409A1 (en) | Personalized whitebox descramblers | |
KR20100120671A (ko) | 스마트 카드의 보안 | |
US20090013183A1 (en) | Confidential Information Processing Method, Confidential Information Processor, and Content Data Playback System | |
CN108667598B (zh) | 用于实现安全密钥交换的设备和方法及安全密钥交换方法 | |
CN101632084A (zh) | 对至少二维的数据集的加密和解密 | |
US20170366514A1 (en) | Code obfuscation and associated objects | |
CN105743906A (zh) | 一种基于内容关联密钥的图片文件加解密方法及系统 | |
US9219606B2 (en) | Method and device for digital data blocks encryption and decryption | |
JP2010206796A (ja) | 秘密のデータの送信機から受信機への安全な提供 | |
KR20060110383A (ko) | 네트워크 보안 프로세서의 다중모드 암호화 장치 | |
Kitagawa et al. | Obfustopia built on secret-key functional encryption | |
CN109286488B (zh) | Hdcp关键密钥保护方法 | |
EP1459474B1 (en) | Anti-pirate method for the distribution of digital content | |
CN117459206A (zh) | 基于联盟链的同态加密电子文档安全共享方法、装置、处理器及其计算机可读存储介质 | |
CN116127481A (zh) | 一种数据加密的优化方法及终端 |
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: APPLICANT; FROM: IRDETO B.V. TO: IRDETO B. V. Free format text: CORRECT: ADDRESS; FROM: |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160518 Termination date: 20210126 |
|
CF01 | Termination of patent right due to non-payment of annual fee |