加密算法中的运算符提升制造技术

技术编号:13831410 阅读:131 留言:0更新日期:2016-10-14 09:20
公开了一种用于使用数据的混淆表示在数据上执行运算的系统。获取构件被配置成获取第一数据值的第一混淆表示并且获取第二数据值的第二混淆表示。确定构件102被配置成通过在第一数据值的混淆表示和第二数据值的混淆表示上执行对应运算来确定第三数据值的混淆表示。混淆构件101可以配置成基于第一数据值生成第一混淆表示和并且基于第二数据值生成第二混淆表示。去混淆构件103可以配置成对第三数据值的混淆表示去混淆,以便使用方程组来获取第三数据值。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及使用操作数的混淆(obfuscated)表示执行运算。
技术介绍
当今,大量数据经由网络、移动电话、蓝牙设备、银行自动取款机等转移。为了保护信息免受非期望的访问,非常频繁地使用加密。在密码学中,加密是以使得第三方不能读取它而仅授权方可以读取它的这种方式对消息进行编码的过程。在加密方案中,使用加密算法来对被称为明文的消息加密,从而将它转变成不可读的密文。这通常使用加密密钥完成,加密密钥指定消息如何被编码。可以看到密文的任何对手应当不能确定关于原始消息的任何事物。然而,授权方能够使用解密算法对密文解码,这通常需要对手不能访问的秘密的解密密钥。加密也可以应用于保护存储的数据,诸如在计算机和存储设备中的文件。在云计算中,执行网络之上的分布式计算,其通常涉及在实时网络之上连接的大量计算机。那些计算中所涉及的数据需要受保护,因为其存储在第三方可能容易访问的网络中。在Craig Gentry的“Computing Arbitrary Functions of Encrypted Data” Communications of the ACM, Vol. 53, No3, 第97-105页, 2010年3月中,公开了一种保持数据私有但允许执行运算的加密方案。然而,该加密方案在计算上是昂贵的。Castelluccia C等人的\Efficient Aggregation Of Encrypted Data In Wireless Sensor Networks\, Mobile and Ubiquitous Systems: Networking and Services, 2005. MOBIQUIT OUS 2005, 2005年7月17日, 第109-117页, XP010853989, ISBN: 978-0-7695-2375-0公开了一种加法同态流密文。WO 2006/058561 A1公开了一种在用户身份模块(SIM)上实现的密码学功能。随机掩模用于针对要执行的密码学功能掩蔽输入数据。特别地,掩蔽功能有利地为群运算。
技术实现思路
将有利的是具有一种允许使用数据值的加密表示来执行运算的系统。为了更好地解决这一关切,本专利技术的第一方面提供一种用于使用数据的混淆表示在数据之上执行运算的系统,包括:获取构件,其配置成获取第一数据值w0的第一混淆表示(X0,Y0)并且获取第二数据值w1的第二混淆表示(X1,Y1),其中以下关系成立:其中⊕是运算符,A0、B0、A1和B1是线性运算符,并且将(u,v)映射到(A0(u)⊕B0(v),A1(u)⊕B1(v))的运算符E关于u可逆,并且σ0和σ1是用于向混淆表示提供冗余的状态变量;以及确定构件,其配置成通过在第一数据值w0的混淆表示(X0,Y0)和第二数据值w1的混淆表示(X1,Y1)上执行以下运算来确定第三数据值w2的混淆表示(X2,Y2):X2=X0⊕X1Y2=Y0⊕Y1,其中w2=w0⊗w1,其中⊗为运算符。该系统具有以下优点:两个输入数据值w0和w1之间的运算⊗可以使用输入数据值w0的混淆表示(X0,Y0)和输入数据值w1的混淆表示(X1,Y1)来执行,而无需对混淆表示解码。此外,该运算的计算复杂度类似于运算⊕的计算复杂度。因而,该运算可以高效地执行。因此,不必对w0和w1的混淆表示去混淆以用于执行它们之间的运算,以这种方式在不增加太多复杂度的情况下改进系统的安全性。例如,可以存在域W、∑和Z,其限定成使得X0、Y0、X1和Y1是Z的元素,并且w0和w1是W的元素,并且σ0和σ1是∑的元素,并且, , , 。运算符⊕可以在Z上限定,运算符⊗可以在W上限定,并且运算符Δ可以在∑上限定。运算⊕是可交换的(也就是说,对于所有,)和可结合的,也就是说,对于所有,。从W到Z的映射A0、A1可以使得对于所有以及。这可以通过说A0和A1为线性的来表达。从∑到Z的映射B0、B1可以使得对于所有以及。我们将通过说B0和B1为线性的来表达这一点。此外,A0、B0、A1和B1被选择成使得有可能从和的组合唯一地确定。也就是说,如果和使得对于i=1,2,,则。系统可以进一步包括混淆构件,其配置成生成基于第一数据值w0的第一混淆表示(X0,Y0)和基于第二数据值w1的第二混淆表示(X1,Y1)。系统可以进一步包括去混淆构件,其配置成对第三数据值w2的混淆表示(X2,Y2)去混淆,以便通过从以下方程组获取第三数据值w2:其中σ2是用于向第三数据值w2的混淆表示(X2,Y2)提供冗余的状态变量。系统可以进一步包括状态生成器以用于随机地或伪随机地生成状态变量σ0的值和/或状态变量σ1的值,并且其中混淆构件配置成基于第一数据值w0和状态变量σ0来生成第一混淆表示(X0,Y0)并且基于第二数据值w1和状态变量σ1来生成第二混淆表示(X1,Y1)。这允许通过控制由状态变量σ0和/或σ1施加的增加的冗余而创建强混淆。混淆构件可以配置成在查找表中查找第一混淆表示(X0,Y0)和第二混淆表示(X1,Y1)。此外或者可替换地,去混淆构件可以配置成在查找表中查找第三数据值w2。这是实现混淆的高效方式。利用查找表的实现方式还使得攻击者更加难以破坏混淆。混淆构件和去混淆构件可以是第一设备的部分,其中确定构件是第二不同设备的部分。第一设备可以进一步包括传送构件和接收构件,并且第二设备可以进一步包括传送构件和接收构件。第一设备的传送构件可以配置成向第二设备的接收构件传送第一混淆表示(X0,Y0)和第二混淆表示(X1,Y1)。第二设备的传送构件可以配置成向第一设备的接收构件传送混淆表示(X2,Y2)。该配置允许将⊗运算委派给第二设备,而没有准许第二设备对非混淆(或明文)数据值w0, w1和w2的访问。确定构件可以配置成以明文执行从X0和X1计算X2以及从Y0和Y1计算Y2中的至少一个。这允许X2和Y2的高效计算,而无需单独地混淆计算,但是仍旧不会向攻击者暴露原始数据值。w0、w1、w2、σ0、σ1、σ2、X0、X1、X2、Y0、Y1和Y2的值可以是具有相同位数的值。这促进了实现方式。运算符A0、B0、A1和B1可以是可逆运算符。这使得更容易设计系统参数。运算符⊕可以是按位XOR运算。这是特别适用于该应用的运算。按位XOR运算可以借助于至少一个XOR机器指令来执行。这是计算XOR运算的高效方式,并且不会向攻击者暴露原始数据值。在本专利技术的另一方面中,提供了一种用于使用数据的混淆表示在数据上执行运算的方法。该方法包括以下步骤:获取第一数据值w0的第一混淆表示(X0,Y0)并且获取第二数据值w1的第二混淆表示(X1,Y1),其中以下关系成立:其中⊕是运算符,A0、B0、A1和B1是线性运算符,并且将(u,v)映射到(A0(u)⊕B0(v),A1(u)⊕B1(v))的运算符E关于u可逆,并且σ0和σ1是用于向混淆表示提供冗余的状态变量;以及通过在第一数据值w0的混淆表示(X0,Y0)和第二数据值w1的混淆表示(X1,Y1)上执行以下运算来确定第三数据值w2的混淆表示(X2,Y2):X2=X0⊕X1Y2=Y0⊕Y1,其中w2=w0⊗w1,其中⊗为运算符。在另一方面中,提供了一种计算机程序产品,包括用于使处理本文档来自技高网
...

【技术保护点】
一种用于使用数据的混淆表示在数据之上执行运算的系统,包括:获取构件,其配置成获取第一数据值w0的第一混淆表示(X0,Y0)并且获取第二数据值w1的第二混淆表示(X1,Y1),其中以下关系成立:其中⊕是运算符,A0、B0、A1和B1是线性运算符,并且将(u,v)映射到(A0(u)⊕B0(v),A1(u)⊕B1(v))的运算符E关于u可逆,并且σ0和σ1是向混淆表示提供冗余的状态变量;以及确定构件(102),其配置成通过在第一数据值w0的混淆表示(X0,Y0)和第二数据值w1的混淆表示(X1,Y1)上执行以下运算来确定第三数据值w2的混淆表示(X2,Y2):X2=X0⊕X1Y2=Y0⊕Y1,其中w2=w0⊗w1,其中⊗为运算符。

【技术特征摘要】
【国外来华专利技术】2013.12.20 EP 13198943.61.一种用于使用数据的混淆表示在数据之上执行运算的系统,包括:获取构件,其配置成获取第一数据值w0的第一混淆表示(X0,Y0)并且获取第二数据值w1的第二混淆表示(X1,Y1),其中以下关系成立:其中⊕是运算符,A0、B0、A1和B1是线性运算符,并且将(u,v)映射到(A0(u)⊕B0(v),A1(u)⊕B1(v))的运算符E关于u可逆,并且σ0和σ1是向混淆表示提供冗余的状态变量;以及确定构件(102),其配置成通过在第一数据值w0的混淆表示(X0,Y0)和第二数据值w1的混淆表示(X1,Y1)上执行以下运算来确定第三数据值w2的混淆表示(X2,Y2):X2=X0⊕X1Y2=Y0⊕Y1,其中w2=w0⊗w1,其中⊗为运算符。2.权利要求1所述的系统,进一步包括混淆构件(101),其配置成生成基于第一数据值w0的第一混淆表示(X0,Y0)和基于第二数据值w1的第二混淆表示(X1,Y1)。3.权利要求1或2所述的系统,进一步包括:去混淆构件(103),其配置成对第三数据值w2的混淆表示(X2,Y2)去混淆,以便使用以下方程组获取第三数据值w2:其中σ2是用于向第三数据值w2的混淆表示(X2,Y2)提供冗余的状态变量。4.权利要求2所述的系统,还包括状态生成器以用于随机地或伪随机地生成状态变量σ0的值和/或状态变量σ1的值,并且其中混淆构件(101)配置成基于第一数据值w0和状态变量σ0来生成第一混淆表示(X0,Y0)并且基于第二数据值w1和状态变量σ1来生成第二混淆表示(X1,Y1)。5.权利要求2或3所述的系统,其中混淆构件(101)被配置成在查找表中查找第一混淆表示(X0,Y0)和第二混淆表示(X1,Y1),并且/或者去混淆构件(103)被配置成在查找表中查找第三数据值w2。6.权利要求3所述的系统,其中混...

【专利技术属性】
技术研发人员:PMHMA戈里斯森LMGM托胡伊泽恩
申请(专利权)人:皇家飞利浦有限公司
类型:发明
国别省市:荷兰;NL

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1