用于可信计算和数据服务的无容器数据的制作方法

文档序号:6351118阅读:180来源:国知局
专利名称:用于可信计算和数据服务的无容器数据的制作方法
技术领域
本发明涉及为设备提供可信计算和数据服务,诸如网络或云服务,尤其涉及允许安全、可选择性地访问、以及私密地存储的数据而不管哪个(哪些)容器被用来实际存储位的的数据或网络服务。
背景技术
以关于一些常规系统的背景技术为例,计算设备在传统上是在设备本地执行应用和数据的。在这种情况下,当数据被访问、处理、存储、高速缓存等等时,这些数据可以通过本地总线、接口和其他数据路径在设备上行进,然而,设备的用户不必担心用户数据的干扰或暴露,除非设备本身丢失、失窃或以其他方式被损害。
能够存储数万亿字节数据(以及将来潜在的千万亿字节、百万万亿字节数据)的网络存储场的演变创造了模拟历史上是对本地数据进行操作,却反而是对存储在云中的数据进行操作的应用的机会,其中主设备和外部存储是分开的。应用或系统(或任何)数据的云存储允许许多设备存储它们的数据而不需要用于每个设备的分开的专用存储。但是,随着在线和云服务的演进,应用和服务正越来越多地移动到第三方网络提供者,由网络提供者代表设备来执行给定服务的一些或全部。在这种情况下,当用户的数据被上传到服务时、当该数据被服务存储或处理时、或者当该数据被从服务检索时,设备的用户关心的可能是谁能够访问该数据,或者可能更坏地,谁能够干扰该数据。简言之,当用户的设备的数据离开物理占有的领域并进入物理上远离用户的网络环境时,关于第三方对数据的疏忽的或恶意的处理或者对数据的干扰的担忧出现了。因此,所期望的是增加对云服务和与云服务相联系的数据处理的信任、安全性和私密性。关于即使在企业内部的数据存储,当数据离开生成数据的一个控制区(例如,第一部门)而进入另一(例如,第二部门)区域以进行存储时,可能出现类似的担忧。然而,如同上面提到的,留下了以下问题云服务或网络存储提供者均不能够有效地缓解针对数据(当存储在云中时)的安全性、私密性以及完整性的问题和需要。简言之,用户要求在如下方面有更高的信任当交出对存储媒介的物理控制时,他们的数据仍然是安全而私密的,并且这种障碍已显著防止企业和消费者经由第三方网络服务和解决方案采用重要数据的备份。当今的设备和被提供给设备的数据服务的上述缺点仅仅旨在提供对常规系统的一些问题的总览,并且不旨在是穷尽性的。在仔细阅读了以下具体实施方式
后,当今领域的其他问题和各非限制性性实施例的对应好处可变得显而易见。

发明内容
此处提供了简化的发明内容以帮助能够对以下更详细的描述和附图中的示例性、非限制性实施例中的一个或多个的各方面有基本或大体的理解。然而,本发明内容并不旨在作为详尽的或穷尽的。相反,本节发明内容的唯一目的在于,以简化的形式提出与一些示例性、非限制性实施方式相关的一些概念,作为以下各实施方式的更详细的描述的序言。网络或云数据服务(包括用于数据的数学变换技术,诸如可搜索加密、解除组装/重新组装或分发技术)被以如下方式提供该方式跨多个实体分发信任以避免单点数据损害,并且将数据保护要求从可存储、处理、访问或检索该数据的容器分离(decouple)。在一个实施例中,数学变换断言生成器(例如,密钥生成器)、数学变换提供者(例如,密码技术提供者)以及云服务提供者每个均作为分开的实体提供,从而允许数据发布者的可信平台机密地(经模糊化 的,例如,经加密的)将数据提供给云服务提供者,并且允许经授权的订阅者基于订阅者能力对所述经模糊化的(例如,经加密的)数据的选择性的访问。使用可信平台的技术,将数据(以及相关联的元数据)从保存该数据的容器(例如,文件系统,数据库等)分离,从而通过施加用所呈现的能力刺穿的数学复杂度保护罩来允许该数据充当它自己的管理者,作为非限制性示例,所呈现的能力诸如是由信任平台的密码密钥生成器所授予的密钥。以保留并扩展信任而不需要特定容器来实施的方式,促进对数据或该数据的子集的共享或访问。被应用到该数据的数学复杂度(诸如可搜索加密技术)保护该数据,而不考虑记录该特定位的容器或硬件,即,该数据是被无容器地或不考虑该容器地保护的,并且因此不经受在损害容器安全性的基础上的攻击。如果该特定的“保险箱”被破解,内容仍然被保护。在一个非限制性实施例中,可扩展标记语言(XML)数据是充当它自己的管理者的数据。使用XML数据,可用描述信息扩充或添加标签,该描述信息选择性地允许或阻止对底层数据的访问,从而允许该XML数据或XML数据片段(如由被应用到该XML数据或片段的信任信封中的标签信息所封装的)充当它自己的管理者。例如,XML数据或标签能够表示可搜索元数据,该可搜索元数据对认证信息、授权信息、模式信息、历史信息、追踪信息、一致性信息等中的任一个或多个进行编码。注意,基于XML的实施例中的任一个还可应用到一些替代格式,诸如但不限于,JavaScript对象符号(JS0N)、S表达式(S_Expressions)、电子数据交换(EDI)等,并且因此XML仅在这样的实施例中用作说明性目的。用于任何类型的有效载荷(诸如但不限于数据库字段、XML片段或完整记录)的“受信信封”因此通过放置在该信封上的各种装饰或封条来提供遮掩的(curtained)访问,所述装饰或封条允许具有保证的全范围信任,诸如但不限于,机密性、私密性、匿名性、篡改检测、完整性等。例如,可以应用或扩充XML标签来为结构化XML数据一用于联网环境中的数据交换的常见格式——创建信任信封,从而允许可信云服务环境中的无容器XML数据。可被应用以促进对数据的安全性和私密性的高度信任的建立的密码技术或“装饰”的一些其他示例包括但不限于,大小保留加密、可搜索加密、或应用证明、盲指纹、检索能力证明等。以下更详细地描述其他实施例和各非限制性性示例、场景和实现。


参考附图进一步描述各非限制性实施例,在附图中图I是用于提供安全的、私密的、以及可选择性访问的网络数据服务的一个或多个实施例的总体环境的框图;图2是示出“作为它自己的管理者的数据”的一个或多个方面的框图3是用于提供安全的、私密的、以及可选择性访问的网络数据服务的一个或多个实施例的总体环境的框图;图4是用于管理容器的过程的流程图,其中数据充当它自己的管理者;图5是示出充当它自己的管理者的数据的一个或多个方面的另一个框图;图6是示出充当它自己的管理者的数据的另一个框图,其示出了数据能够超越传统容器安全模型;图7示出存储管理层,该存储管理层执行诸如来自不同类型的多个数据容器的数据的自动粉碎、高速缓存、复制、重构等功能;图8是示出安全覆盖网络的框图,该安全覆盖网络在跨各种数据容器的存储数据的任何地方向数据添加密码访问包装;图9是示出与传统应用有关的方面的框图;图10是可与传统应用以及FTO知晓应用(FTO aware applications)结合使用的样本架构模型;图11是示出密码包装或信封在数据和/或描述该数据或该数据的特征的元数据上的一般使用的框图;图12是一特定示例,进一步突出了图11中大体呈现的概念;图13是另一示例,示出了围绕被保护数据的联合信任覆盖;图14是示出其中使用信任覆盖将记录以及索引加密并上传到云的一实施例的框 图;图15-16示出客户端能够如何利用联合信任覆盖架构来生成并上传经加密的索引到经加密的数据上以获得更丰富的云存储体验;图17-18是示出该系统的一些附加非限制性信任保证的框图;图19是示出以XML为上下文的受信覆盖的一实施例的图;图20-23是示出用于各实施例中的受信XML的示例性过程的流程图;图24是根据一实施例的可信云服务框架或生态系统的框图;图25是示出根据可信云服务生态系统的用于发布数据的示例性、非限制性方法的流程图;图26是示出根据可信云服务生态系统的用于订阅数据的示例性、非限制性方法的流程图;图27不出一不例性生态系统,该生态系统不出了密钥生成中心(CKG)、密码技术提供者(CTP)和云服务提供者(CSP)在可信生态系统中的分离;图28是示出了用于为企业执行云服务的可信生态系统的其他益处的另一架构图;图29是示出了通过存储抽象层来适应于不同存储提供者的另一框图;图30示出与存储抽象服务相联系的存储的进一步的方面;图31是示出可信生态系统中的各不同参与者的另一框图;图32是可信云计算系统的示例性非限制性实施方式的一些层的代表性视图,在该计算系统中,不同构件可以由不同或相同实体来提供;图33是一示例性非限制性过程的流程图,该过程用于以利用后期绑定向发布者提供对数据的受控选择性访问的方式来向数字保险箱应用发布文档;图34是用于订阅置于数字保险箱中的材料的示例性、非限制性过程的流程图;图35示出使用数字托管模式来通过一个或多个数据中心为企业实现安全外联网的可信云服务的示例性、非限制性的实施方式;图36是示出基于可信云服务生态系统的另一示例性非限制性场景的流程图,在该生态系统中,赋予订阅者对由CSP存储的经加密数据的选择性访问权;图37是示出应用响应可以基于登陆信息对订阅者特制的另一流程图;图38是示出安全记录上传场景的另一流程图,该场景可以针对单方或多方来实现;图39是示出由可信云服务生态系统使能的、对经可搜索地加密的数据存储进行 基于角色查询的示例性、非限制性的另一流程图;图40是示出多方协作场景的流程图,在该场景中,企业向外部企业提供对其经加密数据中的一些的访问权;图41是示出多个企业间的多方自动搜索场景的流程图;图42示出可以针对可信云服务实现的示例性、非限制性的边缘计算网络(ECN)技术;图43是示出根据可信云服务生态系统的密钥生成中心的一个或多个可任选方面的框图;图44是包括经可搜索地加密的数据的可信存储的示例性、非限制性实施例的框图;图45是用于订阅的示例性、非限制性过程的流程图,该过程包括确认步骤;图46示出示例性、非限制性确认挑战/响应协议,验证方按照该协议向证明方发出密码挑战。图47是包括经可搜索地加密的数据的可信存储的另一示例性、非限制性实施例的框图;图48是用于订阅的示例性、非限制性过程的流程图,该过程包括确认步骤;图49示出另一示例性、非限制性验证挑战/响应协议,验证方按照该协议向证明方发出密码挑战;图50是用于提供服务(包括盲指纹化(blind fingerprinting))的一个或多个实施例的总体环境的框图;图51是示出非限制性场景的框图,在该场景中,多个独立的联合信任覆盖或者数字托管可以并排存在,或者针对分层方式彼此相叠地存在;图52是可信存储的另一示例性、非限制性实施例的框图,该可信存储包括用于针对非授权访问模糊化(obscure)数据的数据分发技术;图53是表示可实现在此处所述的各个实施例的示例性、非限制性联网环境的框图;以及图54是表示可实现此处所述的各个实施例的一个或多个方面的示例性、非限制性计算系统或操作环境的框图。
具体实施例方式概览如在 背景技术中所讨论的那样,发送给网络服务的数据可能造成私密性方面的不适、篡改的可能性等等,例如,当数据被从用户的设备传输给网络应用、服务或数据存储时,用户期望对没有恶意第三方能造成损害的充分保证。按照定义,用户已失去对数据的控制。因此,所期望的是增加信任,使得数据的发布者和/或所有者愿意交出对其数据的物理控制,同时相信在网络中,除了当被该发布者或该所有者或如基于请求者身份所验证的被授予了特权的任何人访问时之外,其数据都将保持私密性和不受损。就此,留下了以下问题云服务或网络存储提供者均不能够有效地缓解对数据(当存储在云中时)的安全性、私密性以及完整性的问题和需要。简言之,用户关心在如下方面有更高的信任当交出对存储媒介的物理控制时,他们的数据仍然是安全而私密的,并且这种障碍已显著防止企业和消费者经由第三方网络服务和解决方案采用重要数据的备份。本文中所使用的术语“网络存储提供者”包括但不限于内容递送(或分发)网络(⑶N)、混合场景(例如,跨企业存储、云存储和/或⑶N)、和/或更宽泛的联合场景(例如,横跨多个企业、多个云、或多个⑶N)、或前述的任何组合。传统上,为了保持数据安全,将数据锁藏或保持其隐秘,例如,在物理介质上。就此,数据持有者知道,保险箱(safe)的管理者必须是完全可信方,或对保险箱的内容没有访问权。就此,尽管云服务的前提是顾客不必需要精确地知晓他们的数据物理上位于何处,也不能完全忽略这个问题。这是因为,对谁(什么设备)能够访问该数据、谁看见该数据、谁维护该数据以及如何存储该数据负起全部的责任是一项挑战。相应地,在现实中,由于固有的不信任和各种其他顾虑,顾客非常关心控制云链条中的各种计算和存储设备的第三方是谁。通过消除由人类或外部实体控制的主动管理权(其具有可能与数据持有者或发布者不一致的固有偏向),本文的各实施例提供了一种系统,其中数据被数学变换(例如,被选择性地加密或可搜索地加密)而使得该数据充当它自己的管理者,而不管保存该数据的第三方机器、机制、设备、或容器如何。就此,联合信任覆盖的各种实现允许无容器数据以及对安全性、机密性、防篡改性等的保证,其中使这些保证对该用户是透明的。相应地,在各实施例中,可信云平台被用作可变换框架来通过发布者数学地模糊化数据而使得订阅者能够选择性地访问该订阅者被授权的片段。就此,该平台通过同时保护数据但是还允许授权订阅者的访问,同时保留在某些地方的完整性和安全性,实现充当其自己的管理者的数据。充当其自己的管理者的数据可用带可插入服务的联合信任覆盖实现,如在各实施例中及下面的各具体小节中所描述的。通过不止实现数学模糊化(例如,加密),各实施例向用户和托管代理数据提供如下保证无论数据被存储在何处以及如何存储,该数据均保留如由数据发布者或持有者所适当限定的机密性和完整性要求。就此,焦点从使数据的边界、管道和容器安全切换或扩充到通过提供密码安全信任信封使数据和相关联的元数据安全,其中该密码安全信封在被出示适当能力(例如,密钥)时允许对该数据/元数据或特定子集的访问。在一个实施例中,提供一种用于主存数据的方法,该方法包括,通过在第一控制区域中的计算设备从在第二控制区域中的计算设备接收经模糊化的数据,所述经模糊化的数据是针对第二控制区域中的计算设备的定义的数据集合从数据的数学变换形成的。该方法还包括通过第一控制区域中的计算设备接收经模糊化的元数据,所述经模糊化的元数据是从对所述数据的分析以及该分析的输出的至少一个其他数学变换形成的。接下来,确定一组容器中的哪一个或多个容器具有至少两种不同的容器类型,其中所述经模糊化的数据和/或所述经模糊化的元数据按照所述容器类型来存储。在系统的一种非限制性实现中,一个或多个数学变换组件由数学变换算法提供者至少部分地分发,该数学变换算法提供者是独立于用于发布数据和元数据或订阅数据和元数据中的至少一项而生成数学变换断言信息(例如,密钥信息)的生成器而实现的。该一个或多个数学变换组件基于该生成器所生成的数学变换断言信息来执行至少一个可搜索数据模糊化算法(例如,可搜索加密)或可搜索数据揭示(例如,可搜索解密)算法。独立于该生成器和该一个或多个数学变换组件而实现的网络服务提供者针对由该一个或多个数学变换组件模糊化的数据或元数据实现网络服务,并且该网络服务提供者包括数据容器管理组件,该数据容器管理组件基于该网络服务的等待时间要求、数据可靠性要求、距数据消费的距离要求、或数据规模要求中的至少一个来管理由该至少一个数学变换组件模糊化的数据或元数据被存储在何处。 在需要时,或在预期需要时,作为管理者的数据按照精细的或指定的粒度等级而来提供对数据的访问权利,而不是需要对数据的给定集合的全部的权利。云存储提供者处的操作员工也不能查看、修改、篡改或删除数据而不被检测,除非这种查看、修改、篡改或删除时根据被授予该操作员工的能力而明确授权的,诸如服务器日志的维护、或对元数据的某些其他有限制的操作来计划存储能力等等。此外,无容器数据使能促进篡改防止的抢先复制(proactive replication),否则篡改防止是传统系统无法充分解决的要求。在一个实施例中,联合信任覆盖是用以下组件中的一个或多个实现的云数据服务(⑶S)或云存储提供者、密码技术提供者(CTP)和密钥生成中心(CKG)。⑶S可由任何存储提供者提供,即,无容器数据不需要特定的容器。CTP也可由任一方提供,只要该方与CDS在分开的控制区域中操作,无论是基于用于实现CTP的开放说明还是该CTP的专有实现。分离密钥生成功能以及使数学原理(诸如加密原理)经受公开检查鼓舞了如下信心CTP的方法没有偏向,并且可由企业或单个用户实现,或外包到具有CTP专家的第三方。而且,专有版本、用于公司的开放版本、用于政府或统治的开放或闭合版本、基准开源版本、或其他类别均可以被创建以供给定实体预封装使用或实现。CKG实体根据由该CTP指定的技术来生成密钥信息,并且也作为该联合信任覆盖的分开的组件而被提供(然而,取决于FTO的给定实现想要的信任水平,CKG也可与其他组件相组合)。在各实施例中,尽管CKG可以是中心式实体,然而,本文所使用的“中心”是一种逻辑参考,而不是中心式实体的指示,因此,该CKG也可以是分布式的以及联合式的。CKG可服务单个实体或多个合作者,例如,配药企业之间的多合作者协作以根据来自所协定的CKG的密钥交换来共享和访问信息。因此,使用FT0,通过将能力分开,维持了信任和机密性,从而防止了在无明确授权的情况下对所存储的信息、日志或访问模型的洞察,而且还允许篡改检测和完整性,例如,验证。例如,服务提供者不能修改或删除数据而不被检测。具有非抵赖(non-repudiation)的审计能力使得顾客能够舒服地对数据放手并且确保没有人意外地或有意地干扰该数据。日志也具有与数据和元数据相同的保证。结果“确认”是可包括在FTO实现中的另一个特征,在下面更详细地进行了描述。确认(validation)确保云不能扣留向它索要的数据,例如,在被索要三个文档时不能递送两个文档。通过考虑CKG和执行对数据的确认的任何服务的分离的实现,以及通过将数据与基于被授予应用服务提供者的能力而接收、更改、检索、更改、扩充或删除该数据或元数据的应用服务提供者分离,可使分离的概念再进一步。这还具有根据当时的访问特征、经更新的安全模型、经更新的角色、一天中的时间等来维护应用能力的附加益处。将上述特征(诸如在下面更详细地在各实施例中描述的)中的全部甚至一些进行组合提升了缓解对数据的云存储的顾虑的可能性。在企业层面,企业能够以粒度的方式来拥有政策并控制实施,即使数据和应用被主存在云中。该系统可与企业安全基础结构,诸如身份元系统(例如,主张、身份生存期管理、活动目录等),相结合。企业可按照需要而被暴露于尽量多或尽量少的该FTO的实现。如本文所述的数据服务的提供涉及允许具有成本效益并且安全和私有的解决方案的存储和密码技术的各种组合和置换。例如,下面更详细地描述的各可任选实施例实现了包括保留大小的加密、可搜索加密和/或被称为应用证明(Proof of Application)的密码技术(参见一般技术)的数据保护技术。这样的实施例允许用于外包的云数据保护、灾难恢复或分析的新商业场景。如在背景技术中讨论的,传统系统均未以没有丧失顾客的私密性或安全性需要的方式实现云或网络数据服务。对于这一点,为了消除围绕网络服务的常规供应的信任障碍,提供实现上面标识出的目标以及在下面描述的各个实施例中强调的其他优点的可信云计算和数据服务生态系统或框架。术语“云”服务一般所指的概念是,服务不是本地地从用户的设备执行,而是从可通过一个或多个网络被访问的远程设备来递送。由于用户的设备不需要理解在一个或多个远程设备处所发生的事情的细节,因此服务从用户的设备的角度看上去是从“云”递送的。在一个实施例中,系统包括密钥生成器,该密钥生成器生成用于发布或订阅数据的密钥信息。与密钥生成器独立地实现的密码技术提供者基于由密钥生成器所生成的密钥信息实现可搜索的加密/解密算法。另外,与密钥生成器和密码技术提供者独立地实现的网络服务提供者提供与由密码技术提供者加密的数据有关的网络服务。在一个实施例中,提供数据存储,其暴露可选择性地访问的(例如可搜索的)经加密数据,其中至少一个发布者向该数据存储发布表示资源的数据。在提供对滥用信任的可能性的划分(division)的情况下,第一独立实体执行密码密钥信息的生成。第二独立实体进而在存储所发布的数据之前基于由第一独立实体生成的密码密钥信息来对所发布的数据进行加密。然后,一组网络或云服务针对向该网络服务的请求基于由资源的发布者或所有者所赋予的后期绑定的所选特权来选择性地访问经加密数据。在其他实施例中,数据存储存储可选择性访问的经加密数据,其中订阅者订阅经加密数据的指定子集。第一独立实体基于与订阅者相关联的身份信息来生成密码密钥信息,并且第二独立实体基于由第一独立实体生成的密钥信息来执行该指定子集的解密。网 络服务响应于订阅者的请求,并且基于由所指定子集的发布者或所有者所赋予的后期绑定的所选特权来提供对经加密数据的选择性访问。
就此而言,术语“发布者”和“订阅者” 一般分别指发布或订阅可信云服务的数据的任何人。然而在实际中,根据行业、领域或可信云服务生态系统的应用和数字托管模式,发布者和订阅者将担任更具体的角色。例如,在整个系统的数据的上下文中,通常仅有一小组订阅者将具有访问该数据的特权。对于以数据为上下文的示例,经加密的数据存储的审计者基于该审计者对该数据的角色而具有某些能力,以确保满足某些要求,诸如备份频率,而不对该内容本身具有被授予的访问权。在一个非限制性实施例中,用于主存数据的方法包括通过在第一控制区域中的第一计算设备从在第二控制区域中的第二计算设备接收经加密的数据,该经加密的数据是基于密码密钥信息根据可搜索加密算法针对该第二计算设备的定义的数据集合从对数据的加密形成的;通过该第一计算设备接收经加密的元数据,该经加密的元数据是基于该密码密钥信息从该数据的分析以及该分析的输出的加密形成的;以及从其中存储该经加密的数据或该经加密的元数据的至少两个不同的容器类型的容器自动地确定容器。接收陷门数据,该陷门数据允许按照该陷门数据的至少一个密码陷门的定义来允许对该经加密的数据或元数据的可见访问。 如果满足该多个容器的预定义条件,则存储经加密的数据或元数据的容器可被自动切换或改变。例如,如果某些数据或元数据变成对顾客有高优先级,则可将它从更慢的、更长期的存储移动到具有低访问等待时间的敏捷容器。或者,可能因为其他效率原因而移动、复制或删除数据或元数据,例如,基于与经加密的数据或元数据相关联的存储大小、基于为经加密的数据或元数据指定的访问速度要求、基于为经加密的数据或元数据指定的恢复可靠性要求、基于与具有对经加密的数据或元数据的访问权的一个或多个设备的邻近性
坐寸ο在另一非限制性实施例中,系统包括至少部分由密码技术提供者分发的密码组件,该密码组件是独立于生成用于发布数据和元数据或订阅数据和元数据的密钥信息的密钥生成器而实现的,该密码组件基于由该密钥生成器生成的密钥信息来可搜索地加密数据和元数据或可搜索地解密数据和元数据。该系统还可包括网络服务提供者,该网络服务提供者是独立于该密钥生成器和该密码组件而实现的,该网络服务提供者提供关于由该密码组件加密的数据和元数据的网络服务,该网络服务提供者包括数据容器管理组件,该数据容器管理组件基于数据等待时间要求、数据可靠性要求、距数据消耗的距离要求、或该网络服务的数据规模要求来管理由该密码组件加密的数据或元数据被存储在何处。该密钥信息可包括能力信息,该能力信息定义关于由该密码组件加密的数据或元数据的访问特权。该能力信息可被后绑定以使得最新的数据访问特权被授予给定订阅者。在另一非限制性实施例中,计算系统包括存储可选择性地访问的加密数据或元数据的数据存储,其中发布者向该数据存储发布标识资源的数据或元数据;生成密码密钥信息的第一独立实体;以及基于由该第一独立实体生成的密码密钥信息在存储到该数据存储中之前加密所发布的数据或元数据的第二独立实体。该系统提供网络服务,该网络服务基于由资源的发布者或所有者所赋予的后期绑定的所选特权来针对向该网络服务的请求来允许选择性地访问该经加密的数据。就此,该系统对容器类型是不可知的,并且因此该数据存储包括不同容器类型的容器并且该数据存储基于由该容器所表示的当前存储资源的分析来自动分发可选择性地访问的经加密的数据或元数据跨越多个容器的存储。在一个实施例中,该“数据”是包括XML有效载荷数据(例如,文本串“迈克尔杰克逊(Michael Jackson)”和应用到该有效载荷的XML标签信息(例如〈/Name〉)的XML数据。可用与该XML数据的该可搜索加密和选择性解密有关的附加元数据来扩充该XML标签信息。就此,用这种方式应用XML标签为结构化的XML数据创建“信任信封”以利用该密码密钥生成实体(CKG)和密码技术提供实体(CTP)的联合来提供各种信任保证,像是机密性、私密性、匿名性、防篡改以及完整性。如同提到过的,本文关于XML数据或元数据的实施例中的任一个也可应用于其他格式,诸如但不限于,JSON> S-表达式(S-Expressions)、EDI等,并且因此XML仅在当前描述的实施例中仅用于说明用途。XML数据还可编码清单信息以定位其他相关片段,如果它是较大文档的分散的片(dispersed silver).因为分散跨不同容器发生的方式,即,一个或多个中间层处理该特定容器的存储细节,所以实现是技术无关的(可以使用任何CKG/CTP)。而且,不同于信任包装,实现还是开放式的,因为除了可搜索加密和确认或验证之外还可应用任何数量的包装,并且新的包装技术变得可适用。还可将标签添加到预先存在的数据和元数据顶上(或通过 扩充该元数据),所述标签帮助调制一致性、轨迹等。如果该数据/信息是XML格式的,则可将这些技术或包装中的任何一个应用到结构化的XML数据从而可选择性地查询该数据以获得对XML片段的访问。目前,XML具有标准格式,即 < 标签“值”〉(〈tag “value”〉)或 < 标签“值”|XML 结尾标签 > (〈tag “value”|XMLend-tag〉)。有利地,使用结构化的XML文档,存在分层地表示该结构的方式以便存在将指向对数字托管模式唯一的CKG/CTP ‘帧’的外部包装。因此,当存在对访问嵌入的片段的需要或期望时,可利用具有该<CKG>和<CTP>包装的现有信任或者可用新的CKG/CTP帧来建立新的信任集合。这可通过标准公约基础结构来提供,然而所选择的具体模式被认为不限于本文所述的技术。就此,无论选择什么特定加密技术集合,本文描述的实施例均使用户能够搜索、提取和解密经加密的数据或元数据的片段、子集或部分。此外,可执行数据拥有机制(代表设备运行的可信第三方)的公开证明来验证所访问的特定XML片段自从被初始创作起未被篡改。本质上,通过各种“装饰”来提供XML片段或完整记录(例如,“有效载荷”)的“受信信封”,所述装饰允许运行全范围信任保证的信任,所述信任保证像是但不限于机密性、私密性、匿名性和完整性。作为可作为该受信信封的一部分在XML标签信息中表示的信息的类型的一个示例,可为各个敏感度层次指定XML文档的片段。例如,可存在具有公开、秘密和绝密段落的文档。具有“秘密”许可的执行搜索和请求访问的人将只获得对公开和秘密段落的访问权。也可使用段落的分类来确定加密机制、密钥和访问政策。例如,可实现不能从无线或远程设备访问绝密内容的策略。类似地,可使用这样的分类来创建关于可以如何存储数据、可以将数据存储在何处、可以将数据存储多久等的策略。例如,可以创建要求必须每天一次地使用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标签数据的子集之前不被删除或修改。验证的示例包括执行检索能力(retrievability)证明以证明不存在对该内容的干预。除了其他可任选的特征之外,在请求访问经加密的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数据或相应的标签数据的给定订阅者授予最新的访问特权。下面提供这些和其他各示例性、非限制性性实施例和场景的进一步细节。用于可信计算和数据服务的无容器数据如在背景技术中提到的,对在由服务组织拥有的远程站点处的敏感企业数据的维护可能使该数据处于从隐私侵犯到数据损失的危险。如针对本文的各实施例所描述的,网络或云数据服务(包括用于数据的可搜索加密技术)被以如下方式提供该方式跨多个实体分发信任以避免单点数据损害,并且将数据保护要求从可存储、处理、访问或检索该数据的容器分离。在一个实施例中,密钥生成器、密码技术提供者以及云服务提供者每个均作为单独的实体被提供,从而允许数据发布者向云服务提供者机密地(经加密的)发布数据的可信平台,并且允许授权订阅者基于订阅者能力对该经加密的数据的选择性的访问。使用可信平台的技术,将数据(以及相关联的元数据)从保存该数据的容器(例如,文件系统,数据库等)分离,从而通过施加用所呈现的能力刺穿的数学复杂度保护罩来允许该数据担当它自己的管理者,所呈现的能力诸如是由如在各实施例中描述的信任平台的密码密钥生成器所授予的密钥。以保持并扩展信任而不需要特定容器来实施的方式,促进对数据或该数据的子集的共享或访问。被应用到该数据的数学复杂度(诸如可搜索加密技术)保护该数据,而不考虑记录该特定位的容器或硬件,即,该数据是被无容器地或不考虑该容器地保护的,并且因此不在损害容器安全性的基础上经受攻击。如果该特定的“保险箱”被破解,内容仍然被保护。图I是用于提供如本文所述的安全的、私密的、以及可选择性访问的网络数据服务的一个或多个实施例的总体环境的框图。为说明性目的,示出多个企业100、102,然而这些技术也适用于单个企业或许多协作企业。在各实施例中,使用如在下面详细描述的联合信任覆盖130,可基于FTO基础结构130共享企业100的策略110以及企业102的策略112的实施120以进行协作。实施120还可由每个企业100、102分开应用。就此,因为,基于信任覆盖130,策略和实施完全在企业100、102的领域内,所以从顾客立场来看实际数据在云140中的位置以及使用什么特定容器142变得无关紧要,除了与顾客实际关心的以下事项以外等待时间、可靠性、服务质量保证、备份、检索事件、大小保证等。 相应地,意识到通过信任覆盖130使数据从保存数据的容器中释放出来,在各实施例中,数据存储管理层150基于对存储资源的实时可用性以及它们的特征的分析来自动地处理顾客所关心的事项,以优化适合顾客需要和期望的容器中的数据存储。存储管理层150是虚线的,指示它的位置也不是关键的。存储管理层150通常不具有访问、查看或改变存储在一个或多个数据存储142中的数据的密码特权,然而可能期望暴露该元数据中的某些(诸如文件大小和文件类型),以促进对顾客将想要在未来如何使用该数据的理解,以使得存储管理层150可做出智能的存储选择。例如,如果给予了存储管理层150足以理解该数据是视频的查看,则存储管理层150可将视频保存在满足流媒体的要求的媒体存储中。图2是示出大体的“作为其自己的管理者的数据”思想的框图。使用在用户或企业控制下的策略和实施,数据和相应的日志被加密并且仅能用被授予用户的具体能力来访问,如在下面更详细地描述的。例如,通常,不具有诸如云服务提供者的操作员工的能力的某人不能查看那、修改、篡改或删除而不被检测,因为他们没有数据特权。使用作为其自己的管理者的数据,策略由数据的所有者/发布者设置,访问由数据本身实施/授权(无论该数据被存储于何处),从而使容器选择多余。信任保证由该数据实施,但是由该所有者/发布者通过描述什么订阅者/顾客能够针对该数据做什么来控制。如图所示,在非限制性实施例中,企业220 “拥有”其关于用户226以及他们对使用企业220的系统资源的使用以及关于外部用户230 (例如,移动工作者)的策略224和策略224的实施222。使用作为其自己的管理者的数据,通过将数据存储在云中,可将实际的数据和/或日志与策略224和实施222分开存储,然而,云200的操作员工210不能查看、修改、篡改或删除该数据和/或日志205而不被检测。图3是用于提供如本文所述的安全的、私密的、以及可选择性访问的网络数据服务的一个或多个实施例的总体环境的框图。一般而言,示出使用联合信任覆盖来分发信任的非限制性示例,计算设备300 (例如,顾客)在第一控制区域310中,计算设备320 (例如,云服务提供者)在第二控制区域330中,计算设备360在第三控制区域390中,在第四控制区域395中提供密码技术提供者,而可在第五控制区域397中提供密钥生成器382。计算设备300、320、360中的每一个可分别包括处理器P1、P2、P3并分别包括存储Ml、M2、M3。就此,如根据各非限制性实施例所描述的,提供用于允许云中的经加密的数据340的技术,以使得可基于访问特权从该云选择性地检索项目450或项目中的部分。就此,可提供一组分析服务370作为待存储的经加密的数据345、347顶部上的层,该层基于来自设备300的本地数据集合305自动地确定在哪里最优地存储被保存在云中的经加密的数据340和经加密的数据342。就此,服务370确保当基于CTP 380/CKG 382联合信任覆盖通过计算设备300检索该数据时,所检索的数据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,所述适配器1030基于传统应用1040和传统容器1035特征执行密码协商、密码变换和高速缓存、版本化、租赁等。这些层和应用可共同利用基于联合信任覆盖的云存储所提供的益处。图11是示出密码包装或信封在数据和/或描述该数据或该数据的特征的元数据上的一般使用的框图。作为示例,可按照可在数学上选择性地访问的方式共同地或独立地加密记录1102 (例如,数据有效载荷)和相关联的元数据和/或标签1100以产生经加密的元数据和标签1110和经加密的记录1112。使用这样的经加密的数据/元数据,可基于数学上可选择性地访问性来执行各种操作1120,例如,数据或元数据的搜索、对数据或元数据的逻辑运算、查询、备份操作、数据的审计等。除了加密元数据1100和记录1102之外,还可将可任选的附加数据作为任何期望目标1114的函数添加到加密封装,或可将可任选的附加标签1106作为加密过程的一部分添加到内容,例如,允许或禁止对例如某类用户的访问的公开或秘密标签。使用这种附加数据1114或标签1116,可执行附加操作1130,诸如完整性
检查、篡改检查、可用性检查等。图12是示出有效载荷1202和标签1200的特定示例,有效载荷1202和标签1200被加密以形成经加密的标签1210和经加密的数据1212以用于操作1220。此外,如所提到的,可用数据1214扩充该数据并且可用标签1216扩充该标签,所述数据1214和标签1216可促进一组附加操作1230。在图12的示例上构造的图13是示出周围联合信任覆盖的示例。就此,可基于经受对稳健性的公开检查的开放方法实现没有后门的CTP 1300。基于CTP1300,可产生CKG1350以处理对用于执行操作1330 (例如,搜索、逻辑运算或查询、备份、审计、篡改检查、完整性检查、可用性检查等)的功能(例如,密钥1340)的请求。因此,云数据服务提供者1320提供服务,例如,经加密的元数据1310和经加密的数据1312的存储。在一个可任选的实施例中,该云按照对数据或访问模式无知(blind)的方式主存该数据。
图14是示出其中使用信任覆盖将记录以及索引加密并上传到云的实施例的框图。就此,可搜索地加密所述记录和索引以使所述索引可作为对相关联的数据的第一可见层而被选择性地访问。然后,基于对所述索引的搜索,可标识匹配一个或多个给定索引的各个内容或记录,然后该用户能够或不能基于特权来访问该匹配内容和记录,从而充当对数据的第二保护层——第一是针对搜索或其他操作而对索引的访问,而第二是对数据的访问。就此,可对该数据和相关联的元数据的不同部分应用任何数量的分层式密码包装。如图所示,顾客1400可具有各个记录1402,在1430可从记录1402生成经加密的索引1404。在1440将记录1402和经加密的索引1404上传到云1410并作为记录1412和经加密的索引1414存储在云1410中。为了检索记录1412,例如,基于经加密的索引1414,在1450,顾客1400从云1410接收用至少一个签名1422签名的记录1420,并且在1460可检查所述至少一个签名1422。图15示出客户端能够如何利用联合信任覆盖架构来生成并上传经加密的索引到经加密的数据上以获得更丰富的云存储体验。该联合信任覆盖架构涉及将权力分开以生成可信密码生态系统,并且在下面更详细地进行了描述。FTO 1585是一个生态系统,该生态系统通过将关于云或其他存储中的无容器数据进行的数学变换的片段分开而使顾客1575受益,并且如本文别处所述,该生态系统包括云数据服务(⑶S) 1580、密码技术提供者(CTP) 1570和密钥生成中心1590。作为示例,顾客1575可具有文档1500,各种关键词1510与文档1500相关联。从CKG 1590检索用于加密的公开参数1565,而从CTP1570检索用于执行数学变换的技术。为了执行上传,文档1500被加密(1520)并上传(1630)到云中的经加密的文档存储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基于密钥1640将其解密以返回一个或多个文档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可包括对认证、授权、模式、历史、踪迹、一致性等进行编码的可搜索元数据。它还可编码清单信息以定位其他相关片段,如果它是较大文档的分散的片(dispersed silver)。独立于能够使用任何所协定的CKG/CTP与能够在新技术变得可适用时除了可搜索加密和PDP之外添加其他包装的技术使灵活的架构能够处理任何类型的云场景。还可扩充或添加XML标签来调制一致性、轨迹等。当将其与数据散布技术组合时,实现了关于机密性、私密性、匿名性和完整性的强保证。可使用此“受信信封”来装饰具有附加元数据的任何有效载荷,所述附加元数据可包括模式信息、一致性提示、版本和轨迹、机密等级(例如,在使用“群计算(ClX)Wdcomputing)”时)、用于从片的其他对等体重构此有效载荷的定位符等。在一个非限制性应用中,受信XML提供“松格式绑定”来生长该生态系统以催化网络效应。FTO (将这些技术和密钥管理器参数化)和XML的通用交换格式的组合促进了在适应散布技术、应用、域、场所、统治、格式和其他要求时的更大的灵活性。在另一应用中,用于聚合的当前结算和协调涉及易于出错、省略和欺诈的点到点交换。插入安全和私有数据服务将因此直接使会计、审计等以促进选择性公开以使得可信实体保持可靠的方式受益,并且可允许适当的调节者(顺应、法律)或居间者(冲突解决等)选择性地窥视XML标签以在交易中构造信任的。受信XML的优点在于有效载荷能够在参与者之间编码专有格式,其中存储方不需要知晓或者甚至试图理解该专有格式。受信包装的各层因此增加了大量的技术和商业价值以及法律和顺应价值和统治实体价值。在另一应用中,由于(a)不同的不兼容的传统系统和(b)更重要的-病人对现有解决方案提供者的粘性的丧失,健康护理系统集成是繁重的。通过引入云数据服务作为交换所(Cleaning House),并引入受信XML作为交换格式,这些现有解决方案提供者能够将此当作维持该粘性的途径,同时还利用由XML促进的通用格式。我们描述了我们的使用启用FTO的“路由器”(“网关/监护者”)和利用受信XML的方法如何是(a)路由器可以做其事情而不需要了解路由所需的更多知识,(b)路由器具有对错误和不良行为的更少的自由度,(C)由于后期绑定,消除了复杂的密钥管理。此外,可添加或扩充标签或可将附加的元数据应用于XML文档以指示内容具有各种敏感等级。例如,可存在具有公开、私密和绝密段落的文档。例如,具有“秘密”许可的执行搜索和请求访问的人将只具有对公开和秘密段落的访问权。也可使用段落的分类来确定加密机制、密钥和访问政策。例如,绝密内容不能从无线或远程设备访问。类似地,可使用所述分类来创建关于可如何存储数据、可在何处存储数据、可存储数据多久的策略。例如,医疗数据必须使用AES 256加密每天一次地备份到可信数据中心中的安全服务器。图20是示出在一实施例中用于托管受信XML的示例性过程的流程图。在2000,第一控制区域中的计算设备从第二控制区域中的计算设备接收经加密的XML数据,该经加密的XML数据包括经加密的XML有效载荷数据和经加密的XML标签。该经加密的XML数据是从基于密码密钥信息根据可搜索加密算法对该第二控制区域中的该计算设备的定义的XML数据集合的加密形成的。在2012,接收基于密码密钥信息加密的辅助元数据,其中该辅助元数据是从对经加密的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数据的子集。下面针对补充上下文提供对无容器数据描述的各附加实施例和关于联合信任覆盖的细节。可信云服务生态系统的补充上下文如上所述,独立的数据保护和密码技术被以各种方式组合以提升关于数据(例如,作为在诸如由CSP维护的远程站点处的数据存储的)的私密性、信任和安全性。尽管下面以一般数据或网络服务为上下文来描述一般生态系统,然而这种一般数据或网络服务可被用于用于在远程站点处存储数据的上述场景中的任一个或多个。为网络数据服务提供数字托管模式,包括用于存储在云中的数据的可搜索加密技术、跨多个实体的分布信任以避免单个实体造成的损害。在一个实施例中,密钥生成器、密码技术提供者和云服务提供者每个都被配备为单独的实体,从而使得数据的发布者能够机密地(经加密的)将数据发布给服务提供者,并且然后选择性地将经加密的数据暴露于请求该数据的订阅者,该选择性地暴露基于被编码到响应于订阅者请求所生成的密钥信息中的订阅者身份信息。相对于可搜索的加密/解密算法而言,由一个或多个密码技术提供者实现的可搜索的公钥加密(PEKS)方案为任何给定的消息W生成陷门TW,使得TW允许检查给定密文是否是对W的加密,其中TW不揭示关于明文的任何附加信息。根据下面所述的各个实施例,PEKS方案可以用于基于包含在诸如经加密的消息之类的经加密的数据(例如消息文本)中的关键词对所述经加密的数据确定优先级或进行过滤,然而PEKS的使用是教导性的,因为加密技术有所不同且不断演进。相应地,取决于所考虑的场景和所涉及的加密折衷(复杂性、速度、压缩等),其他加密技术也适用。因此,可以通过释放相应关键词的能力(有时被密码员称为“陷门”)来给数据接收者提供对经加密数据的与关键词有关的部分的所选访问。通过这种方式,可以在经加密的数据中检查这些关键词,但是保证不会从订阅者获悉比该订阅者的能力所允许的更多东西。为了避免质疑,尽管在此处的一个或多个实施例中将PEKS公开为用于实现可搜索加密的算法,但是能够理解,存在多种可替代的算法以用于实现可搜索加密。PEKS的一些示例性的非限制性的替代方案例如包括不在意(ObliviouS)RAM。因此,在此所使用的术语“可搜索加密”应当不限于任何一种技术,并且因此是指宽范围的如下加密机制或加密机制的组合所述加密机制允许基于对经加密数据的搜索或查询功能来选择性地访问经加密数据的子集。可任选地,可以作为附加好处向生态系统中的数据的订阅者和发布者提供对结果的确认和/或验证。确认提供一种方式来确认由于针对数据的子集的订阅请求而接收的数据项目是正确的项目集合,即数据的本应该接收的正确子集实际已经被接收。密码领域的一种技术是数据拥有证明(PDP),然而,为了避免质疑,PDP仅仅是可以被实现的一种示例性算法,并且可以使用实现相同或类似目标的其他算法。数据拥有的可证(Provable)或证明(Proof(s))是关于如何频繁、有效和安全地验证存储服务器忠实地存储了其客户端的可能大的外包(outsourced)数据。存储服务器被假定为在安全性和可靠性方面都不受信任。对结果的验证提供用于检查项目本身的内容的附加机制,即以保证结合订阅请求所接收的项目未曾被任何未授权实体篡改过。密码领域的验证的一个例子是数据拥有证明(PDP),然而,为了避免质疑,PDP仅仅是可以被实现的一种示例性算法,并且可以使用实现相同或类似目标的其他算法。在密码领域中已知的另一技术是检索能力(retrievability)证明(P0R),然而,为了避免质疑,POR仅仅是可以被实现的一种示例性算法,并且可以使用实现相同或类似目标的其他算法。POR是一种由服务提供者或数据主控者(证明者)对客户端(验证者)进行的紧凑证明,其表示目标文件F在客户端可以完全恢复文件F并且未发生篡改的意义上而言是完整的。作为附加的选项,生态系统可以实现匿名凭证的概念,由此发布者可以以匿名方式上传关于其自己的信息而不暴露关键细节,并且订阅者可以受其能力的限制,使得其不能被暴露或被提供对由发布者上传的关键细节的访问。通过这种方式,发布者或订阅者可以于系统交互,同时仅仅暴露其希望向第三方暴露的那样多的信息。常规的web服务已经限于静态客户端服务器布置和用于访问web服务的静态地定义的用户策略。然而,当根据经常改变和演进的复杂商务和其他关系来构思许多发布者和订阅者时,这样的常规web服务模型不能是灵活的或者足够安全的。因此,在各个实施例中,启用后期绑定,使得数据和内容的发布者和/或所有者可以基于订阅者是谁、基于订阅者的能力以及基于他们在寻找什么(例如基于针对数据的请求中所使用的关键词)来改变对经加密内容的访问特权。因此,订阅者能够选择性地访问的东西与发布者和/或所有者对访问特权的改变一致地动态改变,因为订阅者能力被编码在由运行中的密钥生成器所提供的密钥信息中。因此,为给定请求在为该请求生成密钥的时刻定义订阅者特权,并且因此该订阅者特权总是反映关于来自订阅者的请求的当前策略。 类似地,可信云服务的服务器的管理员可以被许可观察由该服务器处理的行为和数据事物的日志,但是也可以被限制为不能看见任何客户姓名或信用卡信息。因此,订阅者的身份可以是限制订阅者可以访问的数据类型的基础。在此,在构建对云服务的信任的上下文中提出可信生态系统的各种非限制性实施例,然而,在此提供的对生态系统的信任构建是更一般的,并且不限于应用于云服务。更确切而言,在此所述的实施例类似地适用于企业数据中心内的不同服务器或参与者。因此,尽管数据可能从未离开给定实体,但是在此所述的用于构建信任的技术同样适用于企业内的不同过程在单独控制区内操作的情况。在没有跨所有企业过程的可见性的情况下,可能造成类似的不信任,就好像参与者置身于企业之外。例如,服务器云即使在处于管理员的控制之下时或者管理员可能不注意或者为恶意时可能在企业内遭到破坏。除了适用于云中的经加密数据,本发明的各种技术还可以适用于存储在膝上型计算机或其他便携式设备上的数据,因为膝上型计算机可能丢失或失窃。在这种情况下,该设备可能最终为过于好奇或者恶意实体所占有,然而,在此所述的适于保护云中数据的相同技术还可以用于保护服务器或膝上型计算机上的数据。如果本地数据是经加密的,则在没有适当订阅者凭证的情况下,窃贼将不能理解经加密的本地数据,从而不能出示适当角色或能力来访问该数据。图24是根据一实施例的可信云服务框架或生态系统的框图;该系统包括可信数据存储2400,该受信数据存储100用于存储可搜索的经加密数据2410以及订阅者请求经历确认和/或验证的结果。就此而言,网络服务2420可以构建在安全数据2410之上,使得数据的发布者保留对赋予给例如通过网络服务2420请求该数据的订阅者2440的能力的控制。发布者2430还可以是订阅者2440,并且反之亦然,并且数据的所有者2450也可以是发布者2430和/或订阅者2440。作为一些常见角色和可以定义的相应能力集合的例子,特殊类型的发布者2430和订阅者2440是管理员2460和审计者2470。例如,管理员2460可以是对数据2410的特殊许可集合,以帮助维护对可信数据存储2400的操作,并且审计者实体2470可以在审计的范围内帮助维护某些数据的完整性。例如,审计者2470可能订阅含有攻击性关键词的数据2410的消息,在这种情况下,审计者2470在根据所赋予能力受到许可的情况下可以在数据2410的消息包含这样的攻击行关键词时受到提醒,但是不能阅读其他消息。就此,可以基于如下能力构建无数场景将发布者数据置于数字托管之下,使得可以分发实现对该数据的选择性访问的密钥。例如,发布者向生态系统认证并且指示要上传到该生态系统的文档集合。该文档基于从生成密钥信息的单独的密钥生成器所接收的密码密钥信息根据可搜索加密算法被加密。然后,经加密数据被传输给网络服务提供者以供存储该经加密数据,使得经加密数据可以根据基于请求设备的身份信息赋予给该请求设备的所选特权的后期绑定被选择性地访问。将密码技术提供者同经加密数据的存储相分离将附加地隔离经加密的数据免受进一步损害。就此,图25是示出了根据可信云服务生态系统的用于发布数据的示例性非限制性方法的流程图。在2500,发布者向该系统认证(例如发布者用用户名和口令、LiVE ID凭证等登陆)。在2510,密钥信息由诸如密钥生成中心之类的密钥生成器生成,这将在下面的
一个或多个实施例中予以描述。在2520,单独的密码技术提供者基于密钥信息对发布者文档集进行加密。在2530,经加密文档与能力一起被上传到例如存储服务提供者之类的网络服务提供者,使得经加密文档可以利用基于请求设备(订阅者)的身份信息所赋予的所选特权的后期绑定被选择性地访问。例如在订阅者侧,订阅者向生态系统认证,并且指示对数据子集的请求(例如对包含给定关键词或关键词集合的文档的子集的查询)。响应于从至少一个订阅者设备对经可搜索地加密数据的请求,密钥生成组件基于与订阅者设备相关联的身份信息生成密码密钥信息。然后,根据在密码密钥信息中所定义的赋予给该订阅者设备的特权,经加密数据的子集被解密。图26是示出根据可信云服务生态系统的用于订阅数据的示例性、非限制性方法的流程图。在2600,用于订阅数据的方法包括认证订阅者(例如订阅者用用户名和口令、LiVE ID凭证等登陆)。在2610,订阅者作出对数据的请求。在2620,密钥信息由独立密钥生成实体基于订阅者请求而生成,其中订阅者的能力可以在密钥信息中定义。在2630,发布者数据的子集基于在密钥信息中所定义的能力被解密。例如,CSP可以对该数据进行解密。在2640,使发布者数据的子集可被订阅者访问,例如订阅者可以基于由所有者/发布者所赋予的可动态定义的能力来对该数据进行下载、查看、处理、改变等等。可任选地,用于加密、解密和密钥生成的技术可以由单独的密码技术提供者来提供,但是由任何参与者来主控。在一个实施例中,订阅者设备的身份信息包括该订阅者的角色。例如,审计者角色、管理员角色或其他预先指定的角色可以被发布者/所有者用作限制或赋予对经可搜索地加密的数据存储的各部分的访问的基础。图27示出了示例性的生态系统,该生态系统示出了密钥生成中心(CKG) 2700、密码技术提供者(CTP) 2710和云服务提供者(CSP) 2720的分离,由此消除单个实体在可信生态系统中造成损害的可能性。就此,客户2730包括数据的发布者和/或订阅者。可选地,CKG2700可以基于例如由CTP 2710提供的参考软件、开源软件和/或软件开发工具包(SDK)来构建,从而使得多方的构建块能够自己创建这样的组件或者对第三方实现这样的生态系统组件感到满意。在一个实施例中,SDK由CTP 2710来提供,并且可以被一个或多个参与者用户用于主控或实现CKG 2700、下面将更详细描述的计算和存储抽象(CSA)和/或密码客户端库。可任选地,SDK可以是从CTP 2710分发给主控CKG 2700的实体。一般而言,CKG 2700,CTP 2710或CSP 2720中的每个都可以根据给定实施方式被细分为子组件;然而总体分离被保留以维持信任。例如,诸如主公钥(MPK)递送2702、客户端库下载器2704、秘密密钥(secret key)提取器2706、信任验证者2708或者其他子组件之类的CKG实体2701可以以子集的形式分开地提供、或者作为集成组件一起提供。诸如用于编码和解码的户端应用2712、替代的 加密技术2714、用于与CKG对接的应用2716、其他密码构建块2718等等之类的CTP实体2711也可以以子集形式分开地提供或者一起提供。此外,可以分别认为CSP 2720是诸如CSP 2722、2726、主控存储服务2724和服务主控2728之类的许多单独的服务提供者,或者这样的服务可以一起提供。能够理解,由可信生态系统中的一个或多个参与者主控的CKG或CKG实例不需要是单个单片实体。更确切而言,CKG可以被分成多个(冗余)实体,这些实体协作以生成密钥,使得操作即使在参与者的小子集离线的情况下仍然可以继续。在一个实施例中,可任选地,参与者的集合即使在这些参与者的小子集已经被对手损害或者以其他方式变为不可用或不受信任时仍然可以整体上受到信任。图28是示出了用于为企业2800执行云服务的可信生态系统的其他好处的另一架构图。例如,企业2800可以包括不同组织2802、2804、2806、2808。该图中的不同组织2802、2804、2806、2808示出了 组织可以采取相对于实现用于使用系统或密钥生成的策略而言那样多或那样少的所有权。例如,组织2802实现其自己的策略2812,但是使用集中式密钥生成器2822,而组织2804选择实现其自己的密钥生成器2824并且实现其自己的策略2814。组织2806也实现其自己的策略,但是依靠第三方CKG 2826,而组织2808选择依靠第三方策略提供者2818和独立CKG 2828。就此,为了发布数据,发布者2840基于来自CKG 2822的输出获得用于对数据进行加密的公开参数2835。基于公开参数,数据在2845由发布者设备2840使用独立密码技术提供者来加密。经加密数据被上传到存储抽象服务2850,该存储抽象服务2850隐藏与由诸如CSP 2872、2874、2876或2878之类的一个或多个CSP 2870存储经加密数据相联系的存储语义。在订阅者设备2860上,对数据的请求导致从CKG 2822生成私有秘密密钥2865。私有秘密密钥2865包括如下信息该信息使得订阅者设备2860能够通过在2855对数据进行解密来选择性地访问经可搜索地加密的数据。再次,从CSP 2870检索数据的语义被存储抽象服务2850隐藏。而且,被赋予给订阅者设备2860的特权是由于由发布者/所有者所赋予的能力的后期绑定而产生的特权的当前集合。从图28中能够理解,要么为企业、要么为消费者的多个数据所有者可以如在此所述的那样参与可信生态系统以建立受信关系。在这种情况下,每个所有者都可以主控或控制其自己的CKG(例如组织2804的CKG 2824),使得对数据的请求或查询被转发给相应CKG以从所请求数据的所有共有者收集所需的密钥。图29是示出了通过存储抽象层2910来适应于不同存储提供者的另一框图。利用可信生态系统,分别具有客户端应用2940、2942的桌面2930、2932可以如上所述的那样发布或订阅数据,从而向密钥生成中心2920发起对用于对数据进行加密和解密的密钥信息的请求。类似地,服务2944、2946、2948也可以是生态系统中的发布者和/或订阅者。就此,为了由私有云存储2900、SQL数据服务存储2902、或简单存储web服务2904等等中的任一进行存储或提取,存储抽象服务2910 (如名称所隐含的那样)抽象出关于远离客户端的一个或多个特定存储库的细节。就此,为了避免质疑,图29针对多种情况。在一种情况下,图29通过存储抽象服务(有时亦称计算和存储抽象(CSA))涵盖了存储提供者(将其抽象为个体)的非居间化。另夕卜,图29涵盖了如下场景数据被分割和/或扇出(例如为了冗余)为可以为相同或不同类型的多个后端存储提供者的场景,使得原始数据即使在后端存储提供者之一(或少数)意外地或无意地删除或改变其数据副本时仍然可以被重构。
图30示出了与包括服务器操作系统(OS) 3014和存储服务3012的存储抽象服务3010相联系的存储的其他方面,该存储抽象服务3010抽象私有云存储3000、SQL数据存储3002、简单存储web服务存储3004等等的存储细节。客户端可以是分别具有客户端应用3040和3042的桌面3050或3052。密钥生成中心3020可以包括在服务器OS 3024上执行的密钥生成器应用3022。就此,具有活动目录3036、服务器OS 3034和安全令牌服务(STS)3032的组织3030可以是生态系统中的发布者或订阅者。就此,存储传输格式(STF)是标准交换格式,其可以用于在多个库的范围内交换经加密数据和元数据。例如,组织3030可能希望在存储服务提供者3000、3002或3004间传输电子邮件数据,在这种情况下可以使用STF。图31是示出了可信生态系统3120中的各个不同参与者的另一框图。如上面所提到的那样,有利地,企业3100可以将数据量的存储和维护从现场推卸给云存储服务提供者,其中云存储服务提供者更适于处理这样的数据量,同时维持数据将不会对错误的订阅者解密的舒适性,因为企业维持对针对经加密数据所定义的能力的控制。例如,组织3102可以操作诸如Sharepoint之类的协作应用3112。就此,组织3102可以为sharepoint数据建立数字托管或者受信域。策略3132和CKG 3134可以由第一数据中心3130来实现,该第一数据中心3130用于通过为受信域定义密码密钥信息3145来建立安全空间。然后,例如像发布者3114那样行动的另一组织3104可以基于从CKG 3134获得的密钥信息对数据进行加密,此时,第二数据中心3140的计算和存储抽象组件3142处理在第三数据中心3150处(例如在CSP 3152中)存储经可搜索地加密的数据的细节。反过来,当组织3104的订阅者3116请求数据时,私有密钥或秘密密钥信息作为提取3165的一部分被递送给订阅者3116。接着,基于包括为订阅者定义的能力的私钥信息,由该订阅者所请求的数据在3175被解密,其中假定该订阅者具有特权,并且抽象层3142再次处理底层存储3152的细节。图32是可信云计算系统的示例性非限制性实施方式的一些层的代表性视图,在该计算系统中,不同构件可以由不同或相同实体来提供。在层栈的底部是数学和密码库3286,其用于实现加密/解密算法。可以提供各种密码方案的定义的抽象作为细节库3284与可搜索密码方案3286的实际实施之间的中间层3282。层3282、3284和3286 —起形成较大的密码服务层3280,该密码服务层3280在与抽象层3260组成软件即服务(SaaS)应用生态系统时形成实现受信数字托管3270及其存储的基础。抽象层3260包含用于实现数字托管模式的基本语言,即诸如SetUp O (设置O )、Encrypt O (加密O )、Extract O (提取O )、Decrypt ()(解密())之类的命令。处于抽象层3260之上的是层3250,该层3250捆绑到各种更具体的平台技术(例如SDS、Azure、备份/归档、RMS、STS等等)中。处于捆绑到各种具体平台技术中的层3250之上的是使用受信数字托管3200的各种SaaS应用。示例性的非限制性图示示出了 数字托管应用3200可以由单个公司3210或由伙伴3230或者由二者来实现。例如,公司3210可以实现诸如下列服务高性能计算(HPC)、eDiscovery和合法发现3214、Live服务3216(例如DBox)、备份/归档即服务3218、审计日志一商业过程和监控3220、或者其他云服务3222。伙伴3230云进而实现诸如下列服务eLetterOfCredit 3232、HPc即垂直面(Verticals)月艮务3234、eHealth服务、安全外联网3238、顺应3240、诉讼支持3242等等。基于可信云服务生态系统的场景由于密钥生成器、密码提供者和云服务提供者的分离所固有的增加的信任,以及本文所述的其他技术,可在云中实现任何类型的应用。就此,在已经实现了这样可信云服务 生态系统的情况下,可以实现丰富的服务和场景的集合,这些服务和场景利用在此所述的可信生态系统的一个或多个好处。例如,图33是一个示例性非限制性过程的流程图,该过程用于以利用上述后期绑定向发布者提供对数据的受控选择性访问的方式来向数字保险箱应用发布文档。在3300,对设备进行认证(例如设备用用户名和口令、口令凭证、生物凭证、Live ID凭证等等登陆)。在3310,文档被上传并且标签被输入。在3320,所述标签被发送给托管代理,并且作为响应,从托管代理接收经散列的标签。就此,所述标签可以如所提到的那样来提供,或者可替代地可以通过全文索引来自动地从有效载荷(记录、文档)中提取。在3330,客户端利用发布者的密钥信息对文档进行加密,并且所述文档与订阅者相对于这些文档的能力一起被发送给安全数字云存储提供者。在3340,安全数字云存储提供者例如将经加密的团块(blob)发送给存储服务(例如相对于存储抽象层)。图34是用于订阅置于数字保险箱中材料的示例性、非限制性过程的流程图。在3400,订阅者被认证,并且客户端设备将标签发送给托管代理,该托管代理在3410作为响应发回经散列的标签。然后,客户端在3420将经散列的标签发送给数字保险箱服务,并且经散列的标签被解释以了解在3430,该客户端是否有权让其搜索请求全部或部分地由存储服务来执行。图35示出了使用数字托管模式来通过一个或多个数据中心为企业实现安全外联网的可信云服务的示例性、非限制性的实施方式。如所提到的那样,可信计算生态系统可以包括密钥生成中心3500,该密钥生成中心3500与密码技术提供者(CTP) 3510分开地实现,该密码技术提供者3510提供参考实施方式以供用于实现与生态系统一致的同一个或多个云服务提供者(CSP)3520分开实现的密码技术。在安全外联网的示例性非限制性的实施方式中,3580示出了 企业维护共享库3570 (例如SharePoint)和设计或分析应用的库3560以供与共享库3570中的文档结合使用。商业软件3540 (例如Sentinel)可以监控具有桌面3550的计算机的应用或服务器性能等等。就此,在可信云服务生态系统中,当使用桌面3550的订阅者从存储中寻求可以选择性地访问并且被加密的信息时,安全令牌服务3530可以递送某些信息以标识出订阅者3582,并且CKG 3500可以通过第一数据中心的CKG层3502的接口被咨询,如3584所示。CKG 3500返回密钥信息,然后,该密钥信息如3586所示的那样可以用于通过存储抽象服务3522选择性地访问由数据服务3524所持有的数据。因此,任何类型的数据都可以在企业的范围内根据企业中的订阅者的角色来选择性地共享。图36是示出了基于可信云服务生态系统的另一示例性非限制性场景的流程图,在该生态系统中,给订阅者提供对由例如企业内的CSP存储的经加密数据的选择性访问。最初,订阅者设备还未获取访问经加密数据的特权。然而,通过在3600例如通过与应用交互来作出对一些或全部经加密数据的请求,应用自动地与相应STS通信以用于在3610获得声明(Claim)(密码学中的用语)。在3620,应用与CKG通信以获得密钥信息,该密钥信息编码有关于订阅者的能力的信息(能力有时在密码学的用语中被称为陷门,但是术语“能力”不限于通常出现术语“陷门”的上下文)。最后,应用在3630将密钥信息提供给CSP,CSP允许以订阅者能力所允许的程度来对经加密的数据进行搜索或查询。图37是示出了应用响应可以基于登陆信息适应于订阅者的另一流程图。例如,在3700,用户ID信息被应用接收。在3710,应用从STS获得相关声明。在3720,基于用户充当的与用户ID信息相关联的一个或多个角色,体验可以被调整为与那些角色的特权/限制相称。例如,作为公司的经加密数据的视图来呈现公司的主要财务部门的用户体验可以并且应当是与提供给邮件室雇员的公司经加密数据的视图不同的用户体验。图37可以适用于单方或多方登录场景。图38是示出了安全记录上传场景的另一流程图,该场景可以针对单方或多方来实现。在3800,记录和关键词被应用接收,其例如是由具有该应用的设备的用户提供或指定的。在3810,应用获得主公钥(MPK)并且应用公钥加密关键词可搜索(PEKS)算法。MPK可以可任选地被应用高速缓存。在3820,应用例如通过存储抽象层将经加密的记录输入到CSP库中。图39是示出了对经可搜索地加密数据存储进行基于角色查询的示例性、非限制性的另一流程图,该数据存储由可信云服务生态系统来实现,例如以供由单方进行自动搜索。在3900,联合查询被应用接收或发起。在3910,应用从STS获得相关声明。例如,STS将用户的角色映射到合适的查询组,并且返回给定角色的合法查询集合。在3920,应用提交经过滤的声明和查询,使得可以有效地提交对应于该查询的声明、而不是所有的声明。可任选地,CKG将陷门声明返回给应用(或者拒绝该声明)。在3930,应用对远程索引执行陷门声明。基于对远程索引的处理,结果可以被应用接收,并且通过该应用例如基于用户角色使用定制呈现来将结果呈现给用户。图40是示出了多方协作场景的流程图,在该场景中,企业向外部企业提供对其经加密数据中的一些的访问。例如,制造商可以给供应商赋予对其存储在可信云中的数据的访问,并且反之亦然。就此而言,在4000,给企业2的STS指定资源提供者,并且企业I的应用继续进行以获得对云中的资源提供者所提供的资源的访问的声明。在4010,企业I的STS被指定作为身份提供者。就此而言,应用为由企业I处的订阅者所定义的角色或角色集合获得声明,这由身份提供者来促进。在4020,应用基于由企业2控制的可许可资源以及基 于由订阅实体所定义的许可/能力来检索声明。在图40中,尽管仅仅描绘了一个STS,但是应当注意,在数字托管或联合信任覆盖中可以存在多个身份提供者STS和/或多个资源提供者STS。
图41是示出了例如诸如企业I和企业2之类的多个企业间的多方自动搜索场景的流程图。在4100,联合查询被企业I的应用接收或发起以供执行。在4110,应用从资源提供者(企业2)的STS获得相关声明。可任选地,该资源提供者可以在组织标签中指定。STS可以可任选地执行用户角色到查询组的映射,使得返回针对该用户角色的合法查询集合。在4120,应用基于该用户角色提交经过滤的声明和查询,使得可以有效地提交对应于该查询的声明、而不是所有的声明。可任选地,C KG将能力返回给应用(例如陷门声明),或者CKG拒绝该声明。在4140,应用对远程索引执行陷门声明。基于对远程索引的处理,结果可以被应用接收,并且通过该应用例如基于用户角色使用定制呈现来将结果呈现给用户。该方法可包括接收联合查询(conjunctive query)或以其他方式发起联合查询的步骤。就此,可任选地,联合查询也可以被密码保护,使得没有陷门(或能力)的接收者(要么为客户端、要么为服务提供者)可以分解联合查询并且确定其组成部分。图42示出了可以针对可信云服务实现的示例性、非限制性的边缘计算网络(ECN)技术。就此,结合彼此独立操作的可信云组件给多个动态计算节点4270、4272、4274、4276动态地分配计算带宽。例如,密钥生成中心4220、存储抽象服务4210、组织4230和组织4240可以如所示那样被实现为涵盖多组织业务或诸如上述场景之类的其他场景。密钥生成中心4220包括密钥生成器4222和服务器OS 4224。存储抽象服务4210包括存储服务组件4212和服务器OS 4214。组织4230包括STS 4232、AD 4236和服务器OS 4234。组织4240包括STS 4242、AD 4246和服务器OS 4244。服务器OS 4214、4224、4234、4244协作以在服务器的范围内实现ECN。任何存储提供者或抽象4202都可以用于存储数据,例如可以使用SQL数据服务。通过这种方式,一个或多个桌面4250、4252可以分别通过客户端应用4260、4262发布或订阅数据。图43是示出了根据可信云服务生态系统的密钥生成中心4310的一个或多个任选方面的框图。最初,诸如桌面4360、4362之类的计算设备的集合和相应的客户端应用4370、4372或者服务或服务器4374、4376、4378等等是云内容递送网络4350的潜在发布者和/或订阅者。然而,在满足来自该计算设备集合中的任何计算设备的请求以前,密钥生成中心最初为了获得发布者的信任而充当管理人,该密钥生成中心基于公钥对数据进行加密并且基于数据订阅者的能力向其发放私钥。在示例性的非限制性的交互中,来自计算设备的请求最初被提供4300,并且CKG4310的主控者在4380向CKG工厂4302请求CKG 4310的实例。接着,在4382进行用户认证4304。接着,任何基于使用的计费4384可以由计费系统4306应用以供CKG工厂4302使用。接着,租赁CKG在4386被CKG工厂4302物化,其可以包括MPK递送组件4312、客户端库下载器4314、秘密密钥提取器4316和信任确认器/验证者4318。MPK递送组件4312在4388将MPK递送给CDN 4350。客户端库下载器4314将密码库下载到请求客户端,这些密码库可以与要发布的数据的加密或者该设备订阅的数据的解密结合使用。接着,客户端基于从与信任验证者4318协作的秘密密钥提取器4316所接收的密钥信息来作出提取给定文档集合的请求,该信任验证者4318可以基于在4394验证订阅者的STS拇指纹、例如基于与该请求所涉及的组织的不同STS 4320、4322、4324、4326进行通信来确认订阅者具有某些能力。如在其他实施例中,可以提供存储抽象服务4340来抽象数据库服务4330 (例如SQL)的存储细节。
图44是与网络服务4420的递送相联系的可信存储4400的示例性非限制性的框图,该可信存储4400包括确认和/或验证的经可搜索地加密的数据4410。在该实施例中,订阅者4440或订阅者4440所使用的应用可以作为访问经加密存储4400的某些部分的请求的一部分来请求对通过请求确认实际接收的项目也是本应当接收的项目而返回的项目进行确认证明。就此,图44示出了可搜索加密技术与确认技术的组合。可任选地,该系统还可以与基于声明的身份和访问管理相集成,这在此处的其他实施例中予以描述。就此而言,如在此处的各个实施例中所描述的那样,亦称联合信任覆盖的数字托管模式可以无缝地与更传统的基于声明的认证系统相集成。在图44中,可信数据存储4400或服务提供者或数据存储的主控者执行证明步骤,而数据的所有者(例如订阅者设备)执行确认。数据存储4400是受信的,因为用户可以相信其提供强力的保证,但是能够理解,物理实体实际上主控该数据,并且一些参与者不是完全受信的。图45是用于订阅的包括确认步骤的示例性、非限制性过程的流程图。在4500,经可搜索地加密的数据的子集被从订阅者设备接收。在4510,密码密钥信息被从密钥生成实 例中生成,该密钥生成实例基于订阅者设备的身份信息生成该密码密钥信息。在4520,根据在密码密钥信息中所定义的赋予给该订阅者设备的能力,经加密数据的子集被解密。在4530,该子集中表示的项目可以被确认(例如数据拥有的证明),并且数据在4540被访问。在许多情况下,所期望的是能够在不需要对经加密数据进行解密的情况下对经加密数据执行roP/POR。可任选地,PDP所需的密钥信息可以被编码在曾用可搜索加密被保护的元数据之内。尽管这是管理用于roP/POR的密钥的有效方式,但是应当注意,存在许多高价值的场景,在这些场景中,可以在不需要访问明文内容的情况下对经加密数据执行rop/POR。图46示出了示例性、非限制性的确认挑战/响应协议,其中验证者4600 (例如数据所有者)向证明者4610 (例如数据服务提供者)发出密码挑战4620。在接收到挑战4620以后,证明者4610根据数据和挑战来计算响应4612。然后,挑战响应4630被返回给验证者4600,该验证者4600然后执行计算以验证或证明该数据未曾被修改过4602。在图46中总体上示出的确认被称为私有H)P,但是应当注意,还存在“公开”版本,其中给第三方提供密钥(“公”钥)使得第三方充当根据类似协议的验证者,而不必去了解实际数据。P0R,即验证的一个示例,与PDP不同,其中PDP提供数据是可检索的证明(无论任何破坏/修改与否),但是如下面30所示,基本协议是相同的,但是文档的结构和实际算法是不同的。此处的可信生态系统的各个实施方式组合可搜索加密和P0R/TOR以使系统收益并且巩固信任。就此,在将数据提交给服务提供者以前,数据被可搜索地加密,并且对数据的后处理可以包括POR和/或TOP。另外,如果需要提供更力的保证,则“数据分散(dispersion)”技术可以可任选地覆盖到上述任何一个或多个实施例中。利用数据分散,数据被分发给若干服务提供者以获得对抗任何单个服务提供者中的“大规模不良行为”或者灾难性损失的回复力。使用在此所示的信任机制,该分散以使得独立服务提供者难以串通和破坏数据的方式来执行。这类似于上述分布式CKG实施例的概念。图47是与用于来自发布者2530的数据的网络服务2520的递送相联系的可信存储2500的另一示例性非限制性的框图,该可信存储2500包括具有确认和/或验证的经可搜索地加密的数据2510。具体而言,图47示出了验证组件4750,其用于验证返回给订阅者2540的项目未被篡改或者以其他方式被不经意地改变。上述PDP是验证的非限制性示例。图48是用于订阅的包括确认步骤的示例性、非限制性过程的流程图。在4800,经可搜索地加密的数据的子集被从订阅者设备接收。在4810,密码密钥信息被从密钥生成实例中生成,该密钥生成实例基于订阅者设备的身份信息生成该密码密钥信息。在4820,根据在密码密钥信息中所定义的赋予给该订阅者设备的能力,经加密数据的子集被解密。在4830,该子集中表示的项目的内容可以被验证(例如检索能力的证明),并且数据在4840被访问。图49示出了示例性、非限制性的验证挑战/响应协议,其中验证者4900 (例如数据所有者)向证明者4910 (例如数据服务提供者)发出密码挑战4920。在接收到挑战4920以后,证明者4910根据数据和挑战来计算响应4912。然后,挑战响应4930被返回给验证者 4900,该验证者4900然后执行计算以验证或证明该数据是可检索的4902。盲指纹表示扩展网络去重复技术(诸如Rabin指纹)的另一类密码技术,网络去重复技术通常用于最小化网络上的冗余数据交换。在本文的各实施例中,应用指纹化(fingerprinting)以使得该协议中的参与者(例如,在数据存储的情况下是该CSP)不知晓它们正在主存的数据的实际内容。对于关于盲指纹的某些附加上下文,数据跨越广域网(WAN)的任何大数据交换(包括数据的维护)将需要用于通过线“去重复”的技术,或者确保非必要数据不通过线发送。通过将数据的片段指纹化,并随后交换指纹以使得发送者知晓它们具有而接收者所不具有的东西,来实现这一点。而且,接收者知晓它们需要向发送者索要什么数据。可使用分布式文件服务重复(DFS-R)来优化各场景中的数据交换,诸如通过WAN的分支办公室备份和分布式文件系统。在交换的情况下,存在大量数据重复,并且在任何给定时间在线上的可能多达50%或者更多的数据可能是重复的。可在块等级或在对象等级(例如,电子邮件、日历项、任务、联系人等)获得指纹。可在主要和次要数据中心处高速缓存指纹。因此,如果在主要数据中心处存在失败,则次要数据连同指纹可被还原到主要数据中心。主要数据中心处的数据 的加密仍应允许指纹对次要数据中心操作者可见,尽管是被模糊化的。例如,这可以通过用可搜索加密将指纹存储为关键词/元数据来实现,以使得除了次要数据中心中的授权实体/代理外,其他实体均不能够检测到模式。在数据服务的上下文中,当发送全文或增量时,主要数据中心可检查日志或EDB中的每个项/片段/块,并咨询指纹的本地副本。如果存在匹配,则该主要数据中心用该指纹取代该项/片段/块。因为应用指纹化的方式,术语“盲指纹”在本文中被如此称呼。在一个实施例中,用来实现盲指纹化的密码技术选择包括大小保留密码技术。图50是用于提供服务(包括盲指纹化(blind fingerprinting))的一个或多个实施例的总体环境的框图。使用盲指纹,数据订阅者5000和数据服务提供者5010经历指纹交换以作为代理来理解在被备份的数据集合的各本地和备份副本上已经拥有什么数据片段。作为指纹交换5020的结果,在5002确定要传送的修改数据的减少集合作为到数据服务提供者5010的去重复修改数据5030,数据服务提供者5030然后基于选择性地访问经去重复的修改数据和任何盲指纹5040来应用修改数据。图51是示出了非限制性场景的框图,在该场景中,多个独立的联合信任覆盖或者数字托管可以并排存在,或者针对分层方式彼此相叠地存在。在该场景中,存在具有经可搜索地加密的数据5110的可信数据存储5100,各种网络服务5120可以基于该数据5110。例如,网络服务5120可以包括作为云服务递送文字处理软件。作为地理分布等的一部分,可任选地,可以提供多个覆盖/托管5132、5134、5136,这些覆盖/托管每个都适应于不同的应用/垂直面/顺应需要/统治实体要求,使得发布者2530或订阅者5150基于要求的集合或管辖权/住所区域来隐式或显示地选择正确的覆盖/托管。因此,该覆盖可以改变,但是来自云的后端服务可以保持不变,而不必使核心服务本身的递送复杂化。图52是可信存储的另一示例性、非限制性实施例的框图,该可信存储包括用于针对非授权访问模糊化(obscure)数据的数据分发技术。本示例展示提供加密技术作为用于隐藏或模糊化数据的手段的所有上述技术或系统也可通过阻止对数据(或元数据)的
可见性的任何其他数学变换或算法来实现。就此,例如,可跨越一组数据存储自动地整合(defragment)或分散数据,该组数据存储可以是相同类型的容器,或如图52所示是不同类型的容器 5212、5214、......、5216。因此该系统包括数据存储5200,该数据存储包括(作为抽象)用于选择性地存储可访问数据或元数据5210的数据存储5212、5214、……、5216。发布者可将表示至少一个资源的数据或元数据5210发布到数据存储5200,并且第一独立实体5250执行可应用于如所发布的该数据和元数据的访问信息的生成,并且第二独立实体5260将如所发布的该数据和元数据跨越数据存储5200的一组数据存储发布,同时维护对存储如所发布的该数据或元数据的该组数据存储的知识。因此本知识是在无访问信息的情况下可揭示的秘密。可经由网络服务5220发布数据或元数据5210,该网络服务5220基于由该至少一个资源的发布者或所有者所授予的并由访问信息表示的所选择的后期绑定特权对向该网络服务的给定请求提供对如所发布的该数据或元数据的选择性访问。该数据存储5200包括相同或不同容器类型的多个容器,而如所发布的该数据或元数据被跨越该多个容器中的至少一个容器自动分布。该分布可基于数据发布者5260已知的任何算法,例如,基于对由多个容器所表示的存储资源的分析、基于该数据或元数据的特征、或对该给定应用适当的任何其他参数。相应地,当订阅者5240对数据或元数据5210做出请求时,网络服务咨询独立实体5250和/或5260以确定是否准许订阅者5240具有允许重组该数据的访问信息。例如,数据地图可以是准许该数据的重组的秘密。可将此实施例与其他数学变换(诸如加密)相组合以提供对该数据的附加保护。这种附加数学变换可由进一步的独立实体监督以用于信任的附加分布以获得该数据除对授权方外保持不可见的进一步满足。在此描述了多种示例性、非限制性的实施例,这些实施例示出了可信数据服务的递送。这些实施例不是独立的,而是可以在合适时彼此组合。另外,任何上述实施例都可以被扩展为多个可替代方式。例如,在一个实施例中,可信数据服务提供陷门或能力的到期和撤销,以获得数据访问的更大程度的安全性。在另一任选实施例中,权限管理层被构建到可信数据服务的提供中,例如以保护作为加密/解密的一部分附加于内容的权限或者阻止在数据托管中对受版权保护数据的操作,这些操作在明文中是可容易地识别或检测的。因此,在本发明的范围内可以构思在此所述的实施例的任何组合或置换。示例性、非限定性的实施方式数字托管模式的任何示例性实施方式被称为联合信任覆盖(FT0)。在附录A中附有一些关于FTP实施方式的附加的非限制性细节。就此而言,数字托管模式仅仅是许多可能的模式和变型方案的一个示例。此外,该模式(其包括发布者、订阅者、管理员和审计者——以及可能地其他专用角色,这如上述那样)在另一底层FTO模式上分层,该底层FTO模式对CTP、CSP、CKG等等执行“教会和州(church & state)”分离以维持信任。也可以存在多个独立FTO和DEP,其可以在彼此不干涉并且甚至不知道彼此的存在的情况下共存。而且,可以在云存储服务提供者不协作或者甚至不了解这些模式/覆盖的存在的情况下在云存储上覆盖DEP和FTO。更详细而言,FTO是独立于云中数据服务的服务集合。这些服务由数据服务的运营商以外的多方来运行,并且能够提供关于针对由云服务主控的数据的机密性、篡改检测和不可抵赖性的强力保证。任何伙伴都可以构造和主控这些覆盖服务,例如居间程序服务、确认服务、存储抽象服务等等。这些伙伴可以选择主控参考实施方式或者基于公开可用的格式和协议来构造其自己的实施方式。由于格式、协议和参考实施方式的公开性质,可用直接维持诸如FTO的运营商和数据所有者之类的多方间的控制的分离。尽管加密是该解决方案的一个元素,但是在不同方的范围内联合的服务的组织也是该解决方案的一部分。尽管常规的加密技术对于许多场景而言是强制性的,但是它们排除了实现这些场景中的许多场景,比如篡改检测、不可抵赖性、通过组织多个(不受信任)的服务构建信任、搜索数据库等等。补充上下文如上所述,对于某些附加的非限制性上下文而言,可信云供应集合为构建于信任之上的云实现了应用生态系统。在此所使用的各种技术包括CKG——密钥生成中心,一种实体,其主控多承租人密钥生成中心,例如Microsoft、VeriSign、Fidelity (保真度)、ASovereign Entity (统治实体)、Enterprise (企业)、Compliance Entity (顺应实体)等中的任一都可以主控CKG。就此而言,多承租人是任选的(例如期望但不是强制性的)。其他术语包括CTP——密码技术提供者,一种实体,其提供加密技术以供与受信生态系统一起使用,例如 Symantec、Certicom、Voltage、PGP 公司、BitArmor、Enterprise、Guardian、SovereignEntity等等中的任一是可以为CTP的示例性公司。另外,术语“CSP”——云服务提供者是提供包括存储在内的云服务的实体。各种公司可以提供这样的数据服务。CIV—云索引确认器是用于确认所返回的索引的第二库。CSA——计算和存储抽象对存储后端进行抽象。STF——存储传输格式是用于跨多个库传输数据/元数据的通用格式。就此,如上所述,一些企业场景包括使用数据服务技术或应用的工程外联网;设计和工程分析;定义制造商和供应商间的数据关系等等。因此,通过将信任分布在多个实体的范围内使得不存在过分摂受信任的实体或单点损害来为全部多个场景实现了唯一的生态系统。
对于关于可搜索加密的某些补充上下文而言,用户通常具有或获得针对关键词的“能力”或“陷门”,并且然后发送请求,其中使用该“能力”将其呈现给服务器。服务器“组合”能力和索引以找出相关的文档或数据。然后,仅仅给用户提供对由该搜索产生的文档的访问(虽然用户可以访问不止这些文档)。如所提到的那样,不应当认为单个算法限制了在此所述的经可搜索地加密的数据存储的提供,然而,下面总体上概述了示例性非限制性算法后面的一些理论,并且提供了可搜索对称加密(SSE)模式的初步知识 消息m
关键词 J1, . . .,Wn PRF:H 生成托管密钥 针对H选择随机S 加密 选择随机密钥K 选择随机固定长度r 对于 KiSn计算Si=Hs (Wi)计算IDi=Hai (r)计算Ci= bi flag输出(Ek(m), r, C1, . . . , cn) 针对w生成陷门或能力 d=HSJ (W) 针对w进行测试 计算 p=Hd (r) 计算 Z = p Ci 如果z=f lag,则输出“真” 对Ek(m)进行解密以获得m尽管再次不应当认为限制了在此所述的任何实施例,但是下面是关于公钥加密w/关键词搜索(PEKS)模式的初步知识。公钥加密a. PKE= (Gen, Enc, Dec)基于身份的加密b. IBE= (Gen, Enc, Extract, Dec)c.生成主密钥i. (msk, mpk) =IBE. Gen ()d.针对ID对m进行加密i. C=IBE. Enc (mpk, ID, m)e.针对ID生成秘密密钥i. sk=IBE. Extract (msk, ID)
f.解密i. m=IBE. Dec (sk, c)g.消息mh.关键词 w,. . .,wni.生成托管密钥i. (msk, mpk) =IBE. Gen ()ii(pk, sk) =PKE. Gen ()j.加密 k.对于 KiSni. Ci=IBE. Enc (mpk, Wi, flag)I 返回(PKE. Enc (pk, m),C1, , cn)m.为w生成能力或陷门i. d=IBE. Extract (msk, w)n.针对w进行测试0.对于 KiSni. Z=IBE. Dec (d, Ci)ii如果z=flag,则输出“真”对Ek (m)进行解密以获得m示例性联网以及分布式环境本领域普通技术人员可以理解,此处所描述的用于可信云服务框架的方法和设备的各实施例和有关的各实施例可以结合任何计算机或其它客户端或服务器设备来实现,该任何计算机或其它客户端或服务器设备可作为计算机网络的一部分来部署或者被部署在分布式计算环境中,并且可以连接到任何种类的数据存储。在这一点上,此处描述的各实施例可在具有任何数量的存储器或存储单元的、并且任何数量的应用和进程跨任何数量的存储单元发生的任何计算机系统或环境中实现。这包括但不限于具有部署在具有远程或本地存储的网络环境或分布式计算环境中的服务器计算机和客户计算机的环境。附图53提供了示例性联网或分布式计算环境的非限制性性示意图。该分布式计算环境包括计算对象5310、5312等以及计算对象或设备5320、5322、5324、5326、5328等,这些计算对象或设备可包括如由应用程序5330、5332、5334、5336、5338表示的程序、方法、数据存储、可编程逻辑等。能够理解,对象5310、5312等以及计算对象或设备5320、5322、5324、5326、5328等可包括不同的设备,比如PDA、音频/视频设备、移动电话、MP3播放器、膝上型计算机等。每一个对象5310、5312等以及计算对象或设备5320、5322、5324、5326、5328等可通过通信网络5340直接或间接与一个或多个其他对象5310、5312等以及计算对象或设备5320、5322、5324、5326、5328等进行通信。即使在图53中被示为单个元件,但网络5340可包括向图53的系统提供服务的其他计算对象或解释设备,和/或可表示未示出的多个互连网络。每个对象5310、5312等或5320、5322、5324、5326、5328等还可包含诸如应用程序5330、5332、5334、5336、5338之类的应用程序,该应用程序可利用API或适用于与根据本发明的各实施例来提供的可信云计算服务进行通信或适用于实现可信云计算服务的其他对象、软件、固件和/或硬件。存在支持分布式计算环境的各种系统、组件和网络配置。例如,计算系统可由有线或无线系统、本地网络或广泛分布的网络连接在一起。当前,许多网络被耦合至因特网,后者为广泛分布的计算提供了基础结构并包含许多不同的网络,但任何网络基础结构可用于变得与如各实施例中所描述的技术相关联的示例性通信。由此,可使用诸如客户端/服务器、对等、或混合体系结构之类的网络拓扑结构和网络基础结构的主机。在客户端/服务器体系结构中,尤其在联网系统中,客户端通常是访问另一计算机(例如,服务器)所提供的共享网络资源的计算机。在图53的图示中,作为非限制性示例,计算机5320、5322、5324、5326、5328等可被认为是客户端而计算机5310、5312等可被认为是服务器,其中服务器5310、5312等提供数据服务,诸如从客户端计算机5320、5322、5324、5326、5328等接收数据、存储数据、处理数据、向客户端计算机5320、5322、5324、5326、5328发送数据等,但任何计算机都可取决于环境而被认为是客户端、服务器或两者。这些计算设备中的任一个都可以处理数据,或请求可指示此处所描述的技术的 经改善的用户简档和相关技术的服务或任务。服务器通常是可通过诸如因特网或无线网络基础架构之类的远程网络或本地网络访问的远程计算机系统。客户端进程可在第一计算机系统中活动,而服务器进程可在第二计算机系统中活动,它们通过通信介质相互通信,由此提供分布式功能并允许多个客户端利用服务器的信息收集能力。按照用户简档来利用的任何软件对象可以单独提供或跨多个计算设备或对象分布。在其中通信网络/总线5340是因特网的网络环境中,服务器5310、5312等可以是客户端5320、5322、5324、5326、5328等通过诸如超文本传输协议(HTTP)等多种已知协议中的任一种与其通信的web服务器。服务器5310、5312等也可担当客户端5320、5322、5324、5326、5328等,这是分布式计算环境的特性。示例性计算设备如所提到的那样,此处描述的各实施例适用于其中可能期望实现可信云服务框架的一个或多个部分的任何设备。因此,应当理解,构思了结合此处描述的各实施例使用的手持式、便携式和其它计算设备和计算对象,即在设备可以结合可信云服务框架来提供某些功能的任何地方。因此,在下面的图54中描述的以下通用远程计算机仅是一个示例,且所公开的主题的各实施例可用具有网络/总线互操作性和交互的任何客户端来实现。尽管并不是必需的,但各实施例的任意一个可以部分地经由操作系统来实现,以供设备或对象的服务开发者使用,和/或被包括在结合可操作组件来操作的应用软件中。软件可以在由诸如客户端工作站、服务器或其它设备等一个或多个计算机执行的诸如程序模块等计算机可执行指令的通用上下文中描述。本领域的技术人员可以理解,网络交互可以用各种计算机系统配置和协议来实施。因此,图54示出了其中可实现一个或多个实施例的合适的计算系统环境5400的一个示例,尽管如上所述,计算系统环境5400仅为合适的计算环境的一个示例,并非旨在对各实施例中的任意一个的使用范围或功能提出任何限制。也不应该将计算环境5400解释为对示例性操作环境5400中示出的任一组件或其组合有任何依赖性或要求。参考图54,用于实现此处的一个或多个实施例的示例性远程设备可以包括手持式计算机5410形式的通用计算设备。手持式计算机5410的组件可以包括但不限于处理单元5420、系统存储器5430和将包括系统存储器在内的各种系统组件耦合至处理单元5420的系统总线5421。计算机5410通常包括各种计算机可读介质,并且可以是可由计算机5410访问的任何可用介质。系统存储器5430可包括诸如只读存储器(ROM)和/或随机存取存储器(RAM)之类的易失性和/或非易失性存储器形式的计算机存储介质。作为示例而非限制性,存储器5430还可以包括操作系统、应用程序、其他程序模块、和程序数据。
用户可以通过输入设备5440向计算机5410输入命令和信息。监视器或其他类型的显示设备也经由诸如输出接口 5450之类的接口连接到系统总线5421。除监视器之外,计算机还可以包括其他外围输出设备,如扬声器和打印机,它们可以通过输出接口 5450连接。计算机5410可使用到一个或多个其他远程计算机(诸如远程计算机5470)的逻辑连接在联网或分布式环境中操作。远程计算机5470可以是个人计算机、服务器、路由器、网络PC、对等设备或其他常见网络节点、或者任何其他远程媒体消费或传输设备,并且可包括以上关于计算机5410所述的任何或全部元件。图54所示的逻辑连接包括诸如局域网(LAN)或广域网(WAN)之类的网络5471,但也可包括其他网络/总线。这些联网环境在家庭、办公室、企业范围的计算机网络、内联网和因特网中是常见的。如上所述,尽管结合各计算设备、网络和广告架构描述了示例性实施例,但还可将底层概念应用于其中期望结合与云服务的交互来提供信任的任何网络系统和任何计算设备或系统。有多种实现此处描述的一个或多个实施例的方式,例如,使应用和服务能使用可信云服务框架的适当API、工具包、驱动程序代码、操作系统、控件、独立或可下载的软件对象等等。可以从API (或其他软件对象)的观点以及从提供根据所描述的实施例中的一个或多个的定点平台的软件或硬件对象来构想各实施例。此处描述的各种实现和实施例可以具有完全采用硬件、部分采用硬件并且部分采用软件、以及采用软件的方面。本文中所使用的词语“示例性”意味着用作示例、实例、或说明。为避免疑惑,本文所公开的主题不限于这些示例。另外,本文中被描述为“示例性”的任何方面或设计不一定被解释为比其他方面或设计更优选或有利,它也不意味着排除本领域普通技术人员已知的等效示例性结构和技术。而且,就术语“包括”、“具有”、“包含”和其他类似的词语在详细描述或权利要求书中的使用而言,为避免疑惑,这样的术语旨在以类似于术语“包括”作为开放的过渡词的方式解释而不排除任何附加或其他元素。如所述的,此处所述的各种技术可结合硬件或软件或,在适当时,以两者的组合来实现。如此处所使用的,术语“组件”、“系统”等同样旨在指计算机相关实体,或者是硬件、硬件和软件的组合、软件或者是执行中的软件。例如,组件可以是,但不限于是,在处理器上运行的进程、处理器、对象、可执行码、执行的线程、程序和/或计算机。作为说明,在计算机上运行的应用和计算机都可以是组件。一个或多个组件可以驻留在进程和/或执行线程中,并且组件可以位于一个计算机内和/或分布在两个或更多计算机之间。如前所述的系统已经参考若干组件之间的交互来描述。可以理解,这些系统和组件可包括组件或指定的子组件、某些指定的组件或子组件和/或附加的组件,并且根据上述内容的各种置换和组合。子组件还可作为通信地耦合到其他组件的组件来实现,而不是被包括在父组件内(层次性)。另外,应该注意,一个或多个组件也可以合并到提供聚合功能的单一组件中,或者也可以分成多个单独的子组件,并且,可以提供诸如管理层之类的任何一个或更多中间层,以可通信地耦合到这样的子组件,以便提供集成的功能。此处所述的任何组件也可与一个或多个此处未专门描述的但本领域技术人员一般已知的其他组件进行交互。考虑到以上描述的示例性系统,参考各附图的流程图将可以更好地理解依照所公开的主题实现的方法。尽管为了说明简洁起见,按照一系列框示出和描述了方法,但是,应该理解和知道,所要求保护的主题不限于框的顺序,因为一些框可以按与此处所描绘和描述的不同的顺序进行和/或与其它框并发地进行。尽管经由流程图示出了非顺序或分支的流程,但可以理解,可实现达到相同或类似结果的各种其他分支、流程路径和框的次序。此夕卜,并非全部所示的框都是实现下面所述的方法所必需的。虽然在某些实施例中,说明了客户端侧观点,但要出于避免存在相对应的服务器观点的疑问来理解,反之亦然。类似地,在实施方法的地方,可以提供具有存储和被配置成经由一个或多个组件实施该方法的至少一个处理器的相对应的设备。尽管结合各附图的优选实施例描述了各实施例,但可以理解,可以使用其他类似的实施例,或可以对所描述的实施例进行修改和添加来执行相同的功能而不背离本发明。而且,此处描述的各实施例的一个或多个方面可以在多个处理芯片或设备中实现或跨多个处理芯片或设备实现,且存储可以类似地跨多个设备来实现。因此,本发明不应限于任何单个实施例,而是应该根据所附权利要求书的广度和范围来解释。
权利要求
1.一种用于主存数据的方法,包括 通过第一控制区域中的至少ー个计算设备从第二控制区域中的至少ー个计算设备接收经模糊化的数据,所述经模糊化的数据是针对所述第二控制区域中的所述至少一个计算设备的所定义的数据集合从数据的至少ー个第一数学变换形成的; 通过所述第一控制区域中的所述至少ー个计算设备接收经模糊化的元数据,所述经模糊化的元数据是从对所述数据的分析以及所述分析的输出的至少ー个第二数学变换形成的;以及 确定在其中存储所述经模糊化的数据或所述经模糊化的元数据中的至少ー个的至少两个不同容器类型的多个容器中的至少ー个容器。
2.如权利要求I所述的方法,其特征在于,所述经模糊化的数据的接收包括接收基于密码密钥信息根据至少一个可搜索加密算法从所述数据的至少ー个加密形成的经加密的数据。
3.如权利要求I所述的方法,其特征在于,所述经模糊化的元数据的接收包括接收基于密码密钥信息根据对所述数据的所述分析以及所述分析的所述输出的所述至少ー个第ニ数学变换形成的经加密的元数据。
4.如权利要求I所述的方法,其特征在于,还包括 如果满足所述多个容器的预定义的条件,则自动改变其中存储所述经模糊化的数据或经模糊化的元数据的所述至少ー个容器。
5.如权利要求I所述的方法,其特征在于,所述确定包括基于以下各项中的至少ー项来确定其中存储所述经模糊化的数据或经模糊化的元数据的至少ー个容器与所述经模糊化的数据或经模糊化的元数据相关联的存储大小、为所述经模糊化的数据或经模糊化的元数据指定的访问速度要求、为所述经模糊化的数据或经模糊化的元数据指定的恢复可靠性要求、或与具有对所述经模糊化的数据或经模糊化的元数据的访问权的一个或多个设备的邻近性。
6.如权利要求I所述的方法,其特征在于,还包括 接收陷门数据,所述陷门数据允许如由所述陷门数据的至少ー个密码陷门所定义的对所述经模糊化的数据或经模糊化的元数据的可见访问。
7.如权利要求I所述的方法,其特征在于,还包括 接收从所述所定义的数据集合还原至少ー个数据项的请求; 接收用于从所述经模糊化的数据或经模糊化的元数据提取所述至少一个数据项的至少ー个陷门;以及 如果所述至少ー个陷门有效,则从所述经模糊化的数据或经模糊化的元数据提取并传送所述至少ー个数据项。
8.一种系统,包括 至少部分由数学变换算法提供者分布的至少ー个数学变换组件,其独立于生成器实现,所述生成器生成用于发布数据和元数据或订阅数据或元数据中的至少ー项的数学变换断言信息,所述至少ー个数学变换组件包括被配置成基于由所述生成器生成的所述数学变换断言信息来执行至少ー个可捜索数据模糊化算法或可捜索数据掲示算法的至少ー个处理器;以及网络服务提供者,其独立于所述生成器和所述至少ー个数学变换组件实现,所述网络服务提供者包括被配置成针对由所述至少ー个数学变换组件模糊化的数据或元数据实现网络服务,所述网络服务提供者包括数据容器管理组件,所述数据容器管理组件基于数据等待时间要求、数据可靠性要求、距数据消耗的距离要求或所述网络服务的数据规模要求中的至少ー项来管理由所述至少ー个数学变换组件模糊化的所述数据或所述元数据被存储在何处。
9.如权利要求8所述的系统,其特征在于,所述至少ー个数学变换组件是至少部分由密码技术提供者分布的至少ー个密码组件,其独立于密钥生成器实现,所述密钥生成器生成用于所述发布所述数据和所述元数据或所述订阅所述数据和所述元数据中的至少ー项的密钥信息,所述至少一个处理器被配置成基于由所述密钥生成器生成的所述密钥信息来执行至少ー个可捜索加密算法或可捜索解密算法。
10.如权利要求8所述的系统,其特征在于,所述网络服务提供者包括被配置成针对由 所述至少一个密码组件加密的所述数据或元数据实现所述网络服务的至少ー个处理器,所述网络服务提供者包括管理由所述至少一个密码组件加密的所述数据或元数据被存储在何处的所述数据容器管理组件。
11.如权利要求8所述的系统,其特征在于,所述数据容器管理组件基于以下各项中至少ー项来管理由所述至少ー个数学变换组件模糊化的所述数据或元数据被存储在何处为所述网络服务提供者对所述网络服务的递送指定的数据等待时间要求、为所述网络服务对所述数据或元数据的存储所指定的数据可靠性要求、为所述网络服务将所述数据或元数据传送到ー个或多个请求设备指定的距数据消耗的距离要求、或为所述网络服务对数据或所述元数据的存储指定的数据规模要求。
12.如权利要求8所述的系统,其特征在干,所述密钥信息包括能力信息,所述能力信息针对由所述至少ー个数学变换组件加密的所述数据或所述元数据定义访问特权。
13.如权利要求12所述的系统,其特征在于,所述能力信息被后期绑定,由此向给定订阅者授予最新的访问特权。
14.ー种计算系统,包括 存储可选择性地访问的数据或元数据的至少ー个数据存储,其中至少ー个发布者向所述至少一个数据存储发布表示至少ー个资源的所述数据或元数据,第一独立实体执行对如所发布的所述数据或所述元数据可适用的访问信息的生成,而第二独立实体跨越所述至少一个数据存储中的ー组数据存储分布如所发布的所述数据或所述元数据,同时将存储如所发布的所述数据或所述元数据的所述那组数据存储的知识维持为不能在没有访问信息的情况下被掲示的秘密;以及 被配置成执行网络服务的至少ー个处理器,所述网络服务基于由所述至少一个资源的所述至少一个发布者或至少ー个所有者中的至少ー个所授予的并由所述访问信息表示的后期绑定的所选择的特权来为对所述网络服务的给定请求提供对如所发布的所述数据或所述元数据的选择性访问, 其中所述至少ー个数据存储包括多个容器,且如所发布的所述数据或所述元数据被跨越所述多个容器中的至少ー个容器自动分布。
15.如权利要求14所述的系统,其特征在于,所述至少ー个数据存储包括不同容器类型的多个容器。
全文摘要
提供用于数据服务的数字托管模式和可信平台,该数据服务包括用于模糊化存储在远程站点或在云服务中的数据、跨多个实体分布信任以避免单点数据损害的数学变换技术,诸如可搜索加密技术。使用可信平台的技术,将数据(以及相关联的元数据)从保存该数据的容器(例如,文件系统,数据库等)分离,从而通过施加用所呈现的能力刺穿的数学复杂度保护罩来允许该数据担当它自己的管理者,所呈现的能力诸如是由信任平台的密码密钥生成器所授予的密钥。以保持并扩展信任而不需要特定容器来实施的方式,促进对数据或该数据的子集的共享或访问。
文档编号G06F15/16GK102687133SQ201080051694
公开日2012年9月19日 申请日期2010年10月29日 优先权日2009年11月16日
发明者D·J·坎农, R·P·德索扎, R·V·奥拉德卡 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1