首页> 中国专利> 块加密系统、利用置换隐藏各加密轮的核心加密函数

块加密系统、利用置换隐藏各加密轮的核心加密函数

摘要

在系统(600)中,服务器(610)以模糊形式向执行装置(620)提供数字信号处理函数f。函数f包括信号处理函数fi的函数级联,对于公式(I),1≤i≤N。服务器包括处理器(612),用于选择2N个可逆置换pi的集合,其中1≤i≤2N;计算N个函数gi的集合,其中gi在功能上相当于公式(II),其中1≤i≤N;以及计算N-1个函数hi的集合,其中hi在功能上相当于公式(III),其中2≤i≤N。服务器包括:部件(614),用于为执行装置配备包括公式(IV)的执行装置函数级联,其中y1,…,yN是公式(V)的函数参数;以及部件(616),用于向执行装置提供函数g1,…,gN。执行装置包括:部件(626),用于获得函数g1,…,gN;以及处理器(622),用于加载执行装置函数级联并且对函数g1,…,gN应用加载的执行装置函数级联(例如EDj (g1,…,gN))。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2015-08-26

    专利权人的姓名或者名称、地址的变更 IPC(主分类):H04L9/06 变更前: 变更后: 申请日:20041130

    专利权人的姓名或者名称、地址的变更

  • 2015-02-04

    专利权的转移 IPC(主分类):H04L9/06 变更前: 变更后: 登记生效日:20150113 申请日:20041130

    专利申请权、专利权的转移

  • 2013-09-25

    专利权人的姓名或者名称、地址的变更 IPC(主分类):H04L9/06 变更前: 变更后: 申请日:20041130

    专利权人的姓名或者名称、地址的变更

  • 2011-07-27

    授权

    授权

  • 2010-05-12

    专利申请权的转移 IPC(主分类):H04L9/06 变更前: 变更后: 登记生效日:20100402 申请日:20041130

    专利申请权、专利权的转移

  • 2007-03-14

    实质审查的生效

    实质审查的生效

  • 2007-01-03

    公开

    公开

查看全部

说明书

技术领域

本发明涉及以安全和/或个性化方式向执行装置提供级联信号处理函数的方法。本发明还涉及用于以安全和/或个性化方式向执行装置提供级联信号处理函数的系统。本发明还涉及一种执行装置,用于执行以安全和/或个性化方式提供的级联信号处理函数。

背景技术

因特网向用户提供了对数字内容的便利且无所不在的访问。由于因特网作为强大的分配渠道的潜能,许多CE产品力图与PC平台—因特网的主要入口进行互操作。利用因特网作为已取得版权内容的分配介质产生了对保证内容供应商的利益安全的强制挑战。具体地说,需要保证内容供应商的版权和商业模型。控制重放软件是强制实施内容所有者利益的一种方式,包括可用内容下的条款。具体地说,对于PC平台,必须假定用户能够完全控制提供对内容和无限量时间和资源的访问的硬件和软件,以攻击和旁路任何内容保护机制。因此,内容供应商必须通过对并非所有用户都能够被信赖的共同体的敌对网络传递内容到合法用户。在数字权利管理中用于保护分配给PC的内容的一般方法是,对数字内容进行加密(例如用DES)并在PC硬盘上的所谓许可证数据库中存储解密密钥(或“许可证”)。PC上的数字内容一般利用媒体播放器再现,比如Microsoft的媒体播放器、Real的RealOne播放器、苹果的QuickTime播放器。这种播放器能够为特定内容格式加载用于执行格式特定解码的相应插件程序。那些内容格式可包括AVI、DV、运动JPEG、MPEG-1、MPEG-2、MPEG-4、WMV、音频CD、MP3、WMA、WAV、AIFF/AIFC、AU等等。图1中图解了播放器和插件程序结构,其中媒体播放器100包括核心播放器100和几个格式特定的插件程序(显示的是插件程序120、122和124)。核心播放器100可以例如提供用于控制播放器的用户界面。各个插件程序包括相应的解码器。它可以直接发送解码内容以再现HW/SW,比如声卡,或将其传递到核心播放器100进行进一步处理。为了安全再现,利用安全插件程序,它不仅解码特定格式下的内容,而且对内容解密。这一点在图2中图解了,其中首先通过解密器230传递加密内容,然后所解密的内容通过格式特定解码器220传递。解密器230可从许可证数据库210接收解密密钥/许可证。

依赖于加密的数字权利管理的最大弱点在于密钥分配和处理。为了重放,软件播放器必须从许可证数据库检索解密密钥,然后它必须在存储器的某处存储此解密密钥,以便对加密内容进行解密。这给攻击者留下两个选择来攻击在软件播放器中处理的密钥:第一,对许可证数据库访问函数的逆向工程能够导致黑盒软件(即,攻击者并非必须了解软件函数的内部工作),黑盒软件能够从所有许可证数据库检索资产(asset)密钥。第二,通过观测对在内容解密期间使用的存储器的访问,有可能检索资产密钥。

一般地,数字权利管理系统根据块密码使用加密技术,块密码利用称为轮的加密/解密步骤序列来处理块中的数据流。第i-1轮的输出是第i轮的输入。因此,对于具有N轮的系统,算法能够被描述为函数级联fNо…оf1(x),其中函数fi表示f轮的函数性。大部分的块算法是Feistel网络。在这种网络中,均匀长度n的输入数据块x被分成长度为n/2的两个等分部分,通常称为L和R。因此,提供给第一轮的输入x得到x=<L0,R0>。第i轮(i>0)执行函数fi,其中fi定义为:fi(<Li-1,Ri-1>)=<Ri-1,(Li-1F(Ri-1,Ki))>,Ki是用在第i轮中的子密钥,并且F是任意轮函数。

发明内容

本发明的目的是提供对诸如Feistel网络的级联信号处理函数的更好保护。

为了满足本发明的目的,以模糊形式向执行装置提供数字信号处理函数f的方法,其中函数f包括一个函数级联,该函数级联包括多个信号处理函数fi,1≤i≤N,用于处理数字信号输入x以产生数字信号输出(例如,FC1(x)≡fNо…оf1(x)),所述方法包括:

选择2N个可逆置换pi的集合,1≤i≤2N;

计算N个函数gi的集合,其中gi在功能上相当于p2i-1оfiоp2i-1,其中1≤i≤N;

计算N-1个函数hi的集合,其中hi在功能上相当于p2i-1-1оp2i-2,其中2≤i≤N;

为所述执行装置配备执行装置函数级联,该函数级联包括yNоhNоyN-1оhN-1о…оy1,其中y1,…,yN是函数参数(例如,ED1(y1,…,yN)≡yNоhNоyN-1оhN-1о…оy1),

向执行装置提供函数g1,…,gN;以及

在执行装置中,对函数g1,…,gN(例如ED1(g1,…,gN))应用执行装置函数级联。

根据本发明,以封装为gi的形式提供组成函数fi,其中gi在功能上相当于p2i-1оfiоp2i-1,其中1≤i≤N。用于封装的函数pi也通过以hi的形式提供而隐藏,hi是乘法形式p2i-1-1оp2i-2,其中2≤i≤N。通过在执行装置中以交织方式执行函数gi和hi(如图4中图解的实例),在fi不可直接识别的情况下获得函数级联的函数性。具体地说,如果fi表示Feistel密码的轮函数,则嵌入在轮函数中的轮密钥不可直接识别。fi的模糊传递提高了安全性。执行函数装置级联可形成媒体播放器的核心函数性,其中集合g1,…,gN使播放器能够执行包含f1直至包含fN的函数级联。

从属权利要求2和3给出用于保护函数级联的(函数)开始的两个相应备选实施例。在权利要求2的实施例中,执行装置函数级联以P1-1开始,例如将它应用到g1,…,gN,作为在装置中执行的函数序列的函数开始给出:这样,执行装置明确地执行f1。在权利要求3的实施例中,通过用帮助隐藏P1-1的开始函数f0扩展函数级联来提高安全性。函数级联例如可以是FC2(x)=fNо…оf1оf0(x)。执行装置函数级联从函数S1开始,例如ED3(y1,…,yN)=yNоhNоyN-1оhN-1о…оy1оS1,其中S1在功能上相当于p1-1оf0。由于S1仅表示与f0相乘形式的P1-1,因此无法以诸如读取某些存储单元的直接方式从执行装置检索P1-1。最好,f0是一个全局秘密。

从属权利要求4和5给出用于以类似于权利要求2和3的方式保护函数级联的(函数)结尾的两个相应的备选实施例。

根据从属权利要求6的方法,选择的置换pi序列对装置是唯一的。这样,函数级联不仅以模糊形式而且以个性化形式提供给执行装置。例如,如果函数级联表示具有嵌入解密密钥的Feistel密码,则密码分析或者强力攻击可能导致获得g1,…,gN的黑盒函数性。这个打破的函数性于是只能与相应的执行装置函数级联组合时起作用,而不是与任何其它执行装置组合都起作用。这显著地限制了成功攻击的影响。

根据从属权利要求7的方法,执行装置函数级联嵌入在一个程序中,例如以媒体播放器或媒体播放器的插件程序的形式。执行装置因此配置了安全、个性化的软件。

根据从属权利要求8的方法,函数g1,…,gN构成程序的插件程序。如果程序本身是插件程序,则函数g1,…,gN事实上是插件程序的插件程序。作为备选,根据从属权利要求9的方法,函数g1,…,gN可以与执行装置函数级联嵌入在同一程序中。

为了实现本发明的目的,用于使执行装置中的处理器执行数字信号处理函数f的计算机程序产品包括函数级联,该函数级联包括多个信号处理函数fi,其中1≤i≤N,用于处理数字信号输入x以产生数字信号输出(例如,FC1(x)≡fNо…оf1(x)),通过如下方式:

加载执行装置函数级联,该函数级联包括yNоhNоyN-1оhN-1о…оy1,其中y1,…,yN是函数参数,

加载函数g1,…,gN的集合;

对函数g1,…,gN的集合应用执行装置函数级联;其中:

gi在功能上相当于p2i-1оfiоp2i-1,其中1≤i≤N;

hi在功能上相当于p2i-1-1оp2i-2其中2≤i≤N;以及

pi是可逆置换,其中1≤i≤2N。

为了实现本发明的目的,提供了一种以模糊、匿名形式向多个执行装置提供数字信号处理函数f的方法,各个执行装置由唯一下标j标识;函数f包括函数级联,该函数级联包括多个信号处理函数fi,其中1≤i≤N,用于处理数字信号输入x以产生数字信号输出(例如,FC1(x)≡fNо…оf1(x)),所述方法包括:

选择2N个可逆置换pi的集合,其中1≤i≤2N;

计算N个函数gi的集合,其中gi在功能上相当于p2i-1оfiоp2i-1,其中1≤i≤N;

为各个装置j选择相应的2N个可逆置换pj,i的集合和/或序列,其对装置和/或装置的用户是唯一的;

为各个执行装置j计算N-1个函数hj,i的相应集合,其中hj,i在功能上相当于pj,2i-1-1оpj,2i-2,其中2≤i≤N;

为各个执行装置j配备各自的执行装置函数级联EDj(y1,…,yN),该函数级联包括yNоhj,NоyN-1оhj,N-1о…оy1

为各个执行装置j  配备各自的加载程序函数loaderj(x1,…,xN)=(lj,1оx1оrj,1,…,lj,NоxNоrj,N),其中lj,i在功能上相当于pj,2i-1оp2i,并且rj,i在功能上相当于p2i-1-1оpj,2i-1

向执行装置提供函数g1,…,gN;以及

在执行装置中,执行EDj(loaderj(g1,…,gN))。

函数fi以与权利要求1所述相同的方式以函数g1,…,gN的形式模糊化。函数g1,…,gN对各个装置一样,并可看作对应于一个缺省/匿名装置。执行装置配备了装置特定的(“个性化”)执行装置级联。装置特定的加载程序函数用来将各自的匿名函数gi转换为相应的装置特定函数,该装置特定函数能被馈送到执行装置级联。加载程序函数利用基于未泄漏的置换pj,i的集合/序列的转换函数lj,i和rj,i

根据从属权利要求12的方法,函数gi例如可利用广播或者在诸如CD-ROM或DVD的存储介质上以同一方式提供给所有装置。

根据下文所述的实施例,本发明的这些及其它方面是显而易见的,并将参考下文所述的实施例进行阐述。

附图说明

在附图中:

图1显示基于先有技术插件程序的解码的框图;

图2显示基于先有技术的解密的框图;

图3显示先有技术集成解密/解码系统的框图;

图4显示根据本发明的模糊化;

图5显示模糊的简单实例;

图6显示根据本发明的系统的框图;

图7显示根据本发明的系统的另一实施例;

图8图解根据本发明的匿名模糊;以及

图9图解匿名模糊的备选实施例。

具体实施方式

图3显示可采用本发明的先有技术系统的框图。在图3的实例中,内容(一般为音频和/或视频内容)分布在介质310上。介质对于各个播放器可以是一样的。介质可为任何适当的类型,例如音频CD、DVD、固态等。介质上的内容是复制保护的,最好利用诸如Feistel密码的加密算法加密。存储介质可包括有关解密密钥的信息。或者,存储介质可包括信息312(比如标识符),其使播放器能够例如通过将它从因特网中的服务器下载而检索信息。在安全模块320中通过利用密钥特定的密钥322和信息312来计算324解密密钥326,从而创建解密密钥。解密密钥在第二模块330中被接收332。第二模块330解密334、解码336并再现338介质310的内容314。

图4图解根据本发明的方法。将数字信号处理函数f以模糊形式提供给执行装置。函数f包括函数级联,该函数级联包括多个信号处理函数fi,1≤i≤N。例如,函数级联的核心可由FC1(x)≡fNо…оf1(x)形成。应该注意,这里使用了传统的数学符号:gоf(x)=g(f(x))。原则上,函数级联可以是任何数字信号处理函数。在优选实施例中,函数级联包括密码。例如,函数fi可表示Feistel密码的第i轮(i>0)。在这种情况下,fi定义为:

fi(Li-1Ri-1)=Ri-1(Li-1F(Ri-1,Ki)),

其中Ki是用在第i轮的子密钥,并且F是任意轮函数。

根据本发明,选择2N个可逆置换pi的集合,1≤i≤2N。接下来,计算N个函数gi的集合,其中gi在功能上相当于p2i-1оfiоp2i-1,其中1≤i≤N。在此情况下,在功能上相当于意味着:对于各个允许的输入值,如果gi应用到同一输入(例如x),则获得与在将p2i-1оfiоp2i-1应用到那个输入相同的结果。合成函数p2i-1、fi和p2i-1不是分别可见的,gi提供p2i-1оfiоp2i-1的黑盒函数性。图5图解非常简单的一维函数的这个方法。在此实例中,

>>>p>4>>>(>x>)>>=>>x>>;> > >sup>>p>4>>->1>sup>>>(>x>)>>=>>x>2>>;> > >>>p>3>>>(>x>)>>=>>x>3>>;> > >sup>>p>3>>->1>sup>>>(>x>)>>=>3>x>;> >f2(x)=x+3。由此,

从计算机编译程序构造领域众所周知的是,能够如何利用所谓的部分估算而获得p2i-1оfiоp2i-1的黑盒函数性。N.D.Jones、C.K.Gomard和P.Sestoft的“部分估算和自动程序生成(Partial Evaluation and AutomaticProgram Generation)”第一章描述了部分估算的概念。在此不对其进行更详细描述。应理解,数字信号输入x是多维参数,例如64或128位块/向量,以能够执行有用的置换。根据本发明,计算N-1个函数hi的集合,其中hi在功能上相当于p2i-1-1оp2i-2,2≤i≤N。利用图5的简单实例,利用这些定义,隐藏f2的部分执行装置级联将为:

可以看出,这实际上在功能上相当于p5-1оf2оp2(x)。因此,已经执行这个级联的执行装置执行了f2,而不需要对f2具有明确了解。

在另一个实例中,N=2,并且f1和f2分别估算为各自的映射表,如下给出:

f1:{0->3,1->1,2->6,3->2,4->7,5->5,6->4,7->0,8->8},

f2:{0->4,1->1,2->5,3->7,4->6,5->2,6->0,7->8,8->3}。

在此实例中,fi是可逆函数,它将0和8之间的数转换为0和8之间的数,例如,值0被转换为值3,值1被转换为1,值2被转换为6等等。在此实例中使用以下四个相应的置换:

p1:{0->5,1->3,2->1,3->7,4->0,5->6,6->2,7->8,8->4}

p2:{0->8,1->6,2->7,3->3,4->4,5->2,6->0,7->1,8->5}

p3:{0->3,1->5,2->7,3->1,4->6,5->0,6->2,7->8,8->4}

p4:{0->3,1->0,2->5,3->2,4->7,5->8,6->1,7->4,8->6}

对于此实例,使用以下三个可逆置换:

f2-1:{0->6,1->7,2->5,3->3,4->4,5->8,6->1,7->2,8->0}

f3-1:{0->5,1->3,2->6,3->0,4->8,5->1,6->4,7->2,8->7}

p4-1:{0->1,1->6,2->3,3->0,4->7,5->2,6->8,7->4,8->5}给出这些函数,就给出为:

h2:{0->7,1->4,2->2,3->0,4->8,5->6,6->5,7->3,8->1}。例如,p2将0映射到8,并且p3-1将8映射到7。由此,类似地,由下式给出:

g1:{0->8,1->5,2->7,3->6,4->3,5->4,6->1,7->0,8->2}并且由下式给出:

g2:{0->4,1->3,2->5,3->6,4->1,5->7,6->2,7->0,8->8}

执行装置配置了执行装置函数级联,该执行装置函数级联包括yNоhNоyN-1оhN-1о…оy1,其中y1,…,yN是函数参数。这在图4中显示为函数序列hN,hN-1,…,h2410。示例性执行装置函数级联是ED1(y1,…,yN)≡yNоhNоyN-1оhN-1о…оy1。此外,将函数g1,…,gN提供给执行装置。这在图4中显示为函数序列gN,gN-1,…,g1420。在执行装置中,执行装置函数级联应用到函数g1,…,gN。这在执行装置中例如给出总的信号处理函数ED1(g1,…,gN)。此函数然后能应用到数字信号输入x。

看一下如hi+1оgiоhi的链的中间部分,这给出:

此公式的第一和最小项将被相应的g项消除。总的结果是,执行装置执行包括函数级联fNо…оf1(x)的函数,而不需要访问任何函数fi。这些函数由此被模糊化了。

在优选实施例中,给出用于处理链的开始和结尾的选项。不需要任何其它方法,执行装置中得到的总的信号处理函数可以为例如,项p1可以通过利用包括yNоhNоyN-1оhN-1о...оy1оp1-1的执行装置函数级联而消除。例如最好,项p1-1在执行装置中保持保密。这样做的优选方式是用另一信号处理函数f0扩展函数级联(例如FC2(x)≡fNо…оf1оf0(x))。执行装置函数级联则包括yNоhNоyN-1оhN-1о…оy1оS1,例如(ED3(y1,…,yN)≡yNоhNоyN-1оhN-1о…оy1оS1),其中S1在功能上相当于p1-1оf0。用这种方式,各个项p1-1和f0不需要暴露,而是只有复合形式p1-1оf0存在。最好,f0是一个全局秘密,即,对需要了解的各方已知,但并不作任何进一步地分配。全局秘密本身是已知的,并且以保密方式传递全局秘密的方式也是已知的,因此不在这里更进一步论述。

以相应的方式,能够采取一些方法用于处理项p2N-1-1。例如,执行装置函数级联可以包括:p2NоyNоhNоyN-1оhN-1о…оy1(例如ED4(y1,…,yN)≡p2NоyNоhNоyN-1оhN-1о…оy1)。为更好地保护p2N,函数级联可以另一信号处理函数fN+1结束(例如FC3(x)≡fN+1оfNо…оf1(x))。执行装置函数级联由此包括S2оyNоhNоyN-1оhN-1о…оy1(例如ED5(y1,…,yN)≡S2оyNоhNоyN-1оhN-1о…оy1),其中S2在功能上相当于fN+1оp2N

图6图解其中可以采用本发明的系统。系统600包括服务器610和至少一个执行装置620。服务器可以实现在传统的计算机平台上,例如在用作诸如网络服务器或者文件服务器的服务器的平台上。服务器包括处理器612。处理器612在程序的控制下操作。程序可在嵌入式存储器(如嵌入式ROM)中永久地嵌入在处理器中,但是也可以从诸如硬盘(未显示)的后备存储器加载。在程序的控制下,处理器612:

●选择2N个可逆置换pi的集合,其中1≤i≤2N;

●计算N个函数gi的集合,其中gi在功能上相当于p2i-1оfiоp2i-1,其中1≤i≤N;以及

●计算N-1个函数hi的集合,其中hi在功能上相当于p2i-1-1оp2i-2,其中2≤i≤N。

可以选择置换,(例如随机或者伪随机地)从非常大的置换集合中选择,置换集合可保存在(最好保密)存储器(未显示)中。服务器还可利用适当的程序来生成置换。如何创建可逆置换是众所周知的,因此将不在这里更进一步地描述。

另外,服务器包括部件614,用于为执行装置配备执行装置函数级联,该函数级联包括yNоhNоyN-1оhN-1о…оy1,其中y1,…,yN是函数参数。服务器可以任何适当的形式做这个。例如,在工厂中,项hi可在制造执行装置620期间保存在执行装置的存储模块中。图6给出了该项通过因特网630直接下载到执行装置620。服务器610还包括部件616,用于向执行装置620提供函数g1,…,gN。函数gi包括了各自的函数fi。函数fi可以针对数字信号输入x具体选择。例如,各个视频标题可以用相应的加密函数加密(例如用同一密码但是具有内容特定的密钥)。为此,服务器610还可包括软件,用于控制处理器612对内容640加密并将加密内容642提供给分配介质,例如用于在存储介质上分配,或者通过如因特网的通信介质分配。

执行装置620包括部件626,用于从服务器610获得函数g1,…,gN。这些部件与服务器的部件616配合,因此不再进一步描述。执行装置620还包括处理器622。处理器可以是任何适当的类型,比如区分个人计算机或者嵌入式微控制器的处理器。处理器622在程序的控制下操作。程序可以利用嵌入式存储器(如嵌入式ROM)永久地嵌入在处理器622中,但是也可以从诸如硬盘(未显示)的后备存储器加载。在程序的控制下,处理器622加载执行装置函数级联,并将加载的执行装置函数级联例如通过执行ED1(g1,…,gN)而应用到函数g1,…,gN。得到的信号处理函数然后可应用到信号输入x(例如从介质接收的内容)。处理器622可以任何适当的形式加载执行装置函数级联。例如,该级联可能已经在制造期间预先存储在存储器中,将加载简化为简单的存储器读访问。在图6的实例中,执行装置620包括部件624,用于例如通过因特网630或者从介质650检索级联(或级联的项)。类似地,执行装置620可从介质650检索加密内容652,并利用处理器622对其解密。处理器还可对解密的内容进行解码。

图7显示一个优选实施例,其中将执行装置函数级联提供给嵌入在软件程序710中的执行装置620,以便由处理器622执行。图7中相同的附图标记是指与图6中所用的相同的项。软件程序710可以是如媒体播放器的程序的插件程序。因此,图7的部件614可经因特网提供此插件程序710(例如图7的项630),或在制造期间将它直接嵌入在执行装置620中。

在一个实施例,函数g1,…,gN以程序710的插件程序的形式提供给执行装置620。在程序710已经是插件程序的情况下,函数g1,…,gN实际上是插件程序的插件程序。备选地,通过将函数g1,…,gN嵌入在软件程序710中而将函数g1,…,gN提供给执行装置620,而嵌入又是通过向函数参数g1,…,gN应用执行装置函数级联而实现的。这样,程序710嵌入了函数hi和gi

在一个实施例中,各个执行装置和/或执行装置的用户是唯一的,并且由唯一身份(例如唯一的号j)标识。在根据本发明的系统和方法中,保证序列gi和hi对于所涉及的一方是唯一的。这能够通过获得执行装置和/或执行装置用户的唯一身份j来实现,2N个可逆置换pi的相应集合对于所获得的身份是唯一的。类似地,利用相同的置换集合,可以选择唯一的置换序列。两种技术(选择不同的置换集合或者选择不同的置换序列)可以组合。最好,服务器为每个唯一的身份存储(以保密方式)唯一的集合/序列。这样,能够向个人计算机中的各个软件媒体播放器提供唯一的插件程序,用于对媒体标题解密和/或解码。媒体本身不必是唯一的。加密内容仅取决于加密函数,而不取决于唯一的置换集合/序列。通过定期地(例如在媒体播放器启动时)检验软件是否对应于身份,并且仅在能够建立匹配的情况下执行软件,就能够保证没有播放器软件能够在它不属于的PC上执行。如果无意中黑客设法获得了装置特定的置换,则他们只能在所涉及的PC上使用,可能还用于用不同的加密(得到不同的函数fi)保护的内容,但不能在不同的平台上使用。

以上已经描述了一种方法和系统,其中信号处理函数级联以模糊的方式提供给执行装置。对于各个装置,可以利用相同的置换集合/序列,或者可以利用装置特定的集合/序列。在下面的内容中,描述一个优选方法,用于通过以模糊方式分配对各个装置相同的信号函数级联(“密钥”),并利用转换例程(“加载程序”)将公用密钥转换为装置特定密钥,从而获得装置特定的集合/序列。“公用密钥”以和之前描述大致相同的方式产生。公用密钥原则上能够“开启”参考播放器或者匿名播放器,但在此实施例中,其并不由任何实际的执行装置执行。如前所述,该方法包括选择2N个可逆置换pi的集合,其中1≤i≤2N,并计算N个函数gi的集合,其中gi在功能上相当于p2i-1оfiоp2i-1,其中1≤i≤N。现在作为补充,该方法包括:为分别由唯一下标j标识的各个执行装置选择相应的2N个可逆置换pj,i的集合和/或序列,其对于装置和/或装置的用户是唯一的。这个集合用于为每个装置提供一个唯一“播放器”。这个唯一播放器通过如下方式形成:为各个执行装置j计算N-1个函数hj,i的相应集合,其中hj,i在功能上相当于pj,2i-1-1оpj,2i-2,其中2≤i≤N,并且为各个执行装置j配备各自的执行装置函数级联EDj(y1,…,yN),该函数级联包括yNоhj,NоyN-1оhj,N-1о…оy1。但是,这个装置特定的集合hj,i与能够“开启”利用集合hi的参考播放器的模糊函数级联不匹配。这后一个集合/播放器集合对任何执行装置都不可用。相反,执行装置j配备了各自的加载程序函数loaderj(x1,…,xN)=(lj,1оx1оrj,1,…,lj,NоxNоrj,N),其中lj,i在功能上相当于pj,2i-1оp2i,并且rj,i在功能上相当于p2i-1-1оpj,2i-1。如上所述,各个执行装置配置了相同的函数g1,…,gN。执行装置然后执行EDj(loaderj(g1,…,gN))。在这个公式中,loaderj(g1,…,gN)有效地将匿名密钥g1,…,gN转换为装置特定密钥,该装置特定密钥最佳地匹配执行装置函数级联EDj(y1,…,yN)。利用定义loaderj(g1,…,gN)=(gj,1,gj,2,…,gj,N),loaderj(g1,…,gN)的第i个分量是gj,i=lj,iоgiоrj,i,i。利用以上给出的定义,这给出该式能够重写为这与利用装置特定的置换集合/序列是一样的,其中装置特定的集合hj,i消除了置换。

在图8中还图解了使用匿名模糊密钥和装置特定加载程序的概念。匿名播放器P1-R 810包括函数hi。匿名播放器P1-R能够由相应密钥K-R 812开启,密钥K-R 812包括以集合gi形式的模糊信号处理函数fi。匿名播放器P1-R不对任何一方公开。各方改为配置一个唯一的装置特定播放器,所显示的是播放器P1-1 830和P1-2 840。公用密钥K-R提供给各方。但是,这个公用密钥不匹配特定播放器。因此,各方也配置了装置特定密钥加载程序K-L,显示的是820和825。加载程序820和825用来将匿名密钥K-R 812转换为装置特定密钥K-j。为此,加载程序K-Li包括函数lj,i和rj,i。如图8所示,原则上,利用装置特定加载程序。如图9中进一步所示,事实上,加载程序可以相同,但是提供装置特定函数lj,i和rj,i。在图9的实例中,在提供l1,i和r1,i时,将匿名密钥K-R 812转换为装置1的装置特定密钥832;在提供l2,i和r2,i时,将匿名密钥812转换为装置2的密钥842。装置特定播放器830、840然后分别利用装置特定密钥集合h1,i832和842开启。应该理解,在这些实例中,短语“密钥”和“播放器”是可互换的,因为两个函数链相互锁定。图4的实例图解了两个链作为密钥。以类似的方式,它还可以图解为两个联锁播放器。

现在应该理解,匿名播放器810(包括gN,…,g1)可有利地通过广播和/或在存储介质上的分配向各个执行装置提供对各个执行装置相同的内容,只是因为这个播放器对各个装置是一样的。类似地,要由各个执行装置处理的数字信号输入x能够通过广播和/或在存储介质上的分配而分配对各个执行装置相同的内容。加载程序特定的方面最好通过“一对一的通信信道”和/或具有装置特定内容的存储介质向执行装置j提供至少一个以下相应函数的集合:hj,i、lj,i或rj,i。“一对一的通信信道”可以任何适当的方式获得。最好,服务器利用因特网经由保密链路(例如SSL)下载装置特定信息。

如上所述,函数f可以是基于Feistel密码网络的解密函数,并且各个信号处理函数fi是各自的Feistel解密轮函数。在这样的情况下,每一个置换pi最好是Feistel变换器,其中如果存在可逆函数Qx和Qy并且Q(<x,y>)=<Qx(x),Qy(y)>,其中Qx(x)Qx(y)=Qx(xy)并且Qy(x)Qy(y)=Qy(xy),则在连续对<x,y>上操作的函数Q是Feistel变换器。如果这些条件满足,则函数fi能最佳地隐藏。实际上,可显示存在许多这种Feistel变换器,给出足够的空间用于装置特定的置换选择。Feistel变换器的定义基于利用以上给出的定义的理解,Feistel轮fi(<Li-1,Ri-1>)=<Ri-1,(Li-1F(Ri-1,Ki))>可看作为fi=swapоinvolutaryF,其中定义swap(<x,y>)=swap(<y,x>)和involutaryF(<x,y>)=<x,yF(x)>。然后,保持swap-1=swap并且 >sup>>involutary>F>>->1>sup>>=>>involutary>F>>.> >

应该理解,本发明还扩展到计算机程序,特别是适合于实践本发明的载体上或载体中的计算机程序。程序可以为源代码、目标代码、中间代码源和诸如部分编译形式的目标代码的形式,或者任何其它适用于实现根据本发明方法的形式。载体是能够承载程序的任何实体或装置。例如,载体可包括诸如例如CD ROM或半导体ROM的ROM的存储介质,或者例如软盘或硬盘的磁记录介质。此外,载体可以是可传输的载体,比如可经由电缆或光缆或者通过无线电或其它方式传递的电信号或光信号。在程序在这样的信号中实施时,载体可以由这样的电缆或者其它装置或部件构成。备选地,载体可以是其中嵌入了程序的集成电路,该集成电路适于执行有关方法,或者用于有关方法的执行中。

应该注意,以上提到的实施例阐述不是限制本发明,而且本领域技术人员在不背离所附权利要求书范围的情况下将能设计许多备选实施例。在权利要求书中,括号中的任何附图标记不应视作限制权利要求。利用动词“包含”及其动词变化不排除除了权利要求中所述的那些元件或者步骤以外的元件或者步骤的存在。元件前面的冠词“一个”不排除存在多个这样的元件。本发明可以借助于包括几个分离元件的硬件实现,以及借助于适当地程序的计算机实现。在列举几个部件的装置权利要求中,几个这样的部件可由同一个硬件项实施。某些方法在互相不同的从属权利要求中叙述的事实并不表示这些方法的组合不能有利地使用。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号