计算设备和方法技术

技术编号:18610014 阅读:35 留言:0更新日期:2018-08-04 22:56
一种计算设备(100),其被布置为对环(R)的元素执行计算,在所述环上定义的环加法和环乘法。计算设备包括运算符模块(120)和计算管理器(130),所述运算符模块(120)包括多个运算符单元,所述计算管理器(130)被布置为通过应用多个运算符单元的序列来执行环乘法,并且通过应用多个运算符单元的序列来执行环加法,其中,用于所述环乘法的序列与用于所述环加法的序列相同。

【技术实现步骤摘要】
【国外来华专利技术】计算设备和方法
本专利技术涉及计算设备、计算系统、计算方法、计算机程序和计算机可读介质。
技术介绍
在计算机中,计算是针对各种任务来执行的。由于计算机是有限的,这些计算在有限的环中发生。这种环的通用范例是以数为模的算术,具体地是以2的幂为模。然而,存在用于各种其他应用的许多其他的环。例如,在一些密码算法中使用多项式环。在某些应用程序中,希望对攻击者隐藏有关程序的执行的信息。在所谓的白框攻击模型中,攻击者被假定已经对正在运行的计算机程序进行了详细的访问。即使在这种模型中,也希望尽可能地对攻击者隐藏。具体地,使用密码对攻击者隐藏信息的敏感应用程序(诸如银行应用程序、内容保护等)在白框模型中可能是易受攻击的。如果攻击者要读取比如用于加密信息的密钥,则攻击者可以能够自己解密所述信息,从而获得财务数据、普通内容等。除了保护信息之外,更普遍的是,还希望保护计算本身免受攻击者的侵害。如果攻击者确切地知道某些算法在哪里执行,他可以能够将他的攻击集中在程序中的恰当点上;他可以能够对秘密算法(比如专有加密或解密算法)进行逆向工程。使用目前的白框技术难以保护总体的计算流程。例如,Chow等人的文章“White-BoxCryptographyandanAESImplementation”示出了一种具体的算法(AES)如何在白框模型中可以得到保护。这项技术不可以直接用于保护总体的计算机程序,即,并非没有对程序进行广泛的人为分析。例如,比如在Chow中描述的类型的表格或表格网络的加法或乘法运算的直接转化将仍然允许攻击者简单地通过观察访问哪个表格网络来推断何时执行加法或乘法。专利技术内容有一种具有改进的环算术的计算设备将是有利的。提供一种计算设备,其被布置为对环的元素执行计算,在环上定义的环加法和环乘法。计算设备包括运算元存储器,其被布置为存储经编码环元素,经编码环元素表示以经编码形式的环的元素,运算符模块,其包括多个运算符单元,所述运算符单元中的至少一个是二元的,二元运算符单元被布置为接收经编码环元素和参数,并且对所述经编码环元素和参数执行固定的计算,从而产生新的经编码环元素,以及计算管理器,其被布置为接收第一经编码环元素和第二经编码环元素,通过使用至少根据第二经编码环元素获得的参数将多个运算符单元的序列应用于第一经编码环元素来执行环乘法,并且通过使用至少根据第二经编码环元素获得的参数将多个运算符单元的序列应用于第一经编码环元素来执行环加法,其中,用于环乘法的序列与用于环加法的序列相同。观察运算符模块的攻击者可以获得关于哪个运算符被执行的信息。由于用于环加法的运算符的序列与环乘法的序列相同,因此攻击者不能从运算符的序列推导出执行的是乘法的还是加法。攻击者因此被迫攻击底层的参数计算,然而这种参数计算要复杂得多而且难以分析。在实施例中,使用白框密码学将运算符单元实施为表格或表格网络。在这种实施方式中,表格访问通常是能够清楚看见的。如果攻击者知道具体的表格代表加法,并且另一些代表乘法,他甚至可以在不知道精确的输入和输出的情况下就能够推导计算。然而,如果相同的运算符的序列可以给出加法或乘法,攻击者不能仅根据观察表格访问而算出正在执行的算法。在实施例中,运算符单元中的一个或多个是一元的。一元表格比较小,因此减小了计算设备的尺寸。在实施例中,仅使用一元和二元运算符,而不是三元或更高。用于向上和向下的运算符指示上方为二元,因为它们都接收参数和经编码环元素。然而,在实施例中,所允许的参数的数量小于经编码环元素的数量。在实施例中,计算设备包括组合单元,组合单元被布置为选择运算符单元的两个连续运算,将所选择的运算组合成单个新的运算单元,并且相应地组合对应的参数。通过组合运算符,即使攻击者将参数考虑在内,他从观察表格获得甚至更少的知识,因为表格对应于多个运算。除了减少运算符的数量外,还可以通过插入多个运算符来增加运算符的数量,对于这些运算符的组合不影响最终结果。本专利技术的另一方面是一种计算系统,包括:根据前述权利要求中任一项所述的计算设备,以及与计算管理器分离的参数单元,其被布置为计算至少根据第二经编码环元素获得的参数,以通过计算管理器执行环乘法和环加法。参数的计算和运算符的执行可以在系统中分开。这允许两部分并行运行,并且也可以受到并行保护。计算设备是电子设备,例如机顶盒、计算机等,具体地其可以是移动电子设备,例如移动电话。根据本专利技术的方法可以作为计算机实施的方法、或者以专用硬件、或者以二者的组合在计算机上实施。用于根据本专利技术的方法的可执行代码可以被存储在计算机程序产品上。计算机程序产品的范例包括存储设备、光学存储器设备、集成电路、服务器、在线软件等。优选地,计算机程序产品包括被存储在计算机可读介质上的非暂态程序代码,以当在计算机上执行所述程序产品时执行根据本专利技术的方法。在优选实施例中,计算机程序包括计算机程序代码,其适于当在计算机上运行计算机程序时,执行根据本专利技术的方法的所有步骤。优选地,计算机程序体现在计算机可读介质上。本专利技术的另一方面提供一种使计算机程序可用于下载的方法。当计算机程序上传到例如Apple'sAppStore、Google'sPlayStore或Microsoft'sWindowsStore时,并且当计算机程序可用于从这样的商店下载时使用该方面。附图说明将参考附图仅通过范例的方式来描述本专利技术的进一步的细节、方面和实施例。图中的元件为了简单和清楚被示出并且不一定按比例绘制。在附图中,对应于已经描述的元件的元件可以具有相同的附图标记。在附图中,图1a示意性地示出了计算设备100的实施例的范例,图1b示意性地示出了计算设备101的实施例的范例,图2a示意性地示出了经编码环元素的实施例的范例,图2b示意性地示出了运算符模块的实施例的范例,图3是示意性地示出在环中进行计算的方法的流程图,图4a示意性地示出了根据实施例的具有包括计算机程序的可写部分的计算机可读介质,图4b示意性地示出了根据实施例的处理器系统的表示。图1a-2b中的附图标记列表:100、101计算设备110运算元存储器112、114、116经编码环元素120运算符模块122二元运算符单元123一元运算符单元130计算管理器132序列140参数单元150运算符参考流151、152运算符参考160参数流161、162参数212经编码环元素213、215环元素220运算符模块222、Δ二元向上运算符单元224、二元向下运算符单元226、□一元框运算符单元具体实施方式尽管本专利技术容许许多不同形式的实施例,在附图中示出并将在本文中详细描述一个或多个具体实施例,但是应当理解的是,本公开应被视为本专利技术原理的范例,并非旨在将本专利技术限制于所示出和描述的具体实施例。在下文中,为了理解,实施例的元素在运算中进行描述。然而,显而易见的是,各个元素被布置为执行当它们被执行时所描述的功能。此外,本专利技术不限于这些实施例,并且本专利技术在于上面描述的或在相互不同的从属权利要求中记载的每个新颖性特征或特征的组合。图1a示意性地示出了计算设备100的实施例的范例。计算设备100被布置为对有限环R的元素执行计算。环是具有有限元素组的数学结构,环加法和环乘法针对所述有限的元素组来定义。加法表示为+,乘法表示为·,或本文档来自技高网...

【技术保护点】
1.一种计算设备(100),其被布置为对环(R)的元素执行计算,在所述环上定义环加法和环乘法,所述计算设备包括:运算元存储器(110),其被布置为存储经编码环元素(112、114、116;212),经编码环元素表示经编码形式的所述环的元素,运算符模块(120;220),其包括多个运算符单元,所述运算符单元中的至少一个是二元的,二元运算符单元(122;222、224),其被布置为:接收经编码环元素和参数,并且对所述经编码环元素和所述参数执行固定计算,从而产生新的经编码环元素,以及计算管理器(130),其被布置为:接收第一经编码环元素和第二经编码环元素,通过使用至少根据所述第二经编码环元素获得的参数将所述多个运算符单元的序列应用于所述第一经编码环元素来执行环乘法,并且通过使用至少根据所述第二经编码环元素获得的参数将所述多个运算符单元的序列应用于所述第一经编码环元素来执行环加法,其中,用于所述环乘法的序列与用于所述环加法的序列相同。

【技术特征摘要】
【国外来华专利技术】2015.12.14 NL 20159551.一种计算设备(100),其被布置为对环(R)的元素执行计算,在所述环上定义环加法和环乘法,所述计算设备包括:运算元存储器(110),其被布置为存储经编码环元素(112、114、116;212),经编码环元素表示经编码形式的所述环的元素,运算符模块(120;220),其包括多个运算符单元,所述运算符单元中的至少一个是二元的,二元运算符单元(122;222、224),其被布置为:接收经编码环元素和参数,并且对所述经编码环元素和所述参数执行固定计算,从而产生新的经编码环元素,以及计算管理器(130),其被布置为:接收第一经编码环元素和第二经编码环元素,通过使用至少根据所述第二经编码环元素获得的参数将所述多个运算符单元的序列应用于所述第一经编码环元素来执行环乘法,并且通过使用至少根据所述第二经编码环元素获得的参数将所述多个运算符单元的序列应用于所述第一经编码环元素来执行环加法,其中,用于所述环乘法的序列与用于所述环加法的序列相同。2.如权利要求1所述的计算设备,其中,所述运算符单元中的至少一个是一元的,一元运算符单元被布置为:接收经编码环元素,并且对所述经编码环元素执行固定计算,从而产生新的经编码环元素。3.如前述权利要求中的任一项所述的计算设备,其中,经编码环元素(212)(x)被编码为所述环的多个环元素(213、215;(a,b))的列表。4.如权利要求3所述的计算设备,其中,所述列表包括两个环元素(213、215),所述经编码环元素是所述两个单元环元素之间的差(x=a-b)。5.如权利要求4所述的计算设备,其中,所述两个环元素被表示为指数((α,β)),所述两个环元素是以所述环的共同底元素(u)为底以所述指数为幂的所述指数。6.如前述权利要求中的任一项所述的计算设备,其中,所述计算管理器被布置为通过使用至少根据所述第二经编码环元素获得的参数将所述多个运算符单元的序列应用于所述第一经编码环元素来执行环减法,其中,用于所述环减法的序列与用于所述环加法的序列和用于所述环乘法的序列相同。7.如前述权利要求中的任一项所述的计算设备,其中,所述多个运算符单元包括二元向上运算符单元(Δ、222),所述向上运算符单元被布置为:接收针对第一环元素(a)和第二环元素(b)的表示,所述经编码环元素(x)是所述第一环元素与所述第二环元素之间的差(x=a-b),并且接收参数环元素(c),并且计算所述第一环元素环乘以所述参数的逆(ac-1)并计算所述第二环元素环乘以所述参数的所述逆(bc-1),所述新的经编码环元素(y)由两个所述计算的结果(y=ac-1-bc-1)表示,和/或所述多个运算符单元包括二元向下运算符单元(224),所述向下运算符单元被布置为接收针对第一环元素(a)和第二环元素(b)的表示,所述经编码环元素(x)是所述第一环元素与所述第二环元素之间的差(x=a-b),并且接收参数环元素(c),并且计算所述第一环元素环乘以所述参数(ac)并计算所述第二环元素环乘以所述参数(bc),所述新的经编码环元素(y)由两个所述计算的结果(y=ac-bc)表示。8.如前述权利要求中的任一项所述的计算设备,其中,所述多个运算符单元包括一元框运算符单元(□、226),所述框运算符单元被布置为接收针对第一环元素(a)和第二环元素(b)的表示,...

【专利技术属性】
技术研发人员:H·J·J·H·施珀斯M·H·M·A·戈里森L·马林
申请(专利权)人:皇家飞利浦有限公司
类型:发明
国别省市:荷兰,NL

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

1