专利名称:用于可信计算和数据服务的可信的可扩展标记语言的制作方法
技术领域:
本文涉及向设备提供可信计算和数据服务,如网络服务或云服务,并且更具体地涉及启用可扩展标记语言(XML)的安全的、可选择性访问的以及私有的存储的数据或网络服务。
背景技术:
以关于一些常规系统的背景技术为例,计算设备在传统上是在设备本地执行应用和数据服务的。在这种情况下,当数据被访问、处理、存储、高速缓存等等时,这些数据可以
通过本地总线、接口和其他数据路径在设备上行进,然而,设备的用户不必担心用户数据的干扰或暴露,除非设备本身丢失、失窃或以其他方式被损害。能够存储数万亿字节数据(以及将来潜在的千万亿字节、百万万亿字节数据)的网络存储场的演变创造了模拟如下应用的机会该应用在历史上是对本地数据进行操作,却改为对存储在云中的数据进行操作,其中主设备和外部存储是分开的。应用或系统(或任何)数据的云存储允许许多设备存储它们的数据而不需要用于每个设备的分开的专用存储。迄今为止,随着在线和云服务的演进,应用和服务正越来越多地迁移到代表(诸)设备来执行给定服务中的ー些或全部的第三方网络提供者。在这种情况下,当用户的数据被上传到服务时、当该数据被该服务存储或处理时、或者当该数据被从该服务检索时,设备的用户可能关心谁能够访问该数据,或者可能更坏地,谁能够干扰该数据。简言之,当用户的设备的数据离开物理占有的领域并进入物理上远离用户的网络环境时,关于第三方对数据的疏忽的或恶意的处理或者对数据的干扰的担忧出现了。因此,増加对云服务和对结合云服务来对数据进行的处理的信任、安全和隐私是合乎需要的。即使在企业内部,数据存储也可能出现类似的担忧,例如,当数据离开生成该数据的一个控制区(例如,第一部门)并进入另一区域(例如,第二部门)以进行存储吋。然而,如同上面提到的,依然存在以下问题云服务或网络存储提供者均不能够有效地缓解数据(当存储在云中吋)的安全性、隐私性以及完整性的问题和对它们的需要。简言之,用户需要在如下方面有更高的信任当交出对存储媒介的物理控制时,他们的数据仍然是安全而私密的,并且这种障碍已显著防止了企业和消费者经由第三方网络服务和解决方案来采用重要数据的备份。当今的设备和被提供给设备的数据服务的上述缺点仅仅g在提供对常规系统的一些问题的总览,并且不g在是穷尽性的。在仔细阅读了以下详细描述后,现有技术的其他问题和各非限制性性实施例的对应好处可变得显而易见。概述此处提供了简化的概述以帮助能够对以下更详细的描述和附图中的示例性、非限制性实施例中的ー个或多个的各方面有基本或大体的理解。然而,本概述并不g在是详尽的或穷尽的。相反,本概述的唯一目的在于,以简化的形式提出与一些示例性、非限制性实施例相关的ー些概念,作为以下各实施例的更详细的描述的序言。网络或云数据服务(包括用于数据的数学变换技术,诸如可捜索加密、解除组装/重新组装或分发技术)被以如下方式提供该方式跨多个实体分发信任以避免单点数据损害,并且将数据保护要求从可在其中存储、处理、访问或检索该数据的容器分离。在ー个实施例中,数学变换谓词生成器(例如,密钥生成器)、数学变换提供者(例如,密码技术提供者)以及云服务提供者每个均作为分开的实体提供,从而允许数据发布者的可信平台机密地(经隐藏的,例如,经加密的)将数据提供给云服务提供者,并且允许经授权的订阅者基于订阅者能力对所述经隐藏的(例如,经加密的)数据的选择性访问。
使用可信平台的技木,将数据(以及相关联的元数据)从保持该数据的容器(例如,文件系统、数据库等)解耦,从而通过施加用所呈现的能力刺穿的数学复杂度保护罩来允 许该数据担当它自己的保管者,作为非限制性示例,所呈现的能力诸如是由信任平台的密钥生成器所授予的密钥。以在不需要特定容器就能实施的情况下保留并扩展信任的方式,促进对数据或该数据的子集的共享或访问。被应用到数据的数学复杂度(诸如可捜索加密技木)保护该数据,而不考虑其中记录该特定比特的容器或硬件,即,该数据是被无容器地(containerlessly)(即,不考虑该容器地)保护的,并且因此不会受到以损害容器安全性为基础的攻击。在特定的“保险箱”被破解的情况下,内容仍然被保护。在一个非限制性实施例中,可扩展标记语言(XML)数据是担当其自己的保管者的数据。使用XML数据,可使用描述信息扩充或添加标签,该描述信息选择性地允许或阻止对底层数据的访问,从而允许该XML数据或XML数据片段(如由被应用到该XML数据或片段的信任信封中的标签信息所封装的)担当其自己的保管者。例如,XML数据或标签能够表示可捜索元数据,该可捜索元数据编码了认证信息、授权信息、模式信息、历史信息、追踪信息、一致性信息等中的任何ー个或多个。注意,基于XML的实施例中的任ー个也可适用于ー些替换格式,诸如但不限于,JavaScript对象记法(JSON)、S表达式、电子数据交换(EDI)等,并且因此在这些实施例中,XML仅用作说明性目的。用于任何类型的净荷(诸如但不限于数据库字段、XML片段或完整记录)的“可信信封”因此通过放置在该信封上的各种装饰或信封来提供带帘(curtained)访问,所述装饰或信封允许范围为各种保证(诸如但不限于,机密性、隐私性、匿名性、篡改检测、完整性等)的全范围信任。例如,可以应用或扩充XML标签来为结构化XML数据——用于联网环境中的数据交换的常见格式——创建信任信封,从而在可信云服务环境中启用无容器XML数据。可被应用以促进建立对数据的安全性和隐私性的高信任水平的密码技术或“装饰”的一些其他示例包括但不限于,保留大小的加密、可捜索加密、或应用证明、盲指纹、可恢复性证明等。以下更详细地描述其他实施例和各非限制性性示例、场景和实现。附图简述參考附图进ー步描述各非限制性实施例,在附图中图I是用于提供安全的、私密的、以及可选择性访问的网络数据服务的一个或多个实施例的总体环境的框图;图2是示出“作为它自己的保管者的数据”的ー个或多个方面的框图;图3是用于提供安全的、私密的、以及可选择性访问的网络数据服务的一个或多个实施例的总体环境的框图;图4是用于管理容器的过程的流程图,其中数据担当它自己的保管者;图5是示出担当它自己的保管者的数据的ー个或多个方面的另ー个框图;图6是示出担当它自己的保管者的数据的各方面的另ー个框图,其示出了数据能够超越传统容器安全模型;图7示出存储管理层,该存储管理层执行诸如来自不同类型的多个数据容器的数据的自动粉碎、高速缓存、复制、重构等功能;图8是示出安全覆盖网络的框图,该安全覆盖网络在跨各种数据容器的存储数据的地方向数据添加密码访问包装器;
·
图10是可与传统应用以及FTO知晓应用结合使用的示例体系结构模型;图11是示出密码包装器或信封在数据和/或描述该数据或该数据的特征的元数据上的一般使用的框图;图12是ー特定示例,进ー步突出了图11中概括呈现的概念;图13是另ー示例,示出了围绕被保护数据的联合信任覆盖;图14是示出其中使用信任覆盖将记录以及索引加密并上传到云的ー实施例的框图;图15-16示出客户端能够如何在经加密的数据上利用联合信任覆盖体系结构来生成、上传和/或搜索经加密的索引以获得更丰富的云存储体验;图17-18是示出该系统的一些附加非限制性信任保证的框图;图19是示出XML上下文中的可信覆盖的ー实施例的图;图20-23是示出各实施例中的用于可信XML的示例性过程的流程图;图24是ー实施例中的示出用于处理数据以形成可信XML的示例性、非限制性方法的流程图;图25是根据一实施例的可信云服务框架或生态系统的框图;图26是示出根据可信云服务生态系统的用于发布数据的示例性、非限制性方法的流程图;图27是示出根据可信云服务生态系统的用于订阅数据的示例性、非限制性方法的流程图;图28示出一示例性生态系统,该生态系统示出了密钥生成中心(CKG)、密码技术提供者(CTP)和云服务提供者(CSP)在可信生态系统中的分离;图29是示出了用于为企业执行云服务的可信生态系统的其他益处的另一体系结构图;图30是示出了通过存储抽象层来适应于不同存储提供者的另ー框图;图31示出结合存储抽象服务的存储的其他方面;图32是示出可信生态系统中的各不同參与者的另ー框图;图33是可信云计算系统的示例性非限制性实现的一些层的代表性视图,在该计算系统中,不同构件可以由不同或相同实体来提供;图34是ー示例性非限制性过程的流程图,该过程用于以利用后期绑定向发布者提供对数据的受控选择性访问的方式来向数字保险箱应用发布文档;图35是用于订阅置于数字保险箱中的材料的示例性、非限制性过程的流程图;图36示出使用数字托管模式来通过ー个或多个数据中心为企业实现安全外联网的可信云服务的示例性、非限制性的实现;图37是示出基于可信云服务生态系统的另一示例性非限制性场景的流程图,在该生态系统中,赋予订阅者对由CSP存储的经加密数据的选择性访问权;图38是示出可基于登录信息对订阅者定制应用响应的另一流程图;图39是示出安全记录上传场景的另一流程图,该场景可以针对单方或多方来实
现;图40是示出由可信云服务生态系统启用的、对经可捜索地加密的数据存储进行基于角色的查询的示例性、非限制性实现的又一流程图;图41是示出多方协作场景的流程图,在该场景中,企业向外部企业提供对其经加密数据中的ー些的访问权;图42是示出多个企业间的多方自动搜索场景的流程图;图43示出可以针对可信云服务实现的示例性、非限制性的边缘计算网络(ECN)技术;图44是示出根据可信云服务生态系统的密钥生成中心的ー个或多个可任选方面的框图;图45是包括经可搜索地加密的数据的可信存储的示例性、非限制性实施例的框图;图46是示出用于订阅的示例性、非限制性过程的流程图,该过程包括确认步骤;图47示出示例性、非限制性确认质询/响应协议,验证方按照该协议向证明方发出密码质询。图48是包括经可搜索地加密的数据的可信存储的另ー示例性、非限制性实施例的框图;图49是示出用于订阅的示例性、非限制性过程的流程图,该过程包括确认步骤;图50示出另ー示例性、非限制性验证质询/响应协议,验证方按照该协议向证明方发出密码质询;图51是用于提供服务的ー个或多个实施例(包括盲指纹化)的一般环境的框图;图52是示出非限制性场景的框图,在该场景中,多个独立的联合信任覆盖或者数字托管可以并排存在,或者针对分层方式彼此相叠地存在;图53是可信存储的另ー示例性、非限制性实施例的框图,该可信存储包括用于针对非授权访问来模糊化数据的数据分发技术;图54是表示其中可实现在此处所述的各个实施例的示例性、非限制性联网环境的框图;以及图55是表示其中可实现此处所述的各个实施例的ー个或多个方面的示例性、非限制性计算系统或操作环境的框图。详细描述概览
如在背景技术中所讨论的那样,发送给网络服务的数据可能造成隐私性方面的不适、篡改的可能性等等,例如,当数据被从用户的设备传输给网络应用、服务或数据存储吋,用户期望对没有恶意第三方能造成损害的充分保证。按照定义,用户已失去对数据的控制。因此,所需要的是增加信任,使得数据的发布者和/或所有者愿意交出对其数据的物理控制,同时相信在网络中,除了当被该发布者或该所有者或如基于请求者身份所验证的被授予了特权的任何人访问时之外,其数据都将保持隐私性和不受损。就此,依然存在以下问题云服务或网络存储提供者均不能够有效地缓解数据(当存储在云中吋)的安全性、隐私性以及完整性的问题和对它们的需要。简言之,用户关心在如下方面有更高的信任当交出对存储媒介的物理控制时,他们的数据仍然是安全而私密的,并且这种障碍已显著防止了企业和消费者经由第三方网络服务和解决方案来采用重要数据的备份。本文中所使用的术语“网络存储提供者”包括但不限于内容递送(或分发)网络(⑶N)、混合场景(例如,跨企业存储、云存储和/或⑶N)、和/或更宽泛的联合场景(例如,横跨多个企业、多个云、或多个⑶N)、或前述的任何组合。传统上,为了保持数据安全,将数据锁藏或保持其隐秘,例如,在物理介质上。就此,数据所有者知道,保险箱的保管者必须是完全可信方,或对保险箱的内容没有访问权。就此,尽管云服务的前提是客户不必需要确切地知晓他们的数据物理上位于何处,但也不能完全忽略这个问题。这是因为,对谁(什么设备)能够访问该数据、谁看见该数据、谁维护该数据以及如何存储该数据负起全部的责任是ー项挑战。相应地,在现实中,由于固有的不信任和各种其他顾虑,客户非常关心控制云链条中的各种计算和存储设备的第三方是谁。通过消除由人类或外部实体控制的主动保管权(其具有可能与数据所有者或发布者不一致的固有偏向),本文的各实施例提供了一种系统,其中数据被数学变换(例如,被选择性地加密或可捜索地加密)而使得该数据充当它自己的保管者,而不管保持该数据的第三方机器、机制、设备、或容器如何。就此,联合信任覆盖的各种实现启用无容器数据以及对安全性、机密性、防篡改性等的保证,其中使这些保证对该用户是透明的。因此,在各实施例中,可信云平台被用作可变换框架来由发布者数学地模糊化数据而使得订阅者能够选择性地访问该订阅者被授权的片段。就此,该平台通过同时保护数据且允许授权订阅者的访问,同时保留完整性和安全性,来实现充当其自己的保管者的数据。充当其自己的保管者的数据可以用带可插入服务的联合信任覆盖来实现,如在各实施例中及下面的各具体小节中所描述的。通过不止实现数学模糊化(例如,加密),各实施例向用户和托管代理数据提供如下保证无论数据被存储在何处以及如何存储,该数据均保留由数据发布者或持有者所适当限定的机密性和完整性要求。就此,通过提供密码安全信任信封,焦点从对数据的边界、管道和容器进行保护切换或扩充到了对数据和相关联的元数据进行保护,其中该密码安全信封在被出示适当能力(例如,密钥)时允许对该数据/元数据或特定子集的访问。在一个实施例中,提供一种用于主存数据的方法,该方法包括,由处于第一控制区域中的计算设备从处于第二控制区域中的计算设备接收经模糊化的数据,该经模糊化的数据是从第二控制区域中的计算设备的所定义的数据集的数据的数学变换形成的。该方法还、包括由第一控制区域中的计算设备接收经模糊化的元数据,该经模糊化的元数据是从对数据的分析以及对该分析的输出的至少ー个其他数学变换而形成的。接着,确定ー组容器中的哪ー个或多个容器具有用于存储所述经模糊化的数据和/或所述经模糊化的元数据的至少两种不同的容器类型。在系统的ー种非限制性实现中,ー个或多个数学变换组件至少部分地由独立于生成器而实现的数学变换算法提供者来分发,该生成器生成用于以下中的至少ー个的数学变换谓词信息(例如,密钥信息)发布数据和元数据、或者订阅数据和元数据。该ー个或多个数学变换组件基于由该生成器所生成的数学变换谓词信息来执行至少ー个可捜索数据模糊化算法(例如,可捜索加密)或可捜索数据掲示(例如,可捜索解密)算法。独立于该生成器和该ー个或多个数学变换组件来实现的网络服务提供者实现与由该ー个或多个数学变换组件模糊化的数据或元数据有关的网络服务,并且该网络服务提供者包括数据容器管理组件,该数据容器管理组件基于该网络服务的数据等待时间要求、数据可靠性要求、距数据 消费的距离要求、或数据规模要求中的至少ー个来对由该至少ー个数学变换组件模糊化的数据或元数据被存储在何处进行管理。在需要时,或在预期需要时,作为保管者的数据按照精细的或指定的粒度等级来提供对数据的访问权,而不需要对给定数据集的全部的权利。云存储提供者处的操作员エ也不能在不被检测到的情况下查看、修改、篡改或删除数据,除非这种查看、修改、篡改或删除是根据被授予该操作员エ的能力而明确授权的,诸如服务器日志的维护、或对元数据的某些其他受限操作来规划存储能力等等。此外,无容器数据启用促进防篡改的抢先复制(proactive replication),而防篡改是传统系统无法充分解决的要求。在一个实施例中,联合信任覆盖是用以下组件中的ー个或多个来实现的云数据服务(⑶S)或云存储提供者、密码技术提供者(CTP)、以及密钥生成中心(CKG)。⑶S可由任何存储提供者提供,即,无容器数据不需要特定的容器。CTP也可由任一方提供,只要该方与CDS在分开的控制区域中操作,无论是基于用于实现CTP的开放规范还是该CTP的专有实现。分离密钥生成功能以及使数学原理(诸如加密原理)经受公共检查鼓舞了如下信心CTP的方法没有偏向,并且可由企业或单个用户实现,或外包到具有CTP专家的第三方。而且,专有版本、用于公司的开放版本、用于政府或主权区的开放或封闭版本、基准开源版本、或其他类别均可以被创建以供给定实体预封装使用或实现。CKG实体根据由CTP指定的技术来生成密钥信息,并且还作为该联合信任覆盖的分开的组件而被提供(然而,取决于FTO的给定实现想要的信任水平,CKG也可与其他组件相组合)。在各实施例中,尽管CKG可以是集中式实体,然而,本文所使用的“中心”是ー种逻辑基准,而不是集中式实体的指示,因此,该CKG也可以是分布式的和联合式的。CKG可服务单个实体或多个合作者,例如,配药企业之间的多合作者协作以根据来自所达成一致的CKG的密钥交換来共享和访问信息。因此,使用FT0,通过将能力分开,維持了信任和机密性,从而防止了在无明确授权的情况下对所存储的信息、日志或访问模式的洞察,而且还允许篡改检测和完整性,例如验证。例如,服务提供者不能在不被检测的情况下修改或删除数据。带不可抵赖的审计能力使得客户能够舒服地对数据放手并且确保没有人意外地或有意地干扰该数据。日志也具有与数据和元数据相同的保证。結果“确认”是可包括在FTO实现中的另ー个特征,且在下面更详细地进行了描述。确认确保了云不能扣留向它索要的数据,例如,在被索要三个文档时不能递送两个文档。通过考虑CKG和执行对数据的确认的任何服务的分离实现,以及通过将数据与基于被授予应用服务提供者的能力而接收、更改、检索、更改、扩充或删除该数据或元数据的该应用服务提供者分离,可使分离的概念再进ー步。这还具有根据当时的访问特征、经更新的安全模型、经更新的角色、一天中的时间等来维护应用能力的附加益处。将上述特征(诸如在下面更详细地在各实施例中描述的)中的全部甚至ー些进行组合增强了缓解对数据的云存储的顾虑的可能性。在企业层面,企业能够以粒度的方式来拥有策略并控制实施,即使数据和应用被主存在云中。该系统可与企业安全基础结构,诸如身份元系统(例如,声明(Claims)、身份生存期管理、活动目录等),相结合。企业可按需而被暴露给或多或少的FTO实现。如本文所述的数据服务的供应涉及允许具有成本效益并且安全和私有的解决方案的存储和密码技术的各种组合和置換。例如,下面更详细地描述的各可任选实施例实现
了包括保留大小的加密、可搜索加密和/或被称为应用证明(Proof of Application)的密码技术(參见一般技木)的数据保护技木。这样的实施例启用了针对外包的云数据保护、灾难恢复或分析的新商业场景。如在背景技术中讨论的,传统系统均未以满足丧失客户的隐私性或安全性需要的方式实现云或网络数据服务。就此,为了消除围绕网络服务的常规供应的信任屏障,提供了实现上面标识出的目标以及在下面描述的各个实施例中强调的其他优点的可信云计算和数据服务生态系统或框架。术语“云”服务一般所指的概念是,服务不是从用户设备的本地执行,而是从可通过ー个或多个网络被访问的远程设备来递送。由于用户的设备不需要理解在ー个或多个远程设备处所发生的事情的细节,因此从用户的设备的角度来看,服务是从“云”递送的。在一个实施例中,一种系统包括密钥生成器,该密钥生成器生成用于发布或订阅数据的密钥信息。独立于密钥生成器来实现的密码技术提供者基于该密钥生成器所生成的密钥信息来实现可捜索加密/解密算法。另外,独立于密钥生成器和密码技术提供者来实现的网络服务提供者提供与由密码技术提供者加密的数据有关的网络服务。在一个实施例中,提供了暴露可选择性地访问的(例如可搜索的)经加密数据的数据存储,其中至少ー个发布者向该数据存储发布表示资源的数据。在提供对滥用信任的可能性的划分的情况下,第一独立实体执行密码密钥信息的生成。第二独立实体进而在存储所发布的数据之前基于由第一独立实体生成的密码密钥信息来对所发布的数据进行加密。然后,一组网络或云服务针对向该网络服务的请求基于由资源的发布者或所有者所赋予的后期绑定的所选特权来选择性地访问经加密数据。在其他实施例中,数据存储存储可选择性访问的经加密数据,其中订阅者订阅该经加密数据的指定子集。第一独立实体基干与订阅者相关联的身份信息来生成密码密钥信息,并且第二独立实体基于由第一独立实体生成的密码密钥信息来执行该指定子集的解密。网络服务对订阅者的请求进行响应,并且基于由所指定子集的发布者或所有者所赋予的后期绑定的所选特权来提供对经加密数据的选择性访问。就此而言,术语“发布者”和“订阅者” 一般分别指发布或订阅可信云服务的数据的任何人。然而在实际中,取决于行业、领域、或可信云服务生态系统的应用和数字托管模式,发布者和订阅者将担任更具体的角色。例如,在整个系统的数据的上下文中,通常仅有一小组订阅者将具有访问该数据的特权。例如,在数据的上下文中,经加密的数据存储的审计者基于该审计者对该数据的角色而具有某些能力,以确保满足某些要求,诸如备份频率,而不被授权对该内容本身的访问。在一个非限制性实施例中,用于主存数据的方法包括由处于第一控制区域中的第一计算设备从处于第二控制区域中的第二计算设备接收经加密的数据,该经加密的数据是基于密码密钥信息根据可搜索加密算法对该第二计算设备的所定义的数据集的数据进行加密而形成的;由该第一计算设备接收经加密的元数据,该经加密的元数据是对该数据进行分析并基于该密码密钥信息对该分析的输出进行加密而形成的;以及从用于存储该经加密的数据或该经加密的元数据的至少两个不同的容器类型的各容器中自动地确定容器。接收陷门数据,该陷门数据启用如该陷门数据的至少ー个密码陷门所定义的、对该经加密的数据或元数据的可见访问。如果满足该多个容器的预定义条件,则其中存储经加密的数据或元数据的容器可被自动切換或改变。例如,如果某些数据或元数据变成对客户有高优先级,则可将它从较慢的、较长期的存储移动到具有低访问等待时间的敏捷容器。或者,可能因为其他效率原因而移动、复制或删除数据或元数据,例如,基干与经加密的数据或元数据相关联的存储大小、·基于为经加密的数据或元数据指定的访问速度要求、基于为经加密的数据或元数据指定的恢复可靠性要求、基干与具有对经加密的数据或元数据的访问权的一个或多个设备的邻近性等。在另ー非限制性实施例中,一种系统包括至少部分由密码技术提供者分发的、独立于密钥生成器而实现的密码组件,该密码生成器生成用于发布数据和元数据或订阅数据和元数据的密钥信息,该密码组件基于由该密钥生成器生成的密钥信息来可捜索地加密数据和元数据或可捜索地解密数据和元数据。该系统还可包括网络服务提供者,该网络服务提供者是独立于该密钥生成器和该密码组件而实现的,该网络服务提供者提供与由该密码组件加密的数据和元数据有关的网络服务,该网络服务提供者包括数据容器管理组件,该数据容器管理组件基于数据等待时间要求、数据可靠性要求、距数据消费的距离要求、或该网络服务的数据规模要求来对由该密码组件加密的数据或元数据被存储在何处进行管理。该密钥信息可包括能力信息,该能力信息定义关于由该密码组件加密的数据或元数据的访问特权。该能力信息可被后绑定以使得最新的数据访问特权被授予给定订阅者。在另ー非限制性实施例中,ー种计算系统包括存储可选择性地访问的加密数据或元数据的数据存储,其中发布者向该数据存储发布表示资源的数据或元数据,第一独立实体生成密码密钥信息,以及第二独立实体在存储到该数据存储中之前基于由该第一独立实体生成的密码密钥信息来加密所发布的数据或元数据。该系统提供网络服务,该网络服务基于由资源的发布者或所有者所赋予的后期绑定的所选特权来针对向该网络服务的请求来启用对该经加密的数据或元数据的选择性访问。就此,该系统对容器类型是不可知的,并且因此该数据存储包括不同容器类型的容器并且该数据存储基于由该容器所表示的当前存储资源的分析来将可选择性地访问的经加密的数据或元数据的存储自动分发给各个容器。在一个实施例中,该“数据”是包括XML净荷数据(例如,文本串“ MichaelJackson”和应用到该净荷的XML标签信息(例如〈/Name〉(名字))的XML数据。可以用与该XML数据的可捜索加密和选择性解密相关的附加元数据来扩充XML标签信息。就此,用这种方式应用XML标签为结构化的XML数据创建了 “信任信封”,以利用密码密钥生成实体(CKG)和密码技术提供实体(CTP)的联合来提供各种信任保证,如机密性、隐私性、匿名性、篡改检測、以及完整性。如上所述,本文关于XML数据或元数据的实施例中的任ー个也可应用于其他格式,诸如但不限于,JSON、S-表达式、EDI等,并且因此XML在当前描述的实施例中仅用于说明用途。如果XML数据是较大文档的一片,则它还可编码用于定位其他相关片段的清单信息。因为跨不同容器来分散的方式,即,ー个或多个中间层处理该特定容器的存储细节,所以各实现是技术无关的(可以使用任何CKG/CTP)。此外,不同于信任包装器,各实现还是开放式的,因为除了可捜索加密和确认或验证之外还可应用任何数量的包装器,并且新的包装器技术变得可适用。还可将帮助调制一致性、轨迹等的标签添加到预先存在的数据和元数据顶上(或通过扩充该元数据)。
如果该数据/信息是XML格式的,则可将这些技术或包装器中的任何一个应用到结构化的XML数据,从而可选择性地查询该数据以获得对各XML片段的访问。目前,XML具有标准格式,即〈标签“值”〉(〈tag “value”〉)或〈标签“值” |XML结束标签〉(〈tag “value” XML end_tag>)。有利地,使用结构化的XML文档,存在分层地表示该结构的方式以便存在将指向对数字托管模式唯一的CKG/CTP ‘帧’的外部包装器。因此,当存在对嵌入的片段进行访问的需要或期望时,可利用具有该<CKG>和<CTP>包装器的现有信任或者可以用新的CKG/CTP帧来建立新的信任集合。这可通过标准公钥基础结构PKI来提供,然而所选择的特定模式要被认为不是对本文所述的技术的限制。就此,无论选择什么特定的加密技术集合,本文描述的各实施例均使得用户能够捜索、提取和解密经加密的数据或元数据的各片段、子集或部分。另外,可执行数据拥有机制(代表一设备来运行的可信第三方)的公共证明来验证所访问的特定XML片段自从被初始创作以来未被篡改。本质上,通过各种“装饰”来提供XML片段或完整记录(例如,“净荷”)的“可信信封”,其中该装饰允许该信任来运行全范围信任保证,诸如但不限于机密性、隐私性、匿名性、以及完整性。作为可作为可信信封的一部分来表示在XML标签信息中的信息的类型的ー个示例,XML文档的各片段可被指定为各个敏感度级别。例如,可存在具有公共(Public)、秘密(Secret)、以及绝密(Top Secret)段落的文档。执行搜索且使用“秘密”许可来请求访问的人将只获得对公共和秘密段落的访问权。段落的分类也可被用来确定加密机制、密钥、以及访问策略。例如,可实现不能从无线或远程设备访问绝密内容的策略。类似地,这样的分类可被用来创建关于可以如何存储数据、可以将数据存储在何处、可以将数据存储多久等的策略。例如,可以创建要求必须每天一次地使用AES 256加密来将(敏感)医学数据备份到可信数据中心中的安全服务器中的策略。在一实施例中,一种用于主存可扩展标记语言(XML)数据的方法包括第一控制区域中的第一计算设备从第二控制区域中的第二计算设备接收经加密的XML数据,该经加密的XML数据包括经加密的XML净荷数据和经加密的XML标签。该经加密的XML数据是基于密码密钥信息根据可搜索加密算法对该第二计算设备的所定义的XML数据集的加密而形成的。对数据的请求包括基于对用于访问该经加密的XML净荷数据或该经加密的XML标签中的至少ー些的特权进行定义的密码密钥信息的能力以及启用如该能力所限定的、对该经加密的XML数据的选择性访问。尽管在XML数据的加密的上下文中描述了ー些实施例,但可以使用对XML数据的任何数学变换或模糊化。例如,在一个实施例中,根据跨不同的存储位置来分发XML数据的基本上不可猜测的数据分发算法来分发该XML数据。维护一映射,其中如果授权了对该映射的访问,则该映射允许重构作出请求的实体对其拥有特权的数据的各相关部分。就此,本文在加密上下文中描述的各实施例因而可被一般化成以隐藏数据而无访问特权的方式对该数据进行模糊化或以其他方式进行编码的任何算法或数学变换。所述能力可包括陷门数据,所述陷门数据包括用于选择性地访问该经加密的XML净荷数据或经加密的XML标签的密码陷门。该经加密的数据包括辅助的经加密的元数据,该辅助的经加密的元数据是从对该经加密的XML净荷数据或经加密的XML标签的分析而形成的。例如,可逐片段地向该XML文档的每个净荷元素应用公共、秘密或绝密的机密等级标记,并且可将该机密等级标记包括在该辅助的经加密的元数据中以实现与对该XML文档的各部分的访问权有关的高度粒度化的策略。在另ー个实施例中,用于订阅经可搜索地加密的XML数据的方法包括从密钥生成组件接收密码密钥信息,该密码生成组件基干与该订阅者设备相关联的身份信息来生成该密码密钥信息;通过该订阅者设备请求经可搜索地加密的XML数据和对应的XML标签数据的子集,包括将该密码密钥信息传送到该经可捜索地加密的XML数据和对应的标签数据的存储提供者;以及如由在该密码密钥信息中所限定的能力所允许的,解密经加密的XML数据和对应的XML标签数据的子集。对于该经加密的XML数据的每个XML片段,可解密表示该对应的经加密的XML数据的机密等级的XML标签数据并且可确定所述能力是否允许对具有该机密等级的数据的访问。这包括具有开放访问特权的公共机密等级,或如根据策略来限定的较不开放的秘密机密等级。该方法可包括确认经加密的XML数据和对应的XML标签数据的正确子集由符合该请求的订阅者设备接收。确认的示例包括执行数据拥有证明以证明该订阅者设备接收了正确的子集。该方法还可包括验证经加密的XML数据和对应的XML标签数据的子集的内容在接收到所述经加密的XML数据和对应的XML标签数据的子集之前未被删除或修改。验证的示例包括执行可恢复性证明以证明不存在对该内容的干预。除了其他可任选的特征之外,在请求访问经加密的XML数据或密钥信息时可应用与订阅者设备相关联的匿名化凭证。在另ー实施例中,一种用于发布可扩展标记语言(XML)数据的方法可包括基于从分开的密钥生成器接收的密码密钥信息根据可搜索加密算法来加密XML数据以形成包括经加密的XML标签信息的经加密的XML数据,其中所述密钥生成器生成所述密码密钥信息;以及将经加密的XML数据传送到网络服务提供者以供存储该经加密的数据,其中该经加密的数据是可根据基于作出请求的设备的身份信息而授予给该作出请求的设备的所选择的特权的后期绑定来可选择性地访问的。所述加密可包括从在分开的控制区域中执行的密钥生成器接收密码密钥信息,所述密钥生成器基于执行XML数据的加密的发布设备的身、份来生成所述密码密钥信息。在另ー实施例中,一种用于订阅可扩展标记语言(XML)数据的方法包括响应于订阅者设备对包括经加密的XML标签的经可搜索地加密的XML数据的子集的请求,从密钥生成组件接收密码密钥信息并且根据该密码密钥信息中定义的、授予订阅者设备的特权来解密经加密的XML数据的该子集,其中所述密钥生成组件基干与所述订阅者设备相关联的身份信息来生成所述密码密钥信息。各技术可包括订阅者设备请求关于经加密的XML数据的子集的各数据项的、接收到正确数据项的证明,这可包括接收以下信息该信息向订阅者设备证明该订阅者设备所请求的经加密的XML数据的子集中的数据项是正确的。各技术可包括订阅者设备请求在所述请求之前所述经加密的XML数据的子集没有被干预过的证明,这可包括订阅者设备接收以下信息该信息向该订阅者设备证明在所述请求之前经加密的XML数据的该子集没有被干预过。 在又一实施例中,一种系统包括存储可选择性地访问的经加密的XML净荷数据和与所述经加密的XML净荷数据相对应的相应的经加密的XML标签数据的数据存储,其中订阅者请求订阅所述经加密的XML净荷数据或所述经加密的XML标签数据的子集,第一独立实体基干与订阅者相关联的身份信息来生成密码密钥数据,而第二独立实体基于由该第一独立实体生成的密码密钥信息来执行所述子集的解密。该系统还包括用于处理订阅者的请求的网络服务,其提供对经加密的XML净荷数据或经加密的XML标签数据的所述子集的选择性访问。该系统可被配置成确认经加密的XML净荷数据或经加密的XML标签数据的所述子集是与所述订阅相一致的正确子集和/或验证经加密的XML净荷或经加密的XML标签数据的所述子集在对经加密的XML净荷或经加密的XML标签数据的所述子集的选择性访问之前没有在未经授权的情况下被更改或删除。在另ー实施例中,一种系统包括至少部分由密码密钥技术提供者分发的、独立于密钥生成器来实现的密码组件以及独立于所述密钥生成器和所述密码组件来实现的网络服务提供者,所述密钥生成器生成用于发布XML数据或对应的标签数据或订阅XML数据或对应的标签数据的密钥信息,所述密码组件包括被配置成基于由所述密钥生成器生成的密钥信息来执行可捜索加密/解密算法的处理器,所述网络服务提供者包括被配置成实现与由所述密码组件加密的XML数据或对应的标签数据有关的网络服务。该密钥信息包括“后期绑定”能力信息,借助该能力信息向XML数据或对应的标签数据的给定订阅者授予最新的访问特权。下面提供这些和其他各示例性、非限制性实施例和场景的进ー步细节。用于可信计算和数据服务的无容器数据如在背景技术中提到的,在由服务组织拥有的远程站点处维护敏感企业数据可能使该数据处于从隐私侵犯到数据丢失的危险中。如针对本文的各实施例所描述的,网络或云数据服务(包括用于数据的可捜索加密技术)被以如下方式提供该方式跨多个实体来分发信任以避免单点数据损害,并且将数据保护要求从可存储、处理、访问或检索该数据的容器分离。在一个实施例中,密钥生成器、密码技术提供者以及云服务提供者各自均作为分开的实体来提供,从而启用供数据发布者向云服务提供者机密地(经加密的)发布数据的可信平台,并且启用经授权的订阅者基于订阅者能力对该经加密的数据的选择性访问。
使用可信平台的技木,将数据(以及相关联的元数据)从保持该数据的容器(例如,文件系统、数据库等)分离,从而通过施加用所呈现的能力刺穿的数学复杂度保护罩来使该数据能够担当它自己的保管者,所呈现的能力诸如是由如在各实施例中描述的信任平台的密码密钥生成器所授予的密钥。以在不需要特定容器就能实施的情况下保留并扩展信任的方式,促进对数据或该数据的子集的共享或访问。被应用到数据的数学复杂度(诸如可捜索加密技术)保护该数据,而不管其中记录该特定比特的容器或硬件,即,该数据是被无容器地(containerlessly)(即,不管该容器地)保护的,并且因此不会受到以损害容器安全性为基础的攻击。在该特定“保险箱”被破解的情况下,内容仍然被保护。图I是用于提供如本文所述的安全的、私密的、以及可选择性访问的网络数据服务的ー个或多个实施例的总体环境的框图。出于说明性的目的,示出了多个企业100、102,但这些技术也适用于单个企业或许多协作企业。在各实施例中,使用如在下面详细描述的联合信任覆盖130,可基于FTO基础结构130来共享企业100的策略110以及企业102的策略112的实施120来用于协作工作。实施120还可由每个企业100、102分开应用。就此,
因为策略和实施完全在企业100、102的领域内(如基于信任覆盖130),所以从客户立场来看,实际数据在云140中的位置以及使用什么特定容器142变得无关紧要,除了与客户实际关心的以下事项以外等待时间、可靠性、服务质量保证、备份、检索时间、大小保证等。因此,意识到通过信任覆盖130使数据从保存数据的容器中释放出来,在各实施例中,数据存储管理层150基于对存储资源的实时可用性以及它们各自特征的分析来自动地处理客户所关心的事项,以优化适合客户需求和期望的容器中的数据存储。存储管理层150是虚线的,从而指示它的位置也不是关键的。存储管理层150通常不具有访问、查看或改变存储在ー个或多个数据存储142中的数据的密码特权,然而展示元数据中的某些(诸如文件大小或文件类型)可能是合乎需要的,以促进对客户将想要在未来如何使用该数据的理解,以使得存储管理层150可做出智能的存储选择。例如,如果给予了存储管理层150对该数据的足够查看而能理解该数据是视频,则存储管理层150可将该视频保存在满足流媒体的要求的媒体存储中。图2是示出大体的“作为其自己的保管者的数据”概念的框图。使用在用户或企业控制下的策略和实施,数据和对应的日志被加密并且仅能用被授予用户的具体能力来访问,如在下面更详细地描述的。例如,通常,诸如云服务提供者的操作员エ等不具有能力的某人不能在不被检测的情况下查看、修改、篡改、或删除,因为他们没有数据特权。使用作为其自己的保管者的数据,策略由数据的所有者/发布者来设置,访问由该数据自己来实施/保证(无论该数据被存储于何处),从而使容器选择变得多余。信任保证由该数据实施,但是由该所有者/发布者通过描述订阅者/客户能够对该数据做什么来控制。如图所示,在一非限制性实施例中,企业220 “拥有”与用户226以及他们对企业220的系统资源的使用有关的并与外部用户230 (例如,移动工作者)有关的策略224和策略224的实施222。使用作为其自己的保管者的数据,通过将数据存储在云200中,可将实际的数据和/或日志205与策略224和实施222分开,然而,云200的操作员エ210不能在不被检测的情况下查看、修改、篡改或删除该数据和/或日志205。图3是用于提供如本文所述的安全的、私密的、以及可选择性访问的网络数据服务的ー个或多个实施例的总体环境的框图。一般而言,示出了使用联合信任覆盖来分发信任的非限制性示例,计算设备300 (例如,客户)处于第一控制区域310中,计算设备320 (例如,云服务提供者)处于第二控制区域330中,计算设备360处于第三控制区域390中,密码技术提供者380是在第四控制区域395中提供的,而密钥生成器382可在第五控制区域397中提供。计算设备300、320、360中的每ー个可分别包括处理器P3、P2、P3并分别包括存储M3、M2、M3。就此,如根据各非限制性实施例所描述的,提供了用于启用云中的经加密的数据340的技木,以使得可基于访问特权从该云选择性地检索项350或项中的一部分。就此,可提供ー组分析服务370作为待存储的经加密的数据345、347顶部上的层,该层基于来自设备300的本地数据集305自动地确定要在何处最优地存储在云中维护的经加密的数据340和经加密的数据342。就此,服务370确保当计算设备300基于CTP 380/CKG 382联合信任覆盖来检索该数据时,检索到的数据352或检索到的数据350是从给定请求的最优容器中检索的,或者如果是次优的话,则自动切换所述容器。例如,如果来自计算设备360的当前容器对于客户的需求而言性能不好,或者如果客户的需求改变,则分析存储服务370可将该数据实时地移动或复制到另一存储容器并无缝地将服务切換到更合适的容器,例如,以满足服务质量要求。图4是用于管理容器的过程的流程图,其中如本文所述,数据充当它自己的保管者。在400,第一控制区域中的第一计算设备从第二控制区域中的第二计算设备接收经加密·的数据。该经加密的数据是基于密码密钥信息根据可搜索加密算法从第二计算设备的所定义的数据集的数据的加密而形成的。在410,还接收经加密的元数据,该经加密的元数据是从对该数据的分析以及基于该密码密钥信息对该分析的输出进行加密而形成的。在420,确定哪ー(些)容器要存储经加密的数据或经加密的元数据的至少ー些。在430,如果满足了预定义的条件,则可以自动地改变其中存储该经加密的数据的容器。图5是示出充当它自己的保管者的数据的ー个或多个方面的另ー框图。就此,容器是冗余的以用于安全,访问由密码包装器来实施,而策略由所有者/发布者设置并由密码包装器来保证。如下面在各实施例中描述的,取决于ー情形的特定安全需要,包装器可包括各种密码技木。例如,如图所示,策略是在企业级设置的,并且然后用户寻求对数据的访问权,该数据是由允许或拒绝进入的密码访问控制来包装的。取决于在企业设置的策略,诸如企业审计者、安全员エ、操作员エ等其他用户可以具有或不具有由该包装器定义的访问特权。如在图5的示例中所示,企业520具有能够服从企业访问策略530的企业员エ522,并且这些企业员エ522中的一些能设置企业访问策略530。企业访问策略530可影响能够如何对存储在云容器500的数据容器510中的数据512进行访问、操纵、检索、搜索等。因此,当数据512的用户508尝试访问这种数据512吋,由企业访问策略530指导但又与企业访问策略530分开的各密码访问控制514保护数据512免受用户508的不当访问。数据容器510的密码访问控制514可反映不同的企业访问策略530以应用于不同的访问实体或任务,诸如由安全员エ504或云操作员エ506执行的企业审计502,以确保可见性被限于应当允许访问的那些人。数据容器510可位于任何地方,并使其冗余以用于安全,并且访问由密码访问控制514来实施。就此,企业访问策略530可由企业所有者设置并由如由密码访问控制514所实现的密码包装器来保证。图6是示出充当它自己的保管者的数据的另ー框图,其示出了数据能够超越传统容器安全模型。就此,如本文所认识到的,数据不仅可以位于任何地方,而且能以对给定情形最优的方式来将数据拼接或划分为跨越多个容器。放置可优化访问、恢复性等,并且存储管理层可处理一致性、版本化、垃圾收集等。如在图6中所示,企业620定义其适用于企业员エ622的企业访问策略630,而数据612被远程存储并由适用于希望访问数据612的用户610的密码访问控制614来保护。该系统和用户610对存储数据612的容器是被存储在云600中、存储在企业602处的某处、还是经由覆盖网络604来存储、或其组合是不可知的,且数据可跨越容器。图7示出存储管理层,该存储管理层执行诸如来自不同类型的多个数据容器的数据的自动粉碎、高速缓存、复制、重构等功能。可基于包括显式策略和访问模式的准则来执行这些过程。如图所示,从用户的观点看,包括数据702和密码访问控制704的数据容器700被存储在用于存储所有数据的抽象存储层710处,然而在现实中,受密码访问控制704保护的数据702可跨云数据服务720、文件系统722、企业数据库724、覆盖网络726等中的任一个或多个而被基于准则来粉碎、高速缓存、复制和重构,所述准则可包括策略和访问模式。图8更一般地示出使数据能够充当其自己的保管者的安全性、隐私性、可靠性等的枢轴点是安全覆盖网络,该安全覆盖网络向数据添加密码访问包装器,无论该数据跨各数据容器存储在何处。具体而言,覆盖网络810可以是中间存储介质,用于将由密码访问控制804保护的数据802的容器800进ー步存储在云数据服务820、文件系统822或企业数据库824中的任ー个或多个中。因此在其最終目的地方面,存储可以是分层的。图9是示出传统应用的框图,且其对世界(例如,数据库文件)的基于容器的视图不需要改变。相反,为了在联合信任覆盖存储场景中使用,可提供适配器,该适配器基干与应用和传统容器需求来执行密码协商、密码变换和高速缓存、版本化、租赁等。更具体而言,传统应用900可按照一直以来的方式与云数据服务910、文件系统912以及企业数据库914进行交互,然而,此时抽象存储层920仍然能够使无容器数据在幕后发生。抽象存储层920可展示适配器,所述适配器基于应用和传统容器特征来实现密码协商、密码变换、以及高速缓存、版本化、租赁等,并且然后引导容器化的数据940成为无容器数据,例如经由结合图8描述的安全覆盖网络930。图10是可与传统应用以及FTO知晓应用结合使用的示例体系结构模型。就此,启用FTO的应用1005可直接插入FTO 1000中并且有利地利用数据的安全且私密的存储、处理等。对于SDS知晓应用1015,可提供层1010,该层1010添加数据的密码粉碎和散布。对于一致性知晓应用1025,可使用现有的、未修改的覆盖网络并将其桥接到如由层1020所示的系统。例如,可经由层1020将Live Mesh、Fabric/CAS桥接到DaaS和XStore。最后,如结合图9描述的,可提供适配器1030,所述适配器1040基于传统应用1040和传统容器1035特征来执行密码协商、密码变换和高速缓存、版本化、租赁等。这些层和应用可利用基于联合信任覆盖的云存储所提供的益处。图11是示出密码包装器或信封在数据和/或描述该数据或该数据的特征的元数据上的一般使用的框图。作为示例,可按照可在数学上选择性地访问的方式共同地或分开地加密记录1102 (例如,数据净荷)和相关联的元数据和/或标签1100以产生经加密的元数据和标签1110和经加密的记录1112。使用这样的经加密的数据/元数据,可基于数学上、选择性的可访问性来执行各种操作1120,例如,数据或元数据的搜索、对数据或元数据的逻辑运算、查询、备份操作、数据的审计等。除了加密元数据1100和记录1102之外,还可根据任何所需目标1114将可任选的附加数据添加到加密封装,或可将可任选的附加标签1116作为加密过程的一部分添加到内容,例如,允许或禁止对例如某类用户的访问的公共或秘密标签。使用这种附加数据1114或标签1116,可执行附加操作1130,诸如完整性检查、篡改检查、可用性检查等。图12是示出净荷1202和标签1200的特定示例,净荷1210和标签1212被加密以形成经加密的标签1210和经加密的数据1212以用于操作1220。此外,如上所述,可使用数据1214来扩充该数据并且可使用标签1216扩充该标签,所述数据1214和标签1216可便 于附加的ー组操作1230。在图12的示例上构造的图13是示出周围联合信任覆盖的示例。就此,可基于服从对稳健性的公共检查的开放方法来实现没有后门的CTP 1300。基于CTP 1300,可产生CKG1350以处理对用于执行操作1330 (例如,捜索、逻辑运算或查询、备份、审计、篡改检查、完整性检查、可用性检查等)的能力(例如,密钥1340)的请求。因此,云数据服务提供者1320提供服务,例如,经加密的元数据1310和经加密的数据1312的存储。在一个可任选的实施例中,该云按照对数据或访问模式无所知的方式来主存该数据。图14是示出其中使用信任覆盖将记录以及索引加密并上传到云的实施例的框图。就此,将记录和索引可捜索地加密以使索引可作为对相关联的数据的第一可见层而被选择性地访问。然后,基于对索引的捜索,可标识匹配一个或多个给定索引的各内容或记录,并然后该用户能够或不能基于特权来访问该匹配内容和记录,从而充当对数据的第二保护层——第一层是针对搜索或其他操作而对索引的访问,而第二层是对数据的访问。就此,可对该数据和相关联的元数据的不同部分应用任何数量的分层密码包装器。如图所示,客户1400可具有各个记录1402,在1430可从记录1402生成经加密的索引1404。在1440将记录1402和经加密的索引1404上传到云1410并作为记录1412和经加密的索引1412存储在云1410中。为了检索记录1412,例如,基于经加密的索引1414,在1450处,客户1400从云1410接收用至少ー个签名1422来签署的记录1420,并且在1460处可检查所述至少ー个签名1422。图15示出客户端能够如何利用联合信任覆盖体系结构来生成并上传经加密的索引到经加密的数据上以获得更丰富的云存储体验。该联合信任覆盖体系结构涉及将权カ分开以生成可信密码生态系统,并且在下面更详细地进行了描述。FTO 1585是ー个生态系统,该生态系统通过将相对于云或其他存储中的无容器数据进行的各段数学变换分开而使客户1575受益,并且如本文别处所述,该生态系统包括云数据服务(⑶S) 1580、密码技术提供者(CTP) 1570和密钥生成中心1590。作为示例,客户1575可具有各关键词1510与其相关联的文档1500。从CKG 1590检索用于加密的公共參数1565,而从CTP 1570检索用于执行数学变换的技术。为了执行上传,文档1500被加密1520并上传1530到云中的经加密的文档存储1550中。输入用于上传的位置1535和密钥1525连同关键词1510,以生成与文档1500的经加密的上传相关联的经加密的索引1540,并在1545处将在1540处生成的经加密的索引上传到经加密的索引存储1555。图15示出了经加密的索引数据的上传,图16示出了将索引解密以搜索特定内容,该搜索是基于该联合信任覆盖所提供的能力而被授权的,并且然后使用对搜索结果的可见性,该用户可被授予解密与该捜索有关的实际文档的能力或特权。就此,可通过该FTO基于策略和实施来分开控制对该索引的访问和对文档的访问。如上所述,FTO 1685是一个生态系统,该生态系统通过将相对于云或其他存储中的无容器数据进行的各段数学变换分开而使客户1675受益,并且如本文别处所述,该生态系统包括云数据服务(⑶S) 1680、密码技术提供者(CTP) 1670和密钥生成中心1690。在本示例中,客户1675形成查询1600,并随后在1605处从CKG 1690获取陷门1610,该陷门与查询1600 —起被呈现给该云。在云中,在1620处,基于从CTP 1670检索到的技术1615来搜索经加密的索引存储1625中的经加密的索引。随后,结果1635被仍旧加密地返回并在1640处被解密,从该结果提取位置1642和密钥1644。这向该系统给出了在1645处从经加密的文档存储1630检索经加密的文档1650的信息,在1655处可基于密钥1644将其解密以返回一个或多个文档1660,例如,来自图15的文档1500。
图17-18是示出该系统的一些附加非限制性信任保证的框图。就此,可以使用证明用户所接收的是正确的的任何算法作为附加层来在数学上向该用户证明该云没有提供无用数据。例如,一种技术被称为数据拥有技术(PDP),其中相对于经加密的数据来应用各标签,其可与确认数据的正确性来结合使用。可应用(并加密)类似信息以证明当数据被存储在云中时该数据没有被不适当地更改或删除。使用密码技木,这种证明通常采用密码质询和响应的形式。在图17中,PDP标签和经加密的记录、索引、元数据等一起被在云中编码并加密,而在图18中,基于与该FTO的、对该数据的完整性保持不变的密码咨询来执行验证操作。參考图17,如上所述,FTO 1785是一个生态系统,该生态系统通过将相对于云或其他存储中的无容器数据进行的各段数学变换分开而使客户1775受益,并且如本文别处所述,该生态系统包括云数据服务(⑶S) 1780、密码技术提供者(CTP) 1770和密钥生成中心1790。在该示例中,发布者1700通过在1720处基于从CKG 1790检索到的秘密1730和从CTP 1770检索到的技术1740以对记录和索引进行编码来加密该记录和索引1710。可将经加密或编码的记录和索引1750存储在云中。可将数据拥有证明(PDP)标签1760与在1720处的编码结合使用,数据拥有证明(PDP)标签1760稍后当数据被存储在云中时帮助确保该数据的某些方面,如本文别处更详细地描述的。如上所述,在图18中,基于与该FTO的、对该数据的完整性保持不变的密码咨询来执行验证操作。就此,FTO 1885是一个生态系统,该生态系统通过将相对于云或其他存储中的无容器数据进行的各段数学变换分开而使客户1875受益,并且如本文别处所述,该生态系统包括云数据服务(⑶S)1880、密码技术提供者(CTP)1870和密钥生成中心1890。PDP标签1840可供系统的审计者1800用以检查存储在云中的数据的完整性。基于随机数1805,并且基于从CKG 1890检索到的秘密1825和从CTP 1870检索到的技术,审计者1800向云中的证明者1820发出质询1810。证明者1820也结合实现该证明算法来使用技术1845。就此,证明者1820接收经加密的记录和索引1830以及PDP标签作为输入并向审计者1800返回信息,该信息在1850被验证。基于在1860处该验证操作是成功还是失败,通知审计者1800是否维持了经加密的记录和索引1830的完整性。如下面更详细地描述的,可将能够为服务用户提供对隐私和不可复制性的强保证的各种密码技术结合到服务的提供中。通过将这些密码技术与数据保护技术相集成,可按照使该数据的所有者和企业客户(“客户”)对主存该数据的实体或云服务提供者或操作者(“CSP”)能够执行的操作的类型有精确的控制的方式在该数据的顶部上实现远程服务和分层应用。此外,这些操作中的许多可由CSP代表客户来执行,而无需习得或以其他方式看到对其执行操作的数据的实际内容。此外,客户能够检测CSP是否正在不当地删除或修改数据,或将数据移动到低性能的ニ级或三级存储。就此,可将各种密码技术与数据服务集成以向客户提供放弃对数据的控制的信任度,例如,以增加安全性和隐私性。例如,可搜索的加密是ー种其中在加密数据之前将必要元数据复制出该数据的加密方法。作为非限制性示例,在Exchange电子邮件的情况下,该数据是一条消息,其附件和必要的元数据可能包括所选择的消息收发应用程序编程接ロ(MAPI)属性和全文索引。例如,使用例如高级加密标准(AES)来加密数据,而按照生成经加密的索引的方式来加密元数据。结果是,经加密的数据和索引现在能被移交给不被完全信任的另ー实体,诸如CSP。对 所聚集的经加密的数据和索引的后续选择性访问可由该数据的所有者(客户)来实现,从而将经加密的查询发送到CSP (或其他经授权的订阅者)。从而,CSP能够在经加密的索引上应用经加密的查询并返回匹配的经加密的数据,然而,CSP不了解关于数据、元数据、查询或结果的内容的任何事项(除非被该客户授权)。拥有证明和可恢复性证明是一种其中“证明者”(在此情况下是提供存储的CSP)和“验证者”(客户)能够按照其中该验证者能够高效地确定它们所拥有的数据是否保持不变并且可用于容易地从该数据的持有者(CSP )检索的协议相接合的密码技术。这些技术在网络带宽上以及在CSP执行的操作上是高效的,因此CSP所出售的货物的成本(COGS)保持相对不变且完成该协议的时间合理地短。可集成到数据服务的供应中的另ー种密码技术是应用证明。与拥有证明类似,应用证明使验证者能够确定该数据正由证明者(CSP)正确地维护。盲指纹表示扩展网络去重复技术(诸如Rabin指紋)的另ー类密码技木,网络去重复技术通常用于最小化网络上的冗余数据交換。在本文的各实施例中,应用指纹化(fingerprinting)以使得该协议中的參与者(例如,在数据存储的情况下是CSP)不知晓它们正在主存的数据的实际内容。基于上述框架和相应的密码技术(范围从存储和计算服务到通信和协作服务),出现了基于CSP的服务提供的各种场景。较大的企业客户在其当前的企业数据中心中具有大量的计算和存储资产,并且采用云服务的惯性可能很高。此外,客户对数据中心操作有经验并且熟悉,从而想要利用运营花费(OPEX)和资本花费(CAPEX)优势,并且从而对将他们的敏感商业数据从内部移动到云有顾虑。对于这类客户,在各实施例中,提供一组应用,该组应用涉及拥有并运营他们的现有服务器(诸如Exchange服务器)的客户。此时会出于数据保护、归档、顺从、管控、法律的原因或其他原因而将该数据的第二副本委托给云服务提供者。从而CSP具有保护此数据免于数据丢失或泄露的技巧、技术和规模经济,并且能够促进在此第二副本上运行应用。可基于维护数据而提供给客户的示例产品和服务的小型采样包括诉讼支持、监视和监瞀、服务拨号音、数据导航等。关于诉讼支持,当公司被起诉时,诉讼过程需要各种实体来执行对历史电子邮件记录的捜索。这些实体包括内部法律员エ、HR (人力资源)、经理、外部法律顾问、他们的外部诉讼支持合作方以及对方法律顾问。存在关于谁能执行什么搜索的具体范围规则。在当前诉讼支持场景中,难以界定范围。因此,參与诉讼支持的任何个人可能看到在范围之外的电子邮件。在电子邮件的情况下,搜索的结果通常以个人存储表(PTS)文件的形式被交換,个人存储表文件构成了附加的危险,因为这些文件可能被无意或恶意地移交给未经授权的个人。相反,当远程主存第二副本(例如通过CSP存储在云中)并且通过数据维护该第二副本时,企业中的单个可信实体(例如,首席法务官)在该操作中的每个人提供将他们的查询能力限制到他们的需要的具体陷门是可能的。被主存在云中并通过可捜索加密和防篡改审计日志保护的数据提供了更高的保护等级,从而防止了不适当的电子邮件访问。交換PTS文件的需要被消除了,因为操作中的所有个人都直接访问该云以进行查询,而诉讼支持合作方是输出针对性内容以转换为标记图像文件格式(TIFF)以进行案件管理的唯一实体。在监视和监瞀远程数据副本方面,任何大小合理的组织均应当出于各种原因而主动地监视他们组织的电子邮件。这些原因的范围可能从法律/顺从到各管控原因,诸如监视IP泄漏、剽窃、不当语言等。通常,监视和监瞀软件监视主服务器或被备份或归档的第二副本。监视主服务器的问题在于这可能对繁忙的生产服务器带来过多的负担。此外,因为管理员无意或恶意地修改或删除主服务器上的数据是可能的,一种解决方案是按照兼容的方式捕捉数据并将其传输到第二副本,其中监视和监瞀软件持续扫描传入的电子邮件,以查找或搜索模式。然而,在许多企业设置中,存在对这些第二副本的本地管理性访问,并且其结果是,尽管有篡改检测和预防机制,资源丰富的管理员仍能修改或删除信息。相反,通过CSP来维护数据有利地将第二副本放在不同的控制区域中。合适的密码技术(诸如可搜索公钥加密(PEKS)和拥有证明(POP))可确保即便企业管理员和CSP的员エ之间有勾结也仍能防止他们积极地精确标识他们想要修改的项。该监视和监瞀软件在远程站点处或在云中运行并且通过先前提供的陷门来查找具有具体的预先确定的关键词的项。如本文根据各实施例所述,按以下方式将独立的数据保护和密码技术组合起来增强并修改每ー个以支持另ー个,以提供当前对消费者、企业、生态系统和社交网络不可用的解决方案,并且启用在云环境中的无容器的、安全的、私有的并且可选择性地访问的数据。可信XML出于各种原因,XML已经演进为ー种普遍的网络交換格式,这些原因包括但不限于由标签和其分层布置所帯来的高效的描述性能力。就此,可根据上面的允许向XML文档(包括净荷和标签,以及在现有标签或元数据顶上添加的任何元数据)的不同部分应用不同许可的FTO基础结构来保护XML数据。也如同上面所述,从而能够按照无容器的方式来存储可信XML。如图19中所示,可加密XML净荷1902及其标签1900以形成经加密的标签1910和净荷1912。就此,通过将XML文档分为具有可能不同的保护等级的XML片段,允许ー种具有远为更粒度化的许可系统,该系统不依赖于作为发布者侧的文档的初始组织。此外,可基于任何函数1914向净荷数据添加附加数据,并且可应用附加XML标签来帮助要对可信XML片段应用的附加功能。对净荷1912/标签1910的操作包括操作1920,诸如搜索、查询、备份、审计等。基于数据1914或标签1916的可任选的添加,可对该数据实现其他操作1930。例如,在数据符合社会保险号的模式的任何时间,可自动添加将该XML片段标记为私有的标签1916以保持这样的信息不被侵犯。就此,如果该数据/信息是XML格式的,则可向结构化的XML数据应用上述关于数据/元数据技术中的任何一个以选择性地查询并获得对XML片段的访问权。XML具有标准格式,即く 标签“值”〉(〈tag “value”〉)或〈标签“值” |XML 结束标签 > (〈tag “value” |XMLend-tag〉)。就此,使用结构XML,存在分层地表示该结构的方式以便存在将指向对数字托管模式唯一的CKG/CTP ‘帧’的外部包装器。因此,当存在访问嵌入的片段的需要时,将现有的(或具体化,新的)信任和<CKG>和<CTP>包装器一起使用。这允许用户在被准许时搜索、提取和解密这些片段。此外,可使用PDP来验证所请求的具体XML片段自从被初始创作起未被篡改。因此,在各实施例中,通过各种“装饰”来创建XML片段或完整记录(“净荷”)的“可信信封”,所述装饰允许该信任来运行全范围信任保证,如机密性、隐私性、匿名性和完·整性。这与上述无容器数据实施例相一致。将数据从其容器(例如,文件系统、数据库)分离的机会以保持并扩展原来的保证而不需要容器来实施的方式来促进了共享。基于业务需要,井随着不同技术的出现,还可在密码搜索、基于密码的篡改检测等之外添加任何其他包装器。使用XML数据,可将标签添加到该数据以帮助调制该数据的一致性,这可取决于领域和应用。有利地,XML可包括对认证、授权、模式、历史、踪迹、一致性等进行编码的可搜索元数据。如果它是较大文档的一片,则它还可编码用以定位其他相关片段的清单信息。能够使用任何所达成一致的CKG/CTP以及能够与能够在新技术变得可适用时作为可搜索加密和rop的补充来添加其他包装器的技术独立性,启用了处理任何类型的云场景的灵活的体系结构。还可扩充或添加XML标签来调制一致性、轨迹等。当将其与数据散布技术组合时,实现了关于机密性、隐私性、匿名性和完整性的强保证。可使用此“可信信封”来装饰具有附加元数据的任何净荷,所述附加元数据可包括模式信息、一致性提示、版本和轨迹、机密等级(例如,在使用群计算(“crowd computing”)吋)、用于从片的其他对等体重构此净荷的定位符等。在一个非限制性应用中,可信XML提供“松格式绑定”来生长该生态系统以催化网络效果。FTO (将这些技术和密钥管理器參数化)和XML通用交換格式的组合促进了在适应散布技术、应用、领域、场所、主权、格式和其他要求时的更大灵活性。在另ー应用中,用于聚合的当前结算和协调涉及易于出错、省略和欺诈的点到点交換。插入安全和私有数据服务将因此以促进选择性公开以使得可信实体保持可靠的方式而直接使会计、审计等受益,并且可允许适当的调节者(顺从、法律)或居间者(冲突解决等)选择性地窥视XML标签以在事务中建立信任。可信XML的优点在于净荷能够在參与者之间编码专有格式,其中存储方不需要知晓或者甚至不必试图理解该专有格式。可信包装器的各层因此添加了大量的技术和业务价值以及法律和顺从价值和主权实体价值。在另ー应用中,由于(a)不同的不兼容的传统系统以及(b)更重要的-患者对现有解决方案提供者的粘性的丧失,健康护理系统集成是繁重的。通过引入云数据服务作为交换所,并引入可信XML作为交换格式,这些现有解决方案提供者能够将此当作维持该粘性的途径,同时还利用由XML促进的通用格式。至于使用启用FTO的“路由器”(“网关/监护者”)和利用可信XML,是因为(a)路由器可以做它们的事情而不需要了解路由所需知识以外的更多知识,(b)路由器具有对错误和不良行为的更少的自由度,(c)由于后期绑定,消除了复杂的密钥管理。此外,可添加或扩充标签或可将附加的元数据应用于XML文档以指示内容具有各种敏感等级。例如,可存在具有公共、秘密、以及绝密段落的文档。例如,具有秘密许可的执行捜索和请求访问的人将只具有对公共和秘密段落的访问权。也可使用段落的分类来确定加密机制、密钥和访问策略。例如,绝密内容不能从无线或远程设备访问。类似地,可使用所述分类来创建与可如何存储数据、可在何处存储数据、可存储数 据多久有关的策略。例如,医疗数据必须使用AES 256加密每天一次地备份到可信数据中 心中的安全服务器。图20是示出在一实施例中的用于主存可信XML的示例性过程的流程图。在2000,第一控制区域中的计算设备从第二控制区域中的计算设备接收经加密的XML数据,该经加密的XML数据包括经加密的XML净荷数据和经加密的XML标签。该经加密的XML数据是基于密码密钥信息根据可搜索加密算法从对该第二控制区域中的该计算设备的所定义的XML数据集的加密而形成的。在2010,接收基于密码密钥信息加密的辅助元数据,其中该辅助元数据是从对经加密的XML净荷数据或经加密的XML标签的分析而形成的。在2020,接收对数据的请求,该请求包括基于密码密钥信息的能力,该密码密钥信息定义用于访问该经加密的XML净荷数据或该经加密的XML标签中的ー些的特权,从而允许对该经加密的XML数据的、如该能力所限定的选择性访问。在2030,可任选地,确认经加密的XML数据和对应的XML标签数据的正确子集由符合该请求的订阅者设备接收。图21是示出在一实施例中的用于主存可信XML的示例性过程的流程图。在2100,从密钥生成组件接收密码密钥信息,该密钥生成组件基干与订阅者设备的身份信息来生成该密码密钥信息。在2110,订阅者设备请求经可搜索地加密的XML数据和对应的XML标签数据的子集。将该密码密钥信息传送到该经可搜索地加密的XML数据和对应的标签数据的存储提供者。在2120,如在该密码密钥信息中定义的能力所允许的那样解密经加密的XML数据和对应的XML标签数据的子集。在2130,确认经加密的XML数据和对应的XML标签数据的正确子集由符合该请求的订阅者设备接收。在2140,验证经加密的XML数据和对应的XML标签数据的子集的内容在接收到该经加密的XML数据和对应的XML标签数据的子集之前未被删除或修改。图22是示出在一实施例中的用于主存可信XML的示例性过程的流程图。在2200,基于从分开的密钥生成器接收的密码密钥信息根据可搜索加密算法来加密XML数据以形成经加密的XML数据,该经加密的XML数据包括经加密的XML标签信息,其中该密钥生成器生成该密码密钥信息。在2210,将该经加密的XML数据传送到网络服务提供者以存储该经加密的数据。在2220,该经加密的数据是可根据基于作出请求的设备的身份信息而授予该作出请求的设备的所选择的特权的后期绑定而选择性地访问的。图23是示出在一实施例中的用于主存可信XML的示例性过程的流程图。在2300,订阅者设备做出对包括经加密的XML标签的经可搜索地加密的XML数据的子集的请求。在2310,从密钥生成组件接收密码密钥信息,该密钥生成组件基干与订阅者设备的身份信息来生成该密码密钥信息。在2320,根据在密钥信息中所定义的赋予给该订阅者设备的特权,解密经加密的XML数据的子集。如向各实施例提供的,可信XML以从整体到较低节点级来保护数据,并且能够在该节点级以通用且高效的方式来保护访问特权。在下文阐述了示出ー个或多个概念的各示例,其中使用了匿名IBE和/或其中AES被用作用于模糊化的密码技木。然而,要理解,在这些示例中可以使用任何合适的数学变 换,并且因而用于模糊化或隐藏XML数据的给定技术不应被当作对各更一般概念中的任何概念的限制。在一个实施例中,XML的编码可通过使该XML通过编码变换器来完成,该编码变换器输出可信XML,并且解码可通过使该可信XML通过定义的解码变换器来完成。就此,同一节点可被倍増地保护(在多个级处包装)已具有对该节点的边界的更高保护。在以下说明性而非选择性的示例中,病历被用来解释使用进行选择性编码来不同地对待不同的数据部分的概念的可信XML的实现。く xml version="I.O" encoding="utf-8" >
くPatientlnfo Id=’’JK392E8D”>
<Name>Jolin McKenzie</Name^
<Doctor>Dr. Smith </Doctor>
<LabResults>
<B IoodTes t>
くTestData labname="Quest">
<data> ... </data>
</TestData>
</BloodTest>
<MRiTest>
<TestData labiiame=”Mela”>
<data> ... </data>
</TestData>
</MRITest>
<XRayTest>
<TestData labname="Lest">
<data> ... </data>
</TestData> <TestData labname="Vanta'!>
<data> ... </data>
</TestData>
</XRayTest>
</LabResiilts>
</PatientInfo>在一个非限制性方面,可信XML启用对XML文档的所选部分而非整个文档的保护。例如,一个实现可以保护内部块的被标记为‘action= “encode”(动作=编码)’的元素。例如,为保护患者的姓名,Name (姓名)元素可被如下标记〈Name action=" encode" >John McKenzie</Name>结果,数据净荷(在此是‘John McKenzie’ )对任何人而言将是不可见的。这ー选择性编码可以在任何元素级来完成,例如它可以针对平面元素(如上所述)来完成或它可以针对某分层元素(如iBloodTest (血检)’)来如下设置くBloodTest action="encode">
くTestData iabname="Quest">
<data> ... </data>
</TestData>
</BloodTest>在以上示例中,‘BloodTest’元素内部的整个‘TestData (检测数据)’将对任何人不可见。为了设置来执行各数学变换,诸如但不限于加密,可生成预处理器信息。例如,匿
名IBE (AIBE)和AES可被用作密码技木,但同样要注意,这些是非限制性的。在一个实施例中,该系统可具有用于管理和生成AIBE的秘密的独立的能力生成中心(CGC),如针对本文其他位置所述的联合体系结构所概括描述的。为了执行AIBE设置,在一个实施例中,CGC可以生成公共參数(PUB)和主密钥(MSK)0在CGC中,MSK可保持是秘密的。PUB可被提供给应用的最终用户以供使用AIBE。图24是用于AIBE的上下文中以对可信XML文档进行选择性编码的示例性非限制性算法的流程图。在2400处,接收被标记来‘编码’的元素的内部块(R)。在2410处,生成新加密密钥(K),并且在2420处,用该密钥(K)来加密内部块(R),例如(R) — R’。在2430处,生成‘身份关键词’(w),它是稍后用来请求能力的关键词。在2440,使用(w)来用任何非对称算法保护(K),并且结果记作(K,)。在2450,可丢弃(R)和(K)。在2460处,可将(R’)和(K’)添加到算法信息和服务信息,以供稍后获得对应的能力。以下是使用AES和AIBE的示例实现。以如下元素开始
くBloodTest action="encode">
<TestData labname=,iQuest">
<data> ... </data>
</T estData>
</BloodTest>在该示例实现中,(R)如下〈TestData labname=" Quest" >〈data〉· ··〈/data〉〈/TestData〉对于要作为编码的一部分来执行的数据处理,生成ー个256位的AES加密密钥(K)0接着,AES加密记录(R),例如,AES K (R) ^ Rj作为示例,R’的64基编码(Base64Encoded)的值可如下表示pDB9AaoGgBMbkUAox/+thz6IlIffpE21Qj0Ziff8I9vQ910A3ffrRaIUTffg9iDqvgu7svclHlSjENgBWDzlo5gaWYXlD+Ib3j6VpGX13mwd5Dq5FctLQFbSLWZCBzsCC/0Rbe6Aliwk+6fGam/GrVcyuXeocIxUsmSBc0hhhwwdbz2IKpvY+rqW63uglgcbn4pyMbn0diofbP0roqVXyCbFCDGbS46cmac
8YKeDGrCURayt/yZW3Z7AwCzLvN3py6LBZvj8W41JbzND5fa/S3bdfg==随后可以取该文档的‘Id’并且它可被附加在‘element (元素)’名之后。这将被用作‘身份关键词’(W)。例如,在此,(w)可以是“JK392E8DBloodTest”。接着,使用AIBE来保护(K),例如,如下AIBE (PUB, W,K) — K,作为经由AIBE进行保护的結果,K’可能看起来如下32,BuLI8ihhSAV3oxa9hm7Dx70BuLI8i, 9uzEeIG89oAasixlbDLae9uzEeI, zn9xpp89kZtTio0zn9x, fmmxLd3Ehgl6Efmmx如上所述,此时,R和K可被丢弃,并且可以生成所输出的XML。至于对所输出的XML进行编译,(R’)被保持在‘Value (值)’元素的内部,例如,如·下
<Value〉
pDB9AaoGgBMbkUAox/-i-thz6I]]WpE21Qj0ZiW8I9vQ91OA3WrRaIUTWg9i
Dqvgu7svcIH I Sj E N gB W Dzi ο 5 ga W Y XID 十 lb3j6VpGX 13mwd5 Dq5 FctLQFbSL WZCBzsCC/0Rbe6AI iwk f 6fGam/GrVcyuXeocIxUsmSBc0hhhwwdbz2IKpvY+rqW63 ugigc-bn4py MbnOd iofbPOroqV XyC bFCDGbS46cmac8Y KeDGrC Li Rayt/yZ\V3Z7AwCzLvN3py6LBZvi8W41JbzND5fa/S3bdfg==
</Value〉接着,添加所使用的变换算法。在此,例如,它可以是Encrypt (加密)和AES。<TransformationMethod><Type>Encrypt</Type><A1gor i thm>AES</Algor i thm></TransformationMethod>此外,定义名字空间并将其封装在‘Data (数据)’元素内部,例如,如下<tO:Data xmlns:t0="http://TrustedXml_01/traiisformers">
<tO:T ransfonnation Meihod>
<tO:Type>Encrypt</tO:Type>
<t0: Algoi'ithin>AES</tO: Algorithm〉
</tO: T ran s fo nn atio n M e tli o d >
<tO:Value>
pDB 9 AaoGg B M bk U Aox/+thz6IlIWpE21 QjOZiW 8I9vQ910 A3 WrRaIUT Wg9iDqvgu7svcIHl SjENgBWDzlo5gaWYX 丨 D+Ib3j6VpGX 丨 3mwd5Dq5FctLQFbSLWZCBzsCC/ORbe6A liwk+6fGam/GrVcyuXeocIxUsmSBc0hhhwwdbz2[KpvY+rqW63uglgcbn4pyMbnOdioibPOiOqVXyCbFCDGbS46cmac8YKeDGrCURayt/yZW3ZIAw CzLvN3py6LBZvj8W41JbzND5fa/S3bdfg==
</tO:Value>
<tO:Data>至于密钥,(K’)在Key (密钥)元素内部维护,例如,如下〈Key〉32,BuLI8ihhSAV3oxa9hm7Dx70BuLI8i, 9uzEeIG89oAasixlbDLae9uzEeI, zn9xpp89kZtTio0zn9x, fmmxLd3Ehgl6Efmmx〈/Key〉再一次,添加所使用的变换信息。在此,例如,它又是Encrypt和AIBE,例如,如下<TransformationMethod><Type>Encrypt</Type><Algorithm>AIBE</Algorithm></TransformationMethod>还添加解码器检索其密钥(Key)的服务信息,例如,如下
<Encrvption Info Xmlns:e0="http://TrustedXml Oi/transformers..,AIBE">
< KeyP ro v iclerSe rv i c e>http://TrustedXml 0 i/aibe/cgc.svc</K ey Pro v i clerServ ice>
<KeyProv i dei· Act i on>G etCapability</KeyProvider Action〉 ^Encryption In fo>例如,名字空间可被定义并封装到‘Keylnfo (密钥信息)’,如下、<tO: KeyInfo xmlns :tO="http ://TrustedXml O I/transformers”〉
<tO: T ran sformationM ethod>
<tO:T ype> Encry pt</ Ο: T ype>
<tO:Algorithm>A I BE</tO:A lgorithm>
</tO: Tran s fo rm ationMethod>
<e O: E n c ryp tionlnfo xmlns:e0=,,http://TrustedXml_0 !/transformers/AIBE">
<eO: Key P rovide r S e rv i c e > http: //Tru s te d X i n I _01 /aibe/cgc.svc </eO: KeyPro viderService>
<eO:KeyProviderAction>GeiCapability</eO:KeyProviderAction>
</eO:Encryption I nfo>
<Key>
32,BuLISihhSA V3oxa9hm7Dx70BuLI8i,9uzEeIG89oAasixlbDLae9uzEe]rzn9
xpp8 9kZ tT i o0zn9 x, fmmx Ld 3 E h g 16 Eframx
</Key>
</tO:Key!nfo>BloodTest的示例输出元素如下くBloodTest action="decode">
<T ransformed Dat a>
<t0: KeyInfo xmIns:tO="http://TrustedXm 1_01 /transformers"> <tO:TransformationMethod>
<tO: Ty p e> Enc ry pt</tO: Type>
<tO: AI gori th m> AIB E</tO: AI go rith m></tO:TransformationMethod>
<e O: Er I c r V p t i ο n I n foX rn I ns: eO="I I tip: //Tr u Si edX m 1_01 / tra 11 s fo rrn e rs / AIB E " ><eO;KeyProviderService>http://TrustedXml OI/aibe/cgc.svc</eO:KeyProviderService>·<eO:KeyProviderAciion>GetCapabiliLy</eO:KeyPiOviderAction>
</e O: E n c 1'y p t i 0111 n fo>
<Key>
32,BuL18ihhSAV3oxa9hm7Dx70BiiLI8i59uzEelG89oAasixlbDLae9uzEei,zn9X p p 8 9 k Z t'I i 0 O z n 9 x, fm mx L d 3 E h g 16 E fmmx</Key>
</tO:iCeylnfo>
<tO:Data x.mlns:t()=”http://Tru.stedXml OI /transformers”〉
<tO :TransformationMethod>
<tO :Type>Encrypt</tO :Type> <tO:Algorithm>AES</tO:Algorithm>
</tO: T ransformationMethod>
<tO:Value>
pDB9AaoGgBMbkL;Aox/+thz6IllWpE21Qj()ZiW819vQ910A3VVrRalUTWg9i
DqvgiwsvclH I SjENgBWDzlo5ga\VYX 丨 D+Ib3j6VpGX 13mwd5Dq5FctLQFbSL\V
权利要求
1.一种用于主存可扩展标记语言(XML)数据的方法,包括 第一控制区域中的至少一个计算设备从第二控制区域中的至少一个计算设备接收包括经数学变换的XML净荷数据和经数学变换的XML标签的至少部分地经数学变换了的XML数据,所述经数学变换的XML数据是根据至少一个可搜索数学变换算法基于访问信息从对所述第二控制区域中的所述至少一个计算设备的所定义的XML数据集进行至少部分数学变换而形成的;以及 接收对数据的请求,该请求包括基于定义用于访问经数学变换的XML净荷数据或经数学变换的XML标签中的至少一些的至少一个访问特权的访问信息的至少一个能力,从而启用至少由所述至少一个能力所定义的、对所述经数学变换的XML数据的选择性访问。
2.如权利要求I所述的方法,其特征在于,所述接收包括含有经加密的XML净荷数据和经加密的XML标签的至少部分经加密的XML数据,该经加密的XML数据是根据至少一个可搜索加密算法基于密码密钥信息从所定义的XML数据集的至少部分加密而形成的。
3.如权利要求I所述的方法,其特征在于,所述接收包括接收对数据的请求,所述数据包括陷门数据,所述陷门数据包括用于对经加密的XML净荷数据或经加密的XML标签进行选择性访问的至少一个密码陷门。
4.如权利要求I所述的方法,其特征在于,所述接收包括接收对来自所定义的XML数据集的至少一个数据项的请求和接收用于从经加密的XML数据提取该至少一个数据项的至少一个陷门;并且如果所述至少一个陷门是有效的,则还包括提取和传输来自经加密的XML数据的该至少一个数据项。
5.如权利要求I所述的方法,其特征在于,由所述第一控制区域中的所述至少一个计算设备进行的所述接收包括接收基于密码密钥信息来加密的辅助元数据,该辅助元数据是从对经加密的XML净荷数据或经加密的XML标签进行分析而形成的。
6.一种用于订阅经可搜索地加密的可扩展标记语言(XML)数据的方法,包括 从访问信息生成组件接收访问信息,所述访问信息生成组件基于与至少一个订阅者设备相关联的身份信息来生成所述访问信息; 至少一个订阅者设备请求经可搜索地加密的XML数据和对应的XML标签数据的子集,包括将所述访问信息传送给所述经可搜索地加密的XML数据和所述对应的XML标签数据的存储提供者;以及 如所述访问信息中定义的能力所允许的,解密经可搜索地加密的XML数据和所述对应的XML标签数据的所述子集。
7.如权利要求6所述的方法,其特征在于,所述接收访问信息包括从密钥生成组件接收密码密钥信息,所述密钥生成组件基于与所述至少一个订阅者设备相关联的身份信息来生成所述密码密钥信息;以及 请求所述子集包括至少一个订阅者设备请求经可搜索地加密的XML数据和所述对应的XML标签数据的子集,包括将所述密码密钥信息传送给所述经可搜索地加密的XML数据和所述对应的XML标签数据的存储提供者。
8.如权利要求6所述的方法,其特征在于,还包括 确认所述至少一个订阅者设备接收到了与所述请求相一致的、所述经可搜索地加密的XML数据和所述对应的XML标签数据的正确子集。
9.如权利要求8所述的方法,其特征在于,所述确认包括执行数据拥有证明以证明所述至少一个订户设备接收到了所述正确子集。
10.如权利要求6所述的方法,其特征在于,还包括 验证在接收到所述经可搜索地加密的XML数据和所述对应的XML标签数据的所述子集之前,所述经可搜索地加密的XML数据和所述对应的XML标签数据的该子集的内容未被删除或修改。
11.如权利要求10所述的方法,其特征在于,所述验证包括执行可恢复性证明以证明所述内容未受干扰。
12.如权利要求6所述的方法,其特征在于,所述请求包括将与所述至少一个订阅者设备相关联的凭证进行匿名化。
13.—种系统,包括 存储可选择性地访问的经模糊化的XML净荷数据1310和与该经模糊化的XML净荷数据相对应的相应的经模糊化的XML标签数据的数据存储,其中至少一个订阅者请求订阅所述经模糊化的XML净荷数据或所述经模糊化的XML标签数据的子集,第一独立实体基于与所述至少一个订阅者相关联的身份信息来生成访问信息,而第二独立实体基于由所述第一独立实体生成的访问信息来执行所述子集的解码;以及 被配置成执行用于处理所述至少一个订阅者的至少一个请求的网络服务的至少一个处理器P2,所述网络服务提供对所述经模糊化的XML净荷数据或所述经模糊化的XML标签数据的所述子集的选择性访问。
14.如权利要求13所述的系统,其特征在于,所述至少一个处理器P2还被配置成确认所述经模糊化的XML净荷数据或所述经模糊化的XML标签数据的所述子集是与所述订阅相一致的正确子集。
15.如权利要求13所述的系统,其特征在于,所述至少一个处理器P2还被配置成验证在对所述经模糊化的XML净荷数据或所述经模糊化的XML标签数据的所述子集的选择性访问之前,所述经模糊化的XML净荷数据或所述经模糊化的XML标签数据的该子集未在未经授权的情况下被更改或删除。
全文摘要
用于数据服务的数字托管模式可包括对远程站点处的或云服务中的被模糊的数据的选择性访问,从而跨多个实体来分发信任以避免单点数据损害。基于该模式,用于任何种类的净荷的“可信信封”通过置于该信封上的各种装饰或信封来启用带帘访问,该装饰或信封允许范围为各保证(诸如但不限于机密性、隐私性、匿名性、篡改检测、完整性等)的全范围信任。例如,可应用或扩充XML标签来为结构化XML数据创建信任信封。可被应用于XML数据的数学变换或‘装饰’的一些示例包括但不限于,保留大小的加密、可搜索加密、或应用证明、盲指纹、可恢复性证明等。
文档编号G06F13/14GK102687132SQ201080056778
公开日2012年9月19日 申请日期2010年11月18日 优先权日2009年12月15日
发明者D·J·坎农, R·P·德索扎, R·V·奥拉德卡, V·克里希南 申请人:微软公司