当前位置: 首页 > 专利查询>SAP欧洲公司专利>正文

加密的内存列存储制造技术

技术编号:11529377 阅读:98 留言:0更新日期:2015-05-31 18:07
实施例涉及处理加密的数据,并且具体地,涉及识别对处理查询有用的适当的层加密。这样的识别(也称为洋葱选择问题)利用可调整的洋葱加密过程来实现。基于定义的策略配置、替代解决和冲突解决的要求,可调整的洋葱加密程序需要将包括数据库语言(例如SQL)形式的表达式的查询,翻译为对加密的数据的等效查询。洋葱可以以几乎任意的指导洋葱选择的方式来配置。执行功能引入了执行拆分以允许本地(例如,客户端一侧)查询实践(fulfillment),否则该查询可能无法以安全的方式在服务器一侧实践。也可以采用可搜索的加密功能,并且实施例经由同态加密包含聚合。实施例可以被实施为内存列存储数据库系统。

【技术实现步骤摘要】
加密的内存列存储
本专利技术涉及加密,并且具体地,涉及对加密数据的查询处理。
技术介绍
除非这里另外指示,在这一节中描述的方法不是本申请中权利要求书的现有技术并且不认为因为包括在本节中而成为现有技术。安全性可能对云(cloud)中的数据处理的广泛采用造成障碍。具体地说,违法的黑客或外国政府组织可能尝试访问存储在云中的数据。数据的加密可以提供对这个问题的解决方案。然而,这样的加密还可以干扰这样的加密数据的使用,例如,利用云中的加密数据的计算。因此,当前研究的主题调查了对于保持在加密形式中的数据的处理。在云上提供软件的一种方式是数据库即服务(Database-as-a-Service,DaaS)。在这样的产品中,服务提供者供应了数据库存储和查询能力(例如,通过SQL接口),然后对用户的存储和计算进行收费。如果查询处理仅限于客户端一侧,并且只有存储在云中执行,则这样的DaaS方案价值不高。相反,允许对于保持加密的数据执行查询的DaaS方案,通过准许云上的数据处理将提供更高的价值。因此,存在对于允许对加密的数据的查询处理的系统和方法。
技术实现思路
实施例涉及对加密数据的处理,并且具体地,涉及识别对处理查询有用的适当的加密层。这样的识别(也称为洋葱选择(onionselection)问题)利用可调整的洋葱加密过程(onionencryptionprocedure)来实现。基于定义的策略配置、替代解决和冲突解决的要求,可调整的洋葱加密过程需要将包括数据库语言(例如SQL)形式的表达式的查询,翻译为对加密数据的等效查询。洋葱可以以几乎任意的指导(directing)洋葱选择的方式来配置。执行功能(executionfunction)引入了执行拆分(executionsplit)以允许本地(例如,客户端一侧)查询实践(fulfillment),否则该查询可能无法以安全的方式在服务器一侧实践。也可以采用可搜索的加密功能,并且实施例经由同态加密(homomorphicencryption)包含聚合。实施例可以被实施为内存列存储(in-memorycolumnstore)数据库系统。根据实施例的计算机实施的方法包括:提供包括加密的明文的数据库,使得引擎接收包括数据库查询的第一输入,该数据库查询包括表达式,并且使得引擎接收包括根据第一加密方案加密的明文的第二输入。使得引擎接收包括根据第二加密方案加密的明文的第三输入。使得引擎根据算法处理表达式、第一加密方案和第二加密方案,以便选择在其上执行数据库查询的加密的层。非瞬时计算机可读存储介质的实施例包括用于执行方法的计算机程序。该方法包括提供包括加密的明文的数据库,使得引擎接收包括数据库查询的第一输入,该数据库查询包括表达式,并且使得引擎接收包括根据第一加密方案加密的明文的第二输入。使得引擎接收包括根据第二加密方案加密的明文的第三输入,并且使得引擎根据算法处理表达式、第一加密方案和第二加密方案,以便选择在其上执行数据库查询的加密的层。计算机系统的实施例包括:一个或多个处理器和软件程序,该软件程序能够在所述计算机系统上执行并且被配置为提供包括加密的明文的数据库。该软件被配置为使得引擎接收包括数据库查询的第一输入,该数据库查询包括表达式,并且被配置为使得引擎接收包括根据第一加密方案加密的明文的第二输入。该软件还被配置为使得引擎接收包括根据第二加密方案加密的明文的第三输入,并且使得引擎根据算法处理表达式、第一加密方案和第二加密方案,以便选择在其上执行所述数据库查询的加密的层。根据某些实施例,该算法包括:构建在数据库查询中使用的列的图,并且对于每个图节点(graphnode),选择能够满足数据库查询的最大的加密的层。该算法还包括:选择每个被连接的分量(component)必需的最小的加密的层,选择对于数据库操作最高效的剩余的加密,并且从叶到根扫描数据库查询的算子树(operatortree)。其中,数据库可以在服务器上,并且当遇到冲突时,在客户端上执行算子树的上部(upperpart)。在实施例中,引擎处理表达式以进一步输出加密的数据库查询以便在加密的层上执行,并且该方法还包括在加密的层上执行加密的数据库查询以产生加密的查询结果。在各种实施例中,表达式包括聚合,并且所选择的加密层包括同态的加密。根据一些实施例,表达式包括范围限定(bound),并且所选择的加密层包括保序加密(orderpreservingencryption)。在特定实施例中,表达式包括搜索函数(function),并且所选择的加密层包括可搜索的加密。在某些实施例中,所选择的加密层的明文通过保序加密初始加密。以下详细描述和附图提供了对各种实施例的本质和优点的更好的理解。附图说明图1示出了根据实施例的系统的简化视图。图2是示出根据实施例的过程的步骤的简化流程图。图3A至图3F是示出在一个特定内存数据库系统的上下文中执行的实施例的示例的简化视图。图4是示出根据实施例的一个特定的洋葱选择算法的步骤的简化流程图。图5示出了根据实施例的被配置为实施加密的数据的处理的专用计算机器的硬件。图6示出了计算机系统的示例。具体实施方式这里描述的是用于提供加密的数据的查询的技术。在以下描述中,为了说明的目的,阐述了多个示例和具体细节,以便提供本专利技术的全面理解。然而,很显然,对于本领域技术人员,如权利要求书中所限定的,单独或与下面描述的其他特征组合,可以包括这些示例中的一些或全部的特征,并且还可以包括这里描述的特征和概念的修改和等效物。先前,密文已经用来允许对加密数据的查询的处理。关系数据库算子已经被修改来允许对这样的加密的数据的处理。分箱(bining)作为处理范围查询的方法被引入。在分箱中,数值被放入更大的箱中(largerbin),并且使用等式匹配(equalitymatching)来查询范围的所有箱。在所选择的箱中、但是没有在范围内的数值使用客户端后处理(postprocessing)来进行过滤。分箱允许使用在明文数据库中使用的相同的关系算子来实施范围查询。分箱方法随后通过保序加密进行改进。那个技术在密文中保留了明文的次序。使用保序加密进行加密的数据库已经能够执行大多数查询(除了聚合以外),而无需修改数据库算子。随机次序保留函数代表了用于查询加密的数据的方法的演进中的下一步。这种随机次序保留函数将较小的域(domain)映射到较大的域,同时保留输入的次序。然而,这样的随机次序保留函数可能不期望地允许明文比特的上半部的一大部分被泄露给被动的观察者(passiveobserver)。保序加密的理想安全性,除了次序以外不准许泄露任何东西。因此,期望安全性的保序加密用明文的次序替换明文。这样的保序加密是明文的较小的域到密文的较大的域的映射。然而,挑战是容纳在选择加密时未预见到的将来的明文。为了达成这一点,提出了计算密文的交互式协议。这样的方法允许只在特定查询需要时披露保序密文。具体地说,更安全的加密方案的洋葱层被包围在保序密文周围。这些洋葱层只有在要求次序比较的范围查询被处理时才被去除。使用这种方法,大多数查询能够被处理而无需凭借保序加密。如这里所描述的,实施例涉及加密的数据的可调整的洋葱处理,并且具体地,涉及识别用于处理查询的适当的加密本文档来自技高网...

【技术保护点】
一种计算机实施的方法,包括:提供包括加密的明文的数据库;使得引擎接收包括数据库查询的第一输入,该数据库查询包括表达式;使得所述引擎接收包括根据第一加密方案加密的明文的第二输入;使得所述引擎接收包括根据第二加密方案加密的明文的第三输入;以及使得所述引擎根据算法处理所述表达式、第一加密方案和第二加密方案,以便选择在其上执行所述数据库查询的加密层。

【技术特征摘要】
2013.11.22 US 14/088,0511.一种用于对加密数据的查询处理的计算机实施的方法,包括:提供包括加密的明文的数据库;使得引擎接收包括数据库查询的第一输入,该数据库查询包括表达式;使得所述引擎接收包括根据第一加密方案加密的明文的第二输入;使得所述引擎接收包括根据第二加密方案加密的明文的第三输入;以及使得所述引擎根据算法处理所述表达式、第一加密方案和第二加密方案,以便选择在其上执行所述数据库查询的加密层,其中所述算法包括:构建在所述数据库查询中使用的列的图;对于每个图节点,选择能够满足所述数据库查询的最大的加密层;选择每个被连接的分量所必需的最小的加密层;选择对于数据库操作最有效率的剩余的加密;以及从叶到根扫描所述数据库查询的算子树,其中,所述数据库在服务器上,并且当遇到冲突时,在客户端上执行从遇到冲突的算子起的所述算子树的上部。2.如权利要求1所述的计算机实施的方法,其中:所述引擎处理所述表达式以进一步输出将在加密层上执行的、加密的数据库查询;以及该方法还包括在加密层上执行加密的数据库查询以产生加密的查询结果。3.如权利要求1所述的计算机实施的方法,其中,所述表达式包括聚合,并且所选择的加密层包括同态加密。4.如权利要求1所述的计算机实施的方法,其中,所述表达式包括范围限定,并且所选择的加密层包括保序加密。5.如权利要求1所述的计算机实施的方法,其中,所述表达式包括搜索函数,并且所选择的加密层包括可搜索的加密。6.如权利要求1所述的计算机实施的方法,其中,所选择的加密层的明文通过保序加密进行初始加密。7.一种包括用于执行用于对加密数据的查询处理的方法的计算机程序的非瞬时计算机可读存储介质,该方法包括:提供包括加密的明文的数据库;使得引擎接收包括数据库查询的第一输入,该数据库查询包括表达式;使得所述引擎接收包括根据第一加密方案加密的明文的第二输入;使得所述引擎接收包括根据第二加密方案加密的明文的第三输入;以及使得所述引擎根据算法处理所述表达式、第一加密方案和第二加密方案,以便选择在其上执行所述数据库查询的加密层,其中所述算法包括:构建在所述数据库查询中使用的列的图;对于每个图节点,选择能够满足所述数据库查询的最大的加密层;选择每个被连接的分量所必需的最小的加密层;选择对于数据库操作最有效率的剩余的加密;以及从叶到根扫描所...

【专利技术属性】
技术研发人员:F克施鲍姆M黑特里奇M科勒A沙德I汉格A施罗普弗W泰泽特P格罗菲格
申请(专利权)人:SAP欧洲公司
类型:发明
国别省市:德国;DE

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

1