通过包装器合成的用于数据的可验证的信任的制作方法

文档序号:6351454阅读:287来源:国知局
专利名称:通过包装器合成的用于数据的可验证的信任的制作方法
技术领域
本文涉及向设备提供可信计算和数据服务,如网络服务或云服务,并且更具体地涉及应用合成包装器来转换数据、元数据或这两者的数据或网络服务。
背景技术
以关于一些常规系统的背景技术为例,计算设备在传统上是在设备本地执行应用和数据服务的。在这种情况下,当数据被访问、处理、存储、高速缓存等等时,这些数据可以通过本地总线、接口和其他数据路径在设备上行进,然而,设备的用户不必担心用户数据的干扰或暴露,除非设备本身丢失、失窃或以其他方式被损害。能够存储数万亿字节数据(以及将来潜在的千万亿字节、百万万亿字节数据)的网络存储场的演变创造了模拟如下应用的机会该应用在历史上是对本地数据进行操作,却改为对存储在云中的数据进行操作,其中主设备和外部存储是分开的。应用或系统(或任何)数据的云存储允许许多设备存储它们的数据而不需要用于每个设备的分开的专用存储。迄今为止,随着在线和云服务的演进,应用和服务正越来越多地迁移到代表(诸)设备来执行给定服务中的ー些或全部的第三方网络提供者。在这种情况下,当用户的数据被上传到服务时、当该数据被该服务存储或处理时、或者当该数据被从该服务检索时,设备的用户可能关心谁能够访问该数据,或者可能更坏地,谁能够干扰该数据。简言之,当用户的设备的数据离开物理占有的领域并进入物理上远离用户的网络环境时,关于第三方对数据的疏忽的或恶意的处理或者对数据的干扰的担忧出现了。因此,増加对云服务和对结合云服务来对数据进行的处理的信任、安全和隐私是合乎需要的。即使在企业内部,数据存储也可能出现类似的担忧,例如,当数据离开生成该数据的一个控制区(例如,第一部门)并进入另一区域(例如,第二部门)以进行存储吋。然而,如同上面提到的,依然存在以下问题云服务或网络存储提供者均不能够有效地缓解数据(当存储在云中吋)的安全性、隐私性以及完整性的问题和对它们的需要。简言之,用户需要在如下方面有更高的信任当交出对存储媒介的物理控制时,他们的数据仍然是安全而私密的,并且这种障碍已显著防止了企业和消费者经由第三方网络服务和解决方案来采用重要数据的备份。当今的设备和被提供给设备的数据服务的上述缺点仅仅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是另外示出一示例的框图,其中数据被加扰并且关于加扰的信息被记录在合成包装器的包装器内部或外部的元数据中;图9是策略中的变化的框图,作为移除包装器的替换方案,该变化导致交出查看被包装器模糊化的数据、元数据、或这两者的能力;

图10是基于指令或状态改变来对包装器进行自动解除包装、生成、更改、重新生成、或扩充的框图;图11是使用ー个或多个横向包装器变换来执行数据修订任务的说明性示例;图12是ー实施例中的用于主存由合成包装器来包装的数据、元数据、或这两者的示例性非限制性过程的流程图;图13是用于提供安全的、私密的、以及可选择性访问的网络数据服务的一个或多个实施例的总体环境的框图;图14是示出“作为它自己的保管者的数据”的ー个或多个方面的框图;图15是用于提供安全的、私密的、以及可选择性访问的网络数据服务的一个或多个实施例的总体环境的框图;图16是用于管理容器的过程的流程图,其中数据担当它自己的保管者;图17是示出担当它自己的保管者的数据的ー个或多个方面的另ー个框图18是示出担当它自己的保管者的数据的各方面的另ー个框图,其示出了数据能够超越传统容器安全模型;图19示出存储管理层,该存储管理层执行诸如来自不同类型的多个数据容器的数据的自动粉碎、高速缓存、复制、重构等功能;图20是示出安全覆盖网络的框图,该安全覆盖网络在跨各种数据容器的存储数据的地方向数据添加密码访问包装器;图21是示出与传统应用有关的方面的框图;图22是可与传统应用以及FTO知晓应用结合使用的示例体系结构模型;图23是示出密码包装器或信封在数据和/或描述该数据或该数据的特征的元数据上的一般使用的框图; 图24是ー特定示例,进ー步突出了图23中概括呈现的概念;图25是另ー示例,示出了围绕被保护数据的联合信任覆盖;图26是示出其中使用信任覆盖将记录以及索引加密并上传到云的ー实施例的框图;图27示出客户端能够如何在经加密的数据上利用联合信任覆盖体系结构来生成、上传和/或搜索经加密的索引以获得更丰富的云存储体验;图28-30是示出该系统的一些附加非限制性信任保证的框图;图31是示出XML上下文中的可信覆盖的ー实施例的图;图32-35是示出各实施例中的用于可信XML的示例性过程的流程图;图36是ー实施例中的示出用于处理数据以形成可信XML的示例性、非限制性方法的流程图;图37是根据一实施例的可信云服务框架或生态系统的框图;图38是示出根据可信云服务生态系统的用于发布数据的示例性、非限制性方法的流程图;图39是示出根据可信云服务生态系统的用于订阅数据的示例性、非限制性方法的流程图;图40示出一示例性生态系统,该生态系统示出了密钥生成中心(CKG)、密码技术提供者(CTP)和云服务提供者(CSP)在可信生态系统中的分离;图41是示出了用于为企业执行云服务的可信生态系统的其他益处的另一体系结构图;图42是示出了通过存储抽象层来适应于不同存储提供者的另ー框图;图43示出结合存储抽象服务的存储的其他方面;图44是示出可信生态系统中的各不同參与者的另ー框图;图45是可信云计算系统的示例性非限制性实现的一些层的代表性视图,在该计算系统中,不同构件可以由不同或相同实体来提供;图46是ー示例性非限制性过程的流程图,该过程用于以利用后期绑定向发布者提供对数据的受控选择性访问的方式来向数字保险箱应用发布文档;图47是用于订阅置于数字保险箱中的材料的示例性、非限制性过程的流程图;图48示出使用数字托管模式来通过ー个或多个数据中心为企业实现安全外联网的可信云服务的示例性、非限制性的实现;图49是示出基于可信云服务生态系统的另一示例性非限制性场景的流程图,在该生态系统中,赋予订阅者对由CSP存储的经加密数据的选择性访问权;图50是示出可基于登录信息对订阅者定制应用响应的另一流程图;图51是示出安 全记录上传场景的另一流程图,该场景可以针对单方或多方来实现;图52是示出由可信云服务生态系统启用的、对经可捜索地加密的数据存储进行基于角色的查询的示例性、非限制性实现的又一流程图;图53是示出多方协作场景的流程图,在该场景中,企业向外部企业提供对其经加密数据中的ー些的访问权;图54是示出多个企业间的多方自动搜索场景的流程图;图55示出可以针对可信云服务实现的示例性、非限制性的边缘计算网络(ECN)技术;图56是示出根据可信云服务生态系统的密钥生成中心的ー个或多个可任选方面的框图;图57是包括经可搜索地加密的数据的可信存储的示例性、非限制性实施例的框图;图58是示出用于订阅的示例性、非限制性过程的流程图,该过程包括确认步骤;图59示出示例性、非限制性确认质询/响应协议,验证方按照该协议向证明方发出密码质询;图60是包括经可搜索地加密的数据的可信存储的另ー示例性、非限制性实施例的框图;图61是示出用于订阅的示例性、非限制性过程的流程图,该过程包括确认步骤;图62示出另ー示例性、非限制性验证质询/响应协议,验证方按照该协议向证明方发出密码质询;图63是用于提供服务的ー个或多个实施例(包括盲指纹化)的一般环境的框图;图64是示出非限制性场景的框图,在该场景中,多个独立的联合信任覆盖或者数字托管可以并排存在,或者针对分层方式彼此相叠地存在;图65是可信存储的另ー示例性、非限制性实施例的框图,该可信存储包括用于针对非授权访问来模糊化数据的数据分发技术;图66是表示其中可实现在此处所述的各个实施例的示例性、非限制性联网环境的框图;以及图67是表示其中可实现此处所述的各个实施例的ー个或多个方面的示例性、非限制性计算系统或操作环境的框图。详细描述概览如在背景技术中所讨论的那样,发送给网络服务的数据可能造成隐私性方面的不适、篡改的可能性等等,例如,当数据被从用户的设备传输给网络应用、服务或数据存储吋,用户期望对没有恶意第三方能造成损害的充分保证。按照定义,用户已失去对数据的控制。因此,所需要的是增加信任,使得数据的发布者和/或所有者愿意交出对其数据的物理控制,同时相信在网络中,除了当被该发布者或该所有者或如基于请求者身份所验证的被授予了特权的任何人访问时之外,其数据都将保持隐私性和不受损。就此,依然存在以下问题云服务或网络存储提供者均不能够有效地缓解数据(当存储在云中吋)的安全性、隐私性以及完整性的问题和对它们的需要。简言之,用户关心在如下方面有更高的信任当交出对存储媒介的物理控制时,他们的数据仍然是安全而私密的,并且这种障碍已显著防止了企业和消费者经由第三方网络服务和解决方案来采用重要数据的备份。本文中所使用的术语“网络存储提供者”包括但不限于内容递送(或分发)网络(⑶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数据或对应的标签数据的给定订阅者授予最新的访问特权。下面提供这些和其他各示例性、非限制性实施例和场景的进ー步细节。通过包装器合成的可验证的信任
如在背景技术中提到的,在由服务组织拥有的远程站点处维护敏感企业数据可能使该数据处于从隐私侵犯到数据丢失的危险中。如针对本文的各实施例所描述的,网络或云数据服务(包括用于数据的数学变换技木)被以如下方式提供该方式跨多个实体来分发信任以避免单点数据损害,并且将数据保护要求从可存储、处理、访问或检索该数据的容器分离。在一个实施例中,访问信息生成器、数学变换技术提供者以及云服务提供者各自均作为分开的实体来提供,从而允许数据发布者向云服务提供者机密地(经加密的)发布数据的可信平台,并且允许经授权的订阅者基于订阅者能力对该经加密的数据的选择性访问。多个变换包装器或层可整体地或部分地将数据、元数据、或这两者变换成数学变换(例如,カロ密、跨存储来分发、模糊)或以其他方式将可见性缺失引入数据、元数据、或这两者中的ー些或全部。本公开内容的各实施例通过被称为包装器合成的一族技术来提供可验证的信任,其具有各个应用,包括数据在服务器上存储、不被完全信任的服务或云、或通过不能被完全信任的各控制区域来交换数据。可被应用于数据的包装器或信封以便于建立对数据的安全性和隐私性的高信任水平的密码技术或‘装饰’的一些其他示例包括但不限于,保留大小的加密、可捜索加密、应用证明、盲指纹、可恢复性证明等。在本文的一些实施例中,候选数据被称为‘内容’。可验证的信任(Verifiable Trust)是通过各技术提供诸如匿名性、隐私性、或完整性等保证的能力,这些技术可包括但不限于用于加密、签名、密码散列、以及交互式证明的密码技术。还存在使用相关联的各类适用的密码和其他技术的其他类保证。为易于说明,在下文中将所有这些技术称为‘密码’。用于保护内容(即数据)以及用于提供可验证的信任的许多常规密码和其他方案依赖于要求接收者或读取者具有用于取得访问的适当密钥或其他机制的“孤注ー掷的”方法。新兴方法和系统能够提供‘选择性不透明性’,其中可以向能访问这一内容的一方提供用于对该内容执行受限动作的委托能力。这些动作可包括具有基于包括密钥或角色证明或拥有声明的准则的选择性访问。这些动作还可包括在继续具有对该内容的受限查看的同时对该内容执行一定范围的动作的能力,这些动作可包括搜索、路由、以及工作流。在研究文献中,这样的技术的示例被称为‘可搜索加密’。在下文中概括描述了 ー组原因,包括场景多样化、密码技术或系统中的限制、或被參与者的不同策略和可验证的信任要求所复杂化。现有技术和实现不能够以提供系统和可操作的灵活性及动态合成的方式来满足这些不同需求。描述了松散耦合的包装器(这些包装器可以是短暂的),并基于任何场景的需求来提供支持包装器的动态添加和移除。图I是ー实施例中的示出用于采用合成包装器来发布或订阅存储中的数据、元数据、或这两者的系统的框图。根据分布式信任平台,数学变换组件100包括访问信息生成器102。访问信息可以是用于重构隐藏或以其他方式分发的数据的各段的存储图、密码密钥信息、或其他能力。还包括数学变换技术提供者104。组件100被用于供发布者发布110数据或供订阅者订阅112数据。网络服务提供者120便干与存储在存储130中的数据150和/或元数据152的交互。就此,包装器140可被应用于数据150、元数据152、或这两者,并且这些包装器140可被生成、重新生成、删除、扩充、更改、或以其他方式改变来与系统或指令 中的变化相对应。图2是ー实施例中的示出用于采用合成加密包装器来发布或订阅存储中的数据、元数据、或这两者的系统的框图。根据分布式信任平台,数学变换组件200包括密码密钥生成器202。还包括密码技术提供者204。组件200被用于供发布者发布220数据或供订阅者订阅222数据。网络服务提供者220便干与存储在存储230中的数据250和/或元数据252的交互。就此,密码包装器240可被应用于数据250、元数据252、或这两者,并且这些包装器240可被生成、重新生成、删除、扩充、更改、或以其他方式改变来与系统或指令中的变化相对应。图3是同心合成包装器的说明性示例,其中外部包装器2 330覆盖内部包装器320,这两个包装器对数据300、元数据310、或这两者进行数学变换(例如,降低其可见性)。包装器320和330保护数据300、元数据310、或这两者的全部,并且作为内部包装器,包装器1320是不可见的,直至呈现了通过包装器2330 (外部包装器)的可见性的正确能力为止。图4是具有横向包装器的合成包装器的说明性示例。对于横向包装器420和430,相关联的变换使得数据400、元数据410、或这两者的并非全部不可见。相反,数据400、元数据410、或这两者中的所需部分或项被模糊而其他部分可保持可见。图5是ー实施例中的既具有同心包装器也具有横向包装器的混合合成包装器的说明性示例。就此,图5是图3和4的包装器在一实施例中相组合的示例,其中ー些包装器320和330对数据500、元数据510、或这两者的全部进行包装,而ー些包装器420和430对数据500、元数据510、或这两者的部分(这些部分不必是连续的,可以满足任何子集定义)进行包装。就此,哪些包装器被首先解除包装或哪些彼此独立的分层结构可以根据维护分层结构的任何数据结构来表示。图6是ー实施例中的结合与数据相关联的访问日志元数据来使用横向包装器的框图。作为横向包装器的示例使用(其中数据600可包括访问日志602 (例如,起源数据)),横向包装器620保护ー些数据600且横向包装器622保护访问日志602。因而,并非所有数据都被给定包装器保护,并且可对数据项的不同部分应用不同标准或不应用标准。图6另外示出可对部分包装器620、622应用附加的完整包装器630以作为附加的ー层保护。图7是ー实施例中的通过丢弃或粉碎访问信息来有效地删除数据的框图,其中删除数据的方式被编码在元数据中。就此,在这样的系统中,ー种删除数据而非将数据700或元数据710或这两者上的包装器720解除包装的方式是简单地丢弃或粉碎访问信息生成器702所生成的访问信息,因为这样在没有这一信息的情况下,数据700或元数据710不能被访问。然而,如果该系统选择记录与删除何时或如何发生有关的ー些信息,则仍然可保留与数据700、元数据710、或这两者有关的信息。图8是另外示出一示例的框图,其中数据被加扰并且关于加扰的信息被记录在合成包装器的包装器内部或外部的元数据中。在该示例中,由包装器820保护的数据800、元数据810、或这两者可被加扰,并且与所使用的算法有关的信息可被添加到元数据810或外部元数据812中,或者甚至被编码在包装器820之一中以供在制度上知晓该数据发生了什么。因此,丢弃访问信息生成器802所生成的访问信息或加扰两者都可被用来在该系统中有效地删除数据。图9是策略中的变化的框图,作为移除包装器的替换方案,该变化导致交出查看被包装器模糊化的数据、元数据、或这两者的能力。在该示例中,不管包装器保护如何,都给 出了对受保护的数据900、元数据910、或这两者“解除保护”的方式。例如,基于策略变化904,访问信息生成器902简单地产生用于通过包装器920查看数据900、元数据910、或这两者的全部或部分的能力,而作出请求的实体没有任何成本。这充分利用了现有的体系结构,使得不必执行昂贵的解除包装操作。图10是基于指令或状态改变来对包装器进行自动解除包装、生成、更改、重新生成、或扩充的框图。该示例是说明性的,状态1040的改变或来自网络服务提供者1030的显式指令可自动触发对保护数据1000、元数据1010、或这两者的包装器1020的改变。例如,在数据到达特定年龄时,可将包装器自动解除包装(例如,一旦数据的相关性期满则它再次成为明文)。作为另ー示例,例如,在数据变得相关(例如,机密)时,可生成包装器1020。在有理由相信发生了损害的情况下,还可使用不同的编码来重新生成包装器1020。作为另ー示例,可以更改包装器,例如可以在该包装器上使用不同变换或使用数学变换的不同參数。图11是使用ー个或多个横向包装器变换来执行数据修订任务的说明性示例。例如,修订横向包装器1120可被用来修订数据1100外部的公司名称或日期,或可以修订元数据1110外部的某些关键词。作为另ー示例,虽然用修订包装器1120修订了数据,但是为需要知道与数据1100中什么被修订了有关的ー些事情的人在如一致性元数据包装器1130所模糊化的元数据1100中记录与什么或何时被修订了有关的信息是可能的。图12是ー实施例中的用于主存由合成包装器来包装的数据、元数据、或这两者的示例性非限制性过程的流程图。在1200处,接收由合成包装器来保护的数据或元数据或这两者,其中该合成包装器是从基于第一组准则来定义该数据、该元数据、或这两者的第一包装器的第一数学变换和基于第二组准则来定义该数据、该元数据、或这两者的第二包装器的第二数学变换形成的。在1210处,接收基于请求中包括的ー组能力来访问由合成包装器保护的数据、元数据、或这两者的请求。在1220处,基于该组能力,基于通过第一包装器评估可见性并独立地通过第二包装器评估可见性来确定对数据、元数据、或这两者的访问特权。在1230处,该系统的状态可能改变,或接收到显式地请求改变的指令。在1240处,基于状态改变或指令,基于新的一组准则(QoS要求、内容或元数据的类型、一致性要求等)来改变、删除、或扩充第一或第二包装器,生成另ー包装器,删除或撤消包装器,用相同或其他数学变换来重新生成包装器,或改变管控第一或第二包装器的策略,等等。本文描述的许多技术依赖于保护分层结构,该保护分层结构可涉及包含要保护的实际内容的“内部”净荷和包含描述内部数据的经加密的索弓I的“外部”净荷,该内部数据可服从盲搜索技木,如在研究文献中被称为“带关键词搜索的公钥加密”的那些技木。在实践中,对“内部”和“外部”的这ー引用可暗示字面容纳,其中对“内部”净荷的访问将需要通过诸如解密等技术来解锁“外部”净荷(即包装器)。然而,这也可以是虚拟概念,其中没有实际的容纳,但在不解码外部包装器的情况下,难以定位或重组内部净荷。前一句中提到的这ー难度是由于密码技术或其他数学变换所引入的计算复杂度,或者是由于通过所有权和控制区域来提供内部和外部内容的隔离的系统技术,或者是由于利用与优化分散和重组的系统技术相耦合的密码分散技术的组合。 存在着用于创建包装器的分层结构的若干原因以提供可验证的信任,其中的ー些原因已在上文中描述。这些原因包括基于在真实世界中观察到的诸如组织结构等自然分层结构来提供选择性不透明性。其他原因包括以提供更服从真实世界实现的合成的方式将不同密码技术与补充属性密码或系统属性进行组合的能力。还存在用于以不要求内部包装器或净荷保持原样的方式添加或移除解决时间或空间事件的包装器的许多其他原因,该时间或空间事件修改可验证的信任的各个要求。时间事件可包括用于生成这些包装器的密码技术的提供保证的能力由于硬件、软件、或科学进步而被弱化的估计或假设。通过按时间表、按需、或其他触发来生成新包装器以促进可验证的信任的长期供应,系统可被构建成包容这ー故障。空间事件可包括跨处理该内容的各方来转移拥有权或所有权,该各方(可能出于包括顺从管辖、法律、规章的原因)有理由来选择不同密码技术并且在跨越主权实体或权限的边界时特别值得注意。系统可被构建成将能力嵌入在网关中,或直接嵌入在包装器中,或以某种混合方式嵌入,使得基于反映新处理者或所有者的规则的策略来具体化或汽化(vaporize)包装器。文献中存在着尝试提供可对自然分层结构进行建模的可验证的信任的技术,包括分层的基于身份的加密、基于属性的加密、以及谓词(或功能)加密。还存在着提供以虚拟方式通过诸如完全同态等密码技术属性来具体化包装器的内在能力的技术。在存在这些技术的情况下,可能依然存在着出于范围从可验证的信任到系统的其他原因的、对上述通过包装器进行合成的需求。将包装器进行合成的密码原因包括对可通过提供对访问的较强保证或较细粒度控制的内部包装器和向广告泄露较少信息但提供较粗粒度控制和较弱保证的外部包装器进行合成的匹配技术的需求。因此,该合成提供了保证和控制的更优化的混合。系统原因可包括对具有可变属性的匹配技术的需求,这些属性可包括性能和规模。在这样的场景中,外部包装器可以在提供更高级性能和规模的技术的外部来构造,但带有功能上的某种限制,并且内部包装器带有经扩充或补充的功能,可能带有较低性能和规模。在实践中,情况通常是新兴密码技术提供増加的能力等级,但以性能和规模为代价。在这些新兴技术中还缺少信任,通常在分析、细化、以及标准化这些技术时它们随时间消散。同样,随时间进展,学习着以稳定地更高效的软件或硬件方法或其组合来实现这些技术。包装器以提供‘安全网’的方式来便于对这些新技术的乐观使用,其中内部或外部包装器能够补偿实现任何单个包装器的技术中的已知或未知弱点或缺陷或特征的固有缺失。例如,外部包装器可提供关键词隐私性和高性能,但带有较粗粒度的访问控制或没有访问控制。这可以用不提供关键词隐私性来提供较细粒度的访问控制(可能以较高的性能和规模惩罚为代价)的内部包装器来进行补偿。情况通常是外部包装器将针对‘假肯定’来优化,因为它更可能作出选择、进行搜索、路由或工作流。这可以反映真实世界组织中的更高的或所包含的许可分层结构。然而,对应的内部包装器将使这一结果专用于该分层结构中的内部层。例如,外部包装器可得到对大学中的数学系适当的所有结果,而内部包装器可过滤出数论学家所感兴趣的結果。存在着用于包装器的其他原因。这些原因包括对提供场景专用的可验证的信任保证的需求。例如,可能存在以下各场景家族其中对特定关键词的存在的知晓进行保护是不重要的,这可能是因为这些关键词的领域足够大而使得字典或关键词猜测攻击在计算上是不切实际的,或者是因为这些关键词的泄露被该场景认为是低风险。相反,可存在以下其他各场景家族其中这些关键词是高度敏感的,并且数据所有者(或所有者的公司、社交、支持、或消费网络)期望该数据的当前处理者(如服务器、服务、云、或其他方)在无需习得它们所操作来执行各动作(这些动作包括搜索并随后检索或路由或执行其他操作)的这些关键词之外的任何事情的情况下执行动作。此外,在许多真实世界场景家族中,该内容是合成的,包含处于范围从‘高度敏感’到‘可任意使用’的连续区中的各组成。通常,任何真实世界组织反映这些不同要求,它们反映在所存储、交换、或协作性地操作的合成内容中。此外,在这些协作场景中的包括许多外联网的许多场景(其中各公司跨组织、规章顺从、主权实体、或其他边界来进行协作)中,一方所访问的内容的分类将被所有者认为基于所有方与访问方之间的当前公司或契约关系(或历史和信任)映射到该连续区中的点。此夕卜,这ー关系和映射可以是短暂的,可能到了特定公司事务或社交交互的粒度。在密码和系统技术的任何可预测状态中,设计满足跨各场景(这些场景满足所有可验证的信任要求)的一定范围的要求、和包括性能和规模的系统要求、以及可包括先前描述的要求的其他要求的单个解决方案将是不切实际的。由于复杂度和大規模递送这些解决方案的后续成本,通常导致更高的货物成本(这通常转嫁到最終用户上),这给服务器、月艮务、云、和其他递送造成很高的开发、维护以及运营负担。包括在本公开内容中概括描述的那些技术的各技术是用于将从密码和/或系统观点来看被认为最优的各解决方案进行合成的候选技术。这样的合成可包括来自适当候选构件块服务的混合服务的自动合成,但这将不排除可包括操作或工程干预的半自动合成。在这些情况下,该解决方案可利用该能力来具体化在包装器外部构造的合成,这些包装器提供补充的系统、密码及其他特征,这些补充的系统、密码及其他特征向该场景或场景家族递送最优解决方案,但以理想地不对该场景或场景家族不需要的特征或能力施加实现或操作负担的方式。、
用于实现包装器的附加原因包括对具有控制对内容的访问的法律需求的不同个体或组织的要求、需求、以及策略之间的中介的需求。这是常见的业务场景,其中指定的一组各方必须集合在一起来同意解锁对某一内容的访问。一示例可包括临床试验(ClinicalTrial)场景家族,其中内容可能由FDA和HIPAA来管制,并且所有权可在各方之间共享,如药物赞助商(如Merck)和数据所有者(如Microsoft HealthVault (微软健康库))。药物赞助商可由于对保护作为研究的结果而生成的知识产权的需求而行使权力,而HealthVault可由于对保护它们的參与该临床试验的客户的匿名性和隐私性的需求而行使权力。存在着用于对冲突进行干预、调解、和仲裁的密码、系统、以及人类辅助的技术,因为这些冲突通常是由于不一致、冲突、或含糊地定义的策略而发生的。这些密码技术包括利用秘密共享的技术,并且各实现包括部署多授权中心密钥或能力生成器的那些实现。然而,这些技术不总是满足可验证的信任、灵活性、以及表达性、或系统性能和规模的正确混合。即使存在满足各方的所有可能不同和相冲突的需求的单个技术和相应实现,情况也可能是单个实现或部署将由于可能其他參与者对该技术、实现者、或主存方的信任缺失而不被ィ目任。 在这种情况下,包装器是候选解决方案,它们将用其他自动化技术来补充,或通过手动干预来补充,可能通过电子或手动工作流。这样的合成解决方案可利用将向业务网络中的特定一方或ー组各方提供一层控制的包装器。该包装器可任选地是被所讨论的一方或ー组各方信任的技术、实现、或部署。这ー包装器可參与同远程云的交互式协议,以可能实现后期绑定或者支持期满或撤消或者提供带可验证的信任的审计日志。或者这ー包装器可实现将基于访问凭证和某可访问策略来以合适的方式准许、阻塞、和/或记录访问的离线协议。用于通过包装器来实现可验证的信任的其他原因可包括对诸如密钥、ロ令、通行短语、证书、或其他知晓或所有权证明等资产或人工产物进行管理的需求。通常,密码系统可由于对生成、管理、备份、存档、保留、部署、安全粉碎、提供辩论(forensics)、以及支持服务器、服务和云以供以在故障情况下提供可用性、可伸縮性、等待时间、以及数据丢失和恢复时间上限的所需级别的服务级协定的方式来访问这些人工产物,而造成附加系统负担。对提供这些服务器、服务、或云的一定水平的信任的需求使这一点进ー步恶化。这通常通过信任的分层结构(如PKI)来完成。这些系统需要被进ー步保护,以使得服务器、月艮务、或云在被以任何方式损害的情况下不被准许启动通过可能扮演和中间人攻击的攻击。在这样的情况下,包装器提供可以按出于包括对人工产物的访问、认证、和检索的原因来减轻交互式协议的系统开销、复杂度、等待时间、以及WAN脆性的方式,来与提供补充能力的远程服务器、服务、或云合适地组合的候选解决方案。在这样的包装器的实施例中,外部包装器可持有用于访问内部包装器的必需人工产物。结果之一可包括消除了对存储和存档这些人工产物的需求,因为它们由于包含或通过高效的系统工程而有效地成为净荷的一部分。存在着提供混合解决方案的机会,其中这样的包装器可发起与远程服务器、服务、或云的交互式协议以实现期满或撤消或者出于诸如审计或辩论等目的而提供带可验证的信任的审计日志。实现这一混合解决方案的方式可优化施加在服务器、服务、或云上的负担,或者它可被优化来在存在网络问题的情况下操作。
在这些和其他情况下,包装器可能以便于业务网络中的可验证的信任的方式选择了技术、实现、以及远程服务器、服务、或云来用于可任选的交互式协议。包装器可被设计成实现线性分层结构或诸如树或图等更复杂结构。如上所述,这些结构可以是实际包含,或它们可以是虚拟的。这样的复杂结构可便于灵活且表达性的决策树,这些决策树可实现阈值參与、超控和托管、以及可能的异常和手动超控的组合。存在着可通过诸如多授权中心密钥或能力生成器等系统来提供等效能力的密码技木。这些技术和系统可被看作合成系统中不同包装器的候选,该合成系统满足业务网络中的參与者的由于所有商业、社交、政治、主权而造成的不同需求以及任何复杂的真实世界网络中必须被适应的其他复杂需求。 这样的复杂真实世界网络、生态系统、以及市场通常从初始一组參与者来有机地生长,其接着通过參与者的増加的数量的网络效果而生长。其他网络是自上而下制定的,可能通过标准或法令。其他现有网络,可能是有机地生长的,将由于可能的冲突或由于外来效果而分成各竖井。因此,能够支持具有可能通过由于作为该网络中的内在要求的信任的短暂本性而造成的设计来进行接合或分离的能力的网络“森林”通常是合乎需要的。这一公开内容和各实施例概括描述了使用包装器的许多原因中的ー些。真实世界中的应用解决一定范围的可验证的信任和系统需求,并通过基于模块化概念和构件块(包括上述构件块)的合适的合成和扩展来支持各种场景。为易于说明,并且出于教学的原因,先前文本有时使用了某些缩写或作出了包括以下描述的假设的隐式或显式假设。提供任何形式的可验证的保证的各技木,实现边界、控制区域、以及空隙的可能的系统解决方案,或者依赖于计算上困难的问题的密码或类似技术,突出为‘密码(crypto)’、‘密码术(cryptography)’ ‘密码解决方案’、或者其他类似或等效短语。然而,为免于疑惑,诸如可捜索加密等密码技术绝不是必须的。可以使用任何数学变换、编码、模糊化等,以及用于保护数据的其他技木,如隐藏该数据或以在没有重构图的情况下不能被拼接在一起的方式分割该数据。与诸如匿名性、机密性、完整性、隐私性、以及不可抵赖等其他术语相比,诸如签名或加密等操作或者诸如散列等技术往往在通常使用中较不含糊。在这样的互换中的其他方可包括诸如商业场景的外联网或业务网络等參与者。或者,这些可以是消费者,个体、朋友、以及家庭的社交、支持网络。或者,这些可以是跨不同主权实体或权限的个体或组织的网络。这些主权实体或它们的代表可以是促进或參与或这两者的參与者,并且可形成它们自己的网络,如NATO。该用于通过用于以可配置的方式来优化可验证的信任的包装器来实现合成的方法和装置被简称为‘包装器’。各实现可利用软件、硬件、或其他手段来实现离线协议,其创建了空间或虚拟容器。其他实现可包括与远程服务的交互式协议,或离线操作和交互式协议的某ー组合。促进事务或交互式协议中所涉及的各方(可包括服务器、服务、云、可以是人类或自动化的工作流端点)或其他方被称为‘云’。云的各实现可包括公共、私有、外包、专用、或多承租版本。用于可信计算和数据服务的无容器数据使用可信平台的技木,将数据(以及相关联的元数据)从保持该数据的容器(例如,文件系统、数据库等)分离,从而通过施加用所呈现的能力刺穿的数学复杂度保护罩来使该数据能够担当它自己的保管者,所呈现的能力诸如是由如在各实施例中描述的信任平台的密码密钥生成器所授予的密钥。以在不需要特定容器就能实施的情况下保留并扩展信任的方式,促进对数据或该数据的子集的共享或访问。被应用到数据的数学复杂度(诸如可捜索加密技术)保护该数据,而不管其中记录该特定比特的容器或硬件,即,该数据是被无容器地(containerlessly)(即,不管该容器地)保护的,并且因此不会受到以损害容器安全性为基础的攻击。在该特定“保险箱”被破解的情况下,内容仍然被保护。图13是用于提供如本文所述的安全的、私密的、以及可选择性访问的网络数据服务的ー个或多个实施例的总体环境的框图。出于说明性的目的,示出了多个企业1300、1302,但这些技术也适用于单个企业或许多协作企业。在各实施例中,使用如在下面详细描述的联合信任覆盖1330,可基于FTO基础结构1330来共享企业1300的策略1310以及企业1302的策略1312的实施1320来用于协作工作。实施1320还可由每个企业1300、1302分开应用。就此,因为策略和实施完全在企业1300、1302的领域内(如基于信任覆盖1330),所以从客户立场来看,实际数据在云1340中的位置以及使用什么特定容器1342变得无关紧要,除了与客户实际关心的以下事项以外等待时间、可靠性、服务质量保证、备份、检索时间、大小保证等。因此,意识到通过信任覆盖1330使数据从保存数据的容器中释放出来,在各实施例中,数据存储管理层1350基于对存储资源的实时可用性以及它们各自特征的分析来自动地处理客户所关心的事项,以优化适合客户需求和期望的容器中的数据存储。存储管理层1350是虚线的,从而指示它的位置也不是关键的。存储管理层1350通常不具有访问、查看或改变存储在ー个或多个数据存储1342中的数据的密码特权,然而展示元数据中的某些(诸如文件大小或文件类型)可能是合乎需要的,以促进对客户将想要在未来如何使用该数据的理解,以使得存储管理层1350可做出智能的存储选择。例如,如果给予了存储管理层1350对该数据的足够查看而能理解该数据是视频,则存储管理层1350可将该视频保存在满足流媒体的要求的媒体存储中。图14是示出大体的“作为其自己的保管者的数据”概念的框图。使用在用户或企业控制下的策略和实施,数据和对应的日志被加密并且仅能用被授予用户的具体能力来访问,如在下面更详细地描述的。例如,通常,诸如云服务提供者的操作员エ等不具有能力的某人不能在不被检测的情况下查看、修改、篡改、或删除,因为他们没有数据特权。使用作为其自己的保管者的数据,策略由数据的所有者/发布者来设置,访问由该数据自己来实施/保证(无论该数据被存储于何处),从而使容器选择变得多余。信任保证由该数据实施,但是由该所有者/发布者通过描述订阅者/客户能够对该数据做什么来控制。如图所示,在一非限制性实施例中,企业1420 “拥有”与用户1426以及他们对企业1420的系统资源的使用有关的并与外部用户1430 (例如,移动工作者)有关的策略1424和策略1424的实施1422。使用作为其自己的保管者的数据,通过将数据存储在云1400中,可将实际的数据和/或日志1405与策略1424和实施1422分开,然而,云1400的操作员エ1410不能在不被检测的情况下查看、修改、篡改或删除该数据和/或日志1405。 图15是用于提供如本文所述的安全的、私密的、以及可选择性访问的网络数据服务的ー个或多个实施例的总体环境的框图。一般而言,示出了使用联合信任覆盖来分发信任的非限制性示例,计算设备1500 (例如,客户)处于第一控制区域1510中,计算设备1520(例如,云服务提供者)处于第二控制区域1530中,计算设备1560处于第三控制区域1590中,密码技术提供者1580是在第四控制区域1595中提供的,而密钥生成器1582可在第五控制区域1597中提供。计算设备1500、1520、1560中的每ー个可分别包括处理器P1、P2、P3并分别包括存储Ml、M2、M3。就此,如根据各非限制性实施例所描述的,提供了用于启用云中的经加密的数据1540的技术,以使得可基于访问特权从该云选择性地检索项1550或项中的一部分。就此,可提供ー组分析服务1570作为待存储的经加密的数据1545、1547顶部上的层,该层基于来自设备1500的本地数据集1505自动地确定要在何处最优地存储在云中维护的经加密的数据1540和经加密的数据1542。就此,服务1570确保当计算设备1500基于CTP1580/CKG 1582联合信任覆盖来检索该数据时,检索到的数据1552或检索到的数据1550是从给定请求的最优容器中检索的,或者如果是次优的话,则自动切换所述容器。例如,如果来自计算设备1560的当前容器对于客户的需求而言性能不好,或者如果客户的需求改变,则分析存储服务1570可将该数据实时地移动或复制到另一存储容器并无缝地 将服务切換到更合适的容器,例如,以满足服务质量要求。图16是用于管理容器的过程的流程图,其中如本文所述,数据充当它自己的保管者。在1600,第一控制区域中的第一计算设备从第二控制区域中的第二计算设备接收经加密的数据。该经加密的数据是基于密码密钥信息根据可搜索加密算法从第二计算设备的所定义的数据集的数据的加密而形成的。在1610,还接收经加密的元数据,该经加密的元数据是从对该数据的分析以及基于该密码密钥信息对该分析的输出进行加密而形成的。在1620,确定哪一(些)容器要存储经加密的数据或经加密的元数据的至少ー些。在1630,如果满足了预定义的条件,则可以自动地改变其中存储该经加密的数据的容器。图17是示出充当它自己的保管者的数据的ー个或多个方面的另ー框图。就此,容器是冗余的以用于安全,访问由密码包装器来实施,而策略由所有者/发布者设置并由密码包装器来保证。如下面在各实施例中描述的,取决于ー情形的特定安全需要,包装器可包括各种密码技木。例如,如图所示,策略是在企业级设置的,并且然后用户寻求对数据的访问权,该数据是由允许或拒绝进入的密码访问控制来包装的。取决于在企业设置的策略,诸如企业审计者、安全员エ、操作员エ等其他用户可以具有或不具有由该包装器定义的访问特权。如在图17的示例中所示,企业1720具有能够服从企业访问策略1730的企业员エ1722,并且这些企业员エ1722中的一些能设置企业访问策略1730。企业访问策略1730可影响能够如何对存储在云容器1700的数据容器1710中的数据1712进行访问、操纵、检索、搜索等。因此,当数据1712的用户1708尝试访问这种数据1712吋,由企业访问策略1730指导但又与企业访问策略1730分开的各密码访问控制1714保护数据1712免受用户1708的不当访问。数据容器1710的密码访问控制1714可反映不同的企业访问策略1730以应用于不同的访问实体或任务,诸如由安全员エ1704或云操作员エ1706执行的企业审计1702,以确保可见性被限于应当允许访问的那些人。数据容器1710可位于任何地方,并使其冗余以用于安全,并且访问由密码访问控制1714来实施。就此,企业访问策略1730可由企业所有者设置并由如由密码访问控制1714所实现的密码包装器来保证。图18是示出充当它自己的保管者的数据的另ー框图,其示出了数据能够超越传统容器安全模型。就此,如本文所认识到的,数据不仅可以位于任何地方,而且能以对给定情形最优的方式来将数据拼接或划分为跨越多个容器。放置可优化访问、恢复性等,并且存储管理层可处理一致性、版本化、垃圾收集等。如在图18中所示,企业1820定义其适用于企业员エ1822的企业访问策略1830,而数据1812被远程存储并由适用于希望访问数据1812的用户1810的密码访问控制1814来保护。该系统和用户1810对存储数据1812的容器是被存储在云1800中、存储在企业1802处的某处、还是经由覆盖网络1804来存储、或其组合是不可知的,且数据可跨越容器。图19示出存储管理层,该存储管理层执行诸如来自不同类型的多个数据容器的数据的自动粉碎、高速缓存、复制、重构等功能。可基于包括显式策略和访问模式的准则来执行这些过程。如图所示,从用户的观点看,包括数据1902和密码访问控制1904的数据容器1900被存储在用于存储所有数据的抽象存储层1910处,然而在现实中,受密码访问控制1904保护的数据1902可跨云数据服务1920、文件系统1922、企业数据库1924、覆盖网络1926等中的任一个或多个而被基于准则来粉碎、高速缓存、复制和重构,所述准则可包括策略和访问模式。 图20更一般地示出使数据能够充当其自己的保管者的安全性、隐私性、可靠性等的枢轴点是安全覆盖网络,该安全覆盖网络向数据添加密码访问包装器,无论该数据跨各数据容器存储在何处。具体而言,覆盖网络2010可以是中间存储介质,用于将由密码访问控制2004保护的数据2002的容器2000进ー步存储在云数据服务2020、文件系统2022或企业数据库2024中的任ー个或多个中。因此在其最終目的地方面,存储可以是分层的。图21是示出传统应用的框图,且其对世界(例如,数据库文件)的基于容器的视图不需要改变。相反,为了在联合信任覆盖存储场景中使用,可提供适配器,该适配器基干与应用和传统容器需求来执行密码协商、密码变换和高速缓存、版本化、租赁等。更具体而言,传统应用2100可按照一直以来的方式与云数据服务2110、文件系统2112以及企业数据库2114进行交互,然而,此时抽象存储层2120仍然能够使无容器数据在幕后发生。抽象存储层2120可展示适配器,所述适配器基于应用和传统容器特征来实现密码协商、密码变换、以及高速缓存、版本化、租赁等,并且然后引导容器化的数据2140成为无容器数据,例如经由结合图20描述的安全覆盖网络2130。图22是可与传统应用以及FTO知晓应用结合使用的示例体系结构模型。就此,启用FTO的应用2205可直接插入FTO 2200中并且有利地利用数据的安全且私密的存储、处理等。对于SDS知晓应用2215,可提供层2210,该层2210添加数据的密码粉碎和散布。对于一致性知晓应用2225,可使用现有的、未修改的覆盖网络并将其桥接到如由层2220所示的系统。例如,可经由层2220将Live Mesh、Fabric/CAS桥接到DaaS和XStore。最后,如结合图21描述的,可提供适配器2230,所述适配器2240基于传统应用2240和传统容器2235特征来执行密码协商、密码变换和高速缓存、版本化、租赁等。这些层和应用可利用基于联合信任覆盖的云存储所提供的益处。图23是示出密码包装器或信封在数据和/或描述该数据或该数据的特征的元数据上的一般使用的框图。作为示例,可按照可在数学上选择性地访问的方式共同地或分开地加密记录2302 (例如,数据净荷)和相关联的元数据和/或标签2300以产生经加密的元数据和标签2310和经加密的记录2312。使用这样的经加密的数据/元数据,可基于数学上选择性的可访问性来执行各种操作2320,例如,数据或元数据的搜索、对数据或元数据的逻辑运算、查询、备份操作、数据的审计等。除了加密元数据2300和记录2302之外,还可根据任何所需目标2314将可任选的附加数据添加到加密封装,或可将可任选的附加标签2316作为加密过程的一部分添加到内容,例如,允许或禁止对例如某类用户的访问的公共或秘密标签。使用这种附加数据2314或标签2316,可执行附加操作2330,诸如完整性检查、篡改检查、可用性检查等。
图24是示出净荷2402和标签2400的特定示例,净荷2410和标签2412被加密以形成经加密的标签2410和经加密的数据2412以用于操作2420。此外,如上所述,可使用数据2414来扩充该数据并且可使用标签2416扩充该标签,所述数据2414和标签2416可便于附加的ー组操作2430。在图24的示例上构造的图25是示出周围联合信任覆盖的示例。就此,可基于服从对稳健性的公共检查的开放方法来实现没有后门的CTP 2500。基于CTP 2500,可产生CKG2550以处理对用于执行操作2530 (例如,捜索、逻辑运算或查询、备份、审计、篡改检查、完整性检查、可用性检查等)的能力(例如,密钥2540)的请求。因此,云数据服务提供者2520提供服务,例如,经加密的元数据2510和经加密的数据2512的存储。在一个可任选的实施例中,该云按照对数据或访问模式无所知的方式来主存该数据。图26是示出其中使用信任覆盖将记录以及索引加密并上传到云的实施例的框图。就此,将记录和索引可捜索地加密以使索引可作为对相关联的数据的第一可见层而被选择性地访问。然后,基于对索引的捜索,可标识匹配一个或多个给定索引的各内容或记录,并然后该用户能够或不能基于特权来访问该匹配内容和记录,从而充当对数据的第二保护层——第一层是针对搜索或其他操作而对索引的访问,而第二层是对数据的访问。就此,可对该数据和相关联的元数据的不同部分应用任何数量的分层密码包装器。如图所示,客户2600可具有各个记录2602,在2630可从记录2602生成经加密的索引2604。在2640将记录2602和经加密的索引2604上传到云2610并作为记录2612和经加密的索引2612存储在云2610中。为了检索记录2612,例如,基于经加密的索引2614,在2650处,客户2600从云2610接收用至少ー个签名2622来签署的记录2620,并且在2660处可检查所述至少ー个签名2622。图27示出客户端能够如何利用联合信任覆盖体系结构来生成并上传经加密的索引到经加密的数据上以获得更丰富的云存储体验。该联合信任覆盖体系结构涉及将权カ分开以生成可信密码生态系统,并且在下面更详细地进行了描述。FTO 2785是ー个生态系统,该生态系统通过将相对于云或其他存储中的无容器数据进行的各段数学变换分开而使客户2775受益,并且如本文别处所述,该生态系统包括云数据服务(⑶S) 2780、密码技术提供者(CTP) 2770和密钥生成中心2790。作为示例,客户2775可具有各关键词2710与其相关联的文档2700。从CKG 2790检索用于加密的公共參数2765,而从CTP 2770检索用于执行数学变换的技术。为了执行上传,文档2700被加密2720并上传2730到云中的经加密的文档存储2750中。输入用于上传的位置2735和密钥2725连同关键词2710,以生成与文档2700的经加密的上传相关联的经加密的索引2740,并在2745处将在2740处生成的经加密的索引上传到经加密的索引存储2755。图27示出了经加密的索引数据的上传,图28示出了将索引解密以搜索特定内容,该搜索是基于该联合信任覆盖所提供的能力而被授权的,并且然后使用对搜索结果的可见性,该用户可被授予解密与该捜索有关的实际文档的能力或特权。就此,可通过该FTO基于策略和实施来分开控制对该索引的访问和对文档的访问。如上所述,FTO 2885是一个生态系统,该生态系统通过将相对于云或其他存储中的无容器数据进行的各段数学变换分开而使客户2875受益,并且如本文别处所述,该生态系统包括云数据服务(⑶S) 2880、密码技术提供者(CTP) 2870和密钥生成中心2890。在本示例中,客户2875形成查询2800,并随后在2805处从CKG 2890获取陷门2810,该陷门与查询2800 —起被呈现给该云。在云中,在2820处,基于从CTP 2870检索到的技术2815来搜索经加密的索引存储2825中的经加密的索引。随后,结果2835被仍旧加密地返回并在2840处被解密,从该结果提取位置2842和密钥2844。这向该系统给出了在2845处从经加密的文档存储2830检索经加密的文档2850的信息,在2855处可基于密钥2844将其解密以返回一个或多个文档2860,例如,来自图27的文档2700。图29-30是示出该系统的一些附加非限制性信任保证的框图;就此,可以使用证 明用户所接收的是正确的的任何算法作为附加层来在数学上向该用户证明该云没有提供无用数据。例如,一种技术被称为数据拥有技术(PDP),其中相对于经加密的数据来应用各标签,其可与确认数据的正确性来结合使用。可应用(并加密)类似信息以证明当数据被存储在云中时该数据没有被不适当地更改或删除。使用密码技木,这种证明通常采用密码质询和响应的形式。在图17中,PDP标签和经加密的记录、索引、元数据等一起被在云中编码并加密,而在图18中,基于与该FTO的、对该数据的完整性保持不变的密码咨询来执行验证操作。參考图29,如上所述,FTO 2985是一个生态系统,该生态系统通过将相对于云或其他存储中的无容器数据进行的各段数学变换分开而使客户2975受益,并且如本文别处所述,该生态系统包括云数据服务(⑶S)2980、密码技术提供者(CTP)2970和密钥生成中心2990。在该示例中,发布者2900通过在2920处基于从CKG 2990检索到的秘密2930和从CTP 2970检索到的技术2940以对记录和索引进行编码来加密该记录和索引2910。可将经加密或编码的记录和索引2950存储在云中。可将数据拥有证明(PDP)标签2960与在2920处的编码结合使用,数据拥有证明(PDP)标签2960稍后当数据被存储在云中时帮助确保该数据的某些方面,如本文别处更详细地描述的。如上所述,在图30中,基于与该FTO的、对该数据的完整性保持不变的密码咨询来执行验证操作。就此,FTO 3085是一个生态系统,该生态系统通过将相对于云或其他存储中的无容器数据进行的各段数学变换分开而使客户3075受益,并且如本文别处所述,该生态系统包括云数据服务(CDS)3080、密码技术提供者(CTP)3070和密钥生成中心3090。PDP标签3040可供系统的审计者3000用以检查存储在云中的数据的完整性。基于随机数3005,并且基于从CKG 3090检索到的秘密3025和从CTP 3070检索到的技术,审计者3000向云中的证明者3020发出质询3010。证明者3020也结合实现该证明算法来使用技术3045。就此,证明者3020接收经加密的记录和索引3030以及PDP标签作为输入并向审计者3000返回彳目息,该彳目息在3050被验证。基于在3060处该验证操作是成功还是失败,通知审计者3000是否维持了经加密的记录和索引3030的完整性。如下面更详细地描述的,可将能够为服务用户提供对隐私和不可复制性的强保证的各种密码技术结合到服务的提供中。通过将这些密码技术与数据保护技术相集成,可按照使该数据的所有者和企业客户(“客户”)对主存该数据的实体或云服务提供者或操作者(“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。如图31中所示,可加密XML净荷3102及其标签3100以形成经加密的标签3110和净荷3112。就此,通过将XML文档分为具有可能不同的保护等级的XML片段,允许ー种具有远为更粒度化的许可系统,该系统不依赖于作为发布者侧的文档的初始组织。此外,可基于任何函数3114向净荷数据添加附加数据,并且可应用附加XML标签来帮助要对可信XML片段应用的附加功能。对净荷3112/标签3110的操作包括操作3120,诸如搜索、查询、备份、审计等。基于数据3114或标签3116的可任选的添加,可对该数据实现其他操作3130。例如,在数据符合社会保险号的模式的任何时间,可自动添加将该XML片段标记为私有的标签3116以保持这样的信息不被侵犯。就此,如果该数据/信息是XML格式的,则可向结构化的XML数据应用上述关于数据/元数据技术中的任何一个以选择性地查询并获得对XML片段的访问权。XML具有标准格式,即く 标签“值”〉(〈tag “value”〉)或〈标签“值” |XML 结束标签 > (〈tag “value” |XMLend-tag〉)。就此,使用结构XML,存在分层地表示该结构的方式以便存在将指向对数字托管模式唯一的CKG/CTP ‘帧’的外部包装器。因此,当存在访问嵌入的片段的需要时,将现有的(或具体化,新的)信任和<CKG>和<CTP>包装器一起使用。这允许用户在被准许时搜索、提取和解密这些片段。此外,可使用PDP来验证所请求的具体XML片段自从被初始创作起未被篡改。因此,在各实施例中,通过各种“装饰”来创建XML片段或完整记录(“净荷”)的 “可信信封”,所述装饰允许该信任来运行全范围信任保证,如机密性、隐私性、匿名性和完整性。这与上述无容器数据实施例相一致。将数据从其容器(例如,文件系统、数据库)分离的机会以保持并扩展原来的保证而不需要容器来实施的方式来促进了共享。基于业务需要,井随着不同技术的出现,还可在密码搜索、基于密码的篡改检测等之外添加任何其他包装器。使用XML数据,可将标签添加到该数据以帮助调制该数据的一致性,这可取决于领域和应用。有利地,XML可包括对认证、授权、模式、历史、踪迹、一致性等进行编码的可搜索元数据。如果它是较大文档的一片,则它还可编码用以定位其他相关片段的清单信息。能够使用任何所达成一致的CKG/CTP以及能够与能够在新技术变得可适用时作为可搜索加密和TOP的补充来添加其他包装器的技术独立性,启用了处理任何类型的云场景的灵活的体系结构。还可扩充或添加XML标签来调制一致性、轨迹等。当将其与数据散布技术组合时,实现了关于机密性、隐私性、匿名性和完整性的强保证。可使用此“可信信封”来装饰具有附加元数据的任何净荷,所述附加元数据可包括模式信息、一致性提示、版本和轨迹、机密等级(例如,在使用群计算(“crowd computing”)吋)、用于从片的其他对等体重构此净荷的定位符等。在一个非限制性应用中,可信XML提供“松格式绑定”来生长该生态系统以催化网络效果。FTO (将这些技术和密钥管理器參数化)和XML通用交換格式的组合促进了在适应散布技术、应用、领域、场所、主权、格式和其他要求时的更大灵活性。在另ー应用中,用于聚合的当前结算和协调涉及易于出错、省略和欺诈的点到点交換。插入安全和私有数据服务将因此以促进选择性公开以使得可信实体保持可靠的方式而直接使会计、审计等受益,并且可允许适当的调节者(顺从、法律)或居间者(冲突解决等)选择性地窥视XML标签以在事务中建立信任。可信XML的优点在于净荷能够在參与者之间编码专有格式,其中存储方不需要知晓或者甚至不必试图理解该专有格式。可信包装器的各层因此添加了大量的技术和业务价值以及法律和顺从价值和主权实体价值。在另ー应用中,由于(a)不同的不兼容的传统系统以及(b)更重要的-患者对现有解决方案提供者的粘性的丧失,健康护理系统集成是繁重的。通过引入云数据服务作为交换所,并引入可信XML作为交换格式,这些现有解决方案提供者能够将此当作维持该粘性的途径,同时还利用由XML促进的通用格式。至于使用启用FTO的“路由器”(“网关/监护者”)和利用可信XML,是因为(a)路由器可以做它们的事情而不需要了解路由所需知识以外的更多知识,(b)路由器具有对错误和不良行为的更少的自由度,(c)由于后期绑定,消除了复杂的密钥管理。此外,可添加或扩充标签或可将附加的元数据应用于XML文档以指示内容具有各种敏感等级。例如,可存在具有公共、秘密、以及绝密段落的文档。例如,具有秘密许可的执行捜索和请求访问的人将只具有对公共和秘密段落的访问权。也可使用段落的分类来确定加密机制、密钥和访问策略。例如,绝密内容不能从无线或远程设备访问。类似地,可使用所述分类来创建与可如何存储数据、可在何处存储数据、可存储数 据多久有关的策略。例如,医疗数据必须使用AES 256加密每天一次地备份到可信数据中心中的安全服务器。图32是示出在一实施例中的用于主存可信XML的示例性过程的流程图。在3200,第一控制区域中的计算设备从第二控制区域中的计算设备接收经加密的XML数据,该经加密的XML数据包括经加密的XML净荷数据和经加密的XML标签。该经加密的XML数据是基于密码密钥信息根据可搜索加密算法从对该第二控制区域中的该计算设备的所定义的XML数据集的加密而形成的。在3210,接收基于密码密钥信息加密的辅助元数据,其中该辅助元数据是从对经加密的XML净荷数据或经加密的XML标签的分析而形成的。在3220,接收对数据的请求,该请求包括基于密码密钥信息的能力,该密码密钥信息定义用于访问该经加密的XML净荷数据或该经加密的XML标签中的ー些的特权,从而允许对该经加密的XML数据的、如该能力所限定的选择性访问。在2030,可任选地,确认经加密的XML数据和对应的XML标签数据的正确子集由符合该请求的订阅者设备接收。图33是示出在一实施例中的用于主存可信XML的示例性过程的流程图。在3300,从密钥生成组件接收密码密钥信息,该密钥生成组件基干与订阅者设备的身份信息来生成该密码密钥信息。在3310,订阅者设备请求经可搜索地加密的XML数据和对应的XML标签数据的子集。将该密码密钥信息传送到该经可搜索地加密的XML数据和对应的标签数据的存储提供者。在3320,如在该密码密钥信息中定义的能力所允许的那样解密经加密的XML数据和对应的XML标签数据的子集。在3330,确认经加密的XML数据和对应的XML标签数据的正确子集由符合该请求的订阅者设备接收。在3340,验证经加密的XML数据和对应的XML标签数据的子集的内容在接收到该经加密的XML数据和对应的XML标签数据的子集之前未被删除或修改。图34是示出在一实施例中的用于主存可信XML的示例性过程的流程图。在3400,基于从分开的密钥生成器接收的密码密钥信息根据可搜索加密算法来加密XML数据以形成经加密的XML数据,该经加密的XML数据包括经加密的XML标签信息,其中该密钥生成器生成该密码密钥信息。在3410,将该经加密的XML数据传送到网络服务提供者以存储该经加密的数据。在3420,该经加密的数据是可根据基于作出请求的设备的身份信息而授予该作出请求的设备的所选择的特权的后期绑定而选择性地访问的。图35是示出在一实施例中的用于主存可信XML的示例性过程的流程图。在3500,订阅者设备做出对包括经加密的XML标签的经可搜索地加密的XML数据的子集的请求。在3510,从密钥生成组件接收密码密钥信息,该密钥生成组件基干与订阅者设备的身份信息来生成该密码密钥信息。在3520,根据在密钥信息中所定义的赋予给该订阅者设备的特权,解密经加密的XML数据的子集。如向各实施例提供的,可信XML以从整体到较低节点级来保护数据,并且能够在该节点级以通用且高效的方式来保护访问特权。在下文阐述了示出ー个或多个概念的各示例,其中使用了匿名IBE和/或其中AES被用作用于模糊化的密码技木。然而,要理解,在这些示例中可以使用任何合适的数学变换,并且因而用于模糊化或隐藏XML数据的给定技术不应被当作对各更一般概念中的任何概念的限制。在一个实施例中,XML的编码可通过使该XML通过编码变换器来完成,该编码变换器输出可信XML,并且解码可通过使该可信XML通过定义的解码变换器来完成。就此,同一节点可被倍増地保护(在多个级处包装)已具有对该节点的边界的更高保护。在以下说明性而非选择性的示例中,病历被用来解释使用进行选择性编码来不同地对待不同的数据部分的概念的可信XML的实现。
< xml version=”1.0" encoding="utf-8" >
くPatierrtInfo Id=”JK392E8D">
<Name>John McKenzieく/Name〉
<Doctor>Dr. Smith </Doctor>
<LabResults>
<BloodTest>
<TestData labname="Quest">
<data> ... </data>
</TestData>
く/BloodTest>
<MRITest>
<Te s t D at a I ab n a m e=" M e I a" >
くdata〉... </data>く/T estData>
</MRITest>
<XRayTest>
くTestData labname="Lest">
<data> ... </data>
く/T estData>
<TestData I abn ame=" Vanta">
<data> ... </data>
</TestData>
</XRayTest>
</Lab Resui ts>
</PatientInfo>在一个非限制性方面,可信XML启用对XML文档的所选部分而非整个文档的保护。例如,一个实现可以保护内部块的被标记为‘action= “encode”(动作=编码)’的元素。例如,为保护患者的姓名,Name (姓名)元素可被如下标记〈Name action="encode">John McKenzie</Name>结果,数据净荷(在此是‘John McKenzie’)对任何人而言将是不可见的。这ー选择性编码可以在任何元素级来完成,例如它可以针对平面元素(如上所述)来完成或它可以针对某分层元素(如iBloodTest (血检)’)来如下设置
くBloodTest action="encode">
<TestData labname="Quest">
<data> ... </data>
</TestData>
</BloodTest>在以上示例中,‘BloodTest’元素内部的整个‘TestData (检测数据)’将对任何人不可见。为了设置来执行各数学变换,诸如但不限于加密,可生成预处理器信息。例如,匿名IBE (AIBE)和AES可被用作密码技木,但同样要注意,这些是非限制性的。在一个实施例中,该系统可具有用于管理和生成AIBE的秘密的独立的能力生成中心(CGC),如针对本文其他位置所述的联合体系结构所概括描述的。为了执行AIBE设置,在一个实施例中,CGC可以生成公共參数(PUB)和主密钥(MSK)0在CGC中,MSK可保持是秘密的。PUB可被提供给应用的最终用户以供使用AIBE。
图36是用于AIBE的上下文中以对可信XML文档进行选择性编码的示例性非限制性算法的流程图。在3600处,接收被标记来‘编码’的元素的内部块(R)。在3610处,生成新加密密钥(K),并且在3620处,用该密钥(K)来加密内部块(R),例如(R) — R’。在3630处,生成‘身份关键词’(《),它是稍后用来请求能力的关键词。在3640,使用(w)来用任何非对称算法保护(K),并且结果记作(K,)。在3650,可丢弃(R)和(K)。在3660处,可将(R’)和(K’)添加到算法信息和服务信息,以供稍后获得对应的能力。以下是使用AES和AIBE的示例实现。以如下元素开始
<BloodTest action="encode">
<TestData labname="Quest">
<data> ... </data>
</TestData>
</BloodTest〉在该示例实现中,(R)如下〈TestData labname="Quest">〈data〉…〈/data〉〈/TestData〉对于要作为编码的一部分来执行的数据处理,生成ー个256位的AES加密密钥(K)0接着,AES加密记录(R),例如,AESk (R)—R ’作为示例,R’的64基编码(Base64Encoded)的值可如下表示pDB9AaoGgBMbkUAox/+thz6IlIffpE21Qj0Ziff8I9vQ910A3ffrRaIUTffg9iDqvgu7svclHlSjENgBWDzlo5gaWYXlD+Ib3j6VpGX13mwd5Dq5FctLQFbSLWZCBzsCC/0Rbe6Aliwk+6fGam/GrVcyuXeocIxUsmSBc0hhhwwdbz2IKpvY+rqff63uglgcbn4pyMbn0diofbP0roqVXyCbFCDGbS46cmac8YKeDGrCURayt/yZW3Z7AwCzLvN3py6LBZvj8W41JbzND5fa/S3bdfg==随后可以取该文档的‘Id’并且它可被附加在‘element (元素)’名之后。这将被用作‘身份关键词’(W)。例如,在此,(w)可以是“JK392E8DBloodTest”。接着,使用AIBE来保护(K),例如,如下AIBE (PUB, W,K) — K,作为经由AIBE进行保护的結果,K’可能看起来如下32, BuLI8ihhSAV3oxa9hm7Dx70BuLI8i, 9uzEeIG89oAasixlbDLae9uzEeI, zn9xpp89kZtTio0zn9x, fmmxLd3Ehg 1 BF.fmmx如上所述,此时,R和K可被丢弃,并且可以生成所输出的XML。至于对所输出的XML进行编译,(R’)被保持在‘Value (值)’元素的内部,例如,如下〈Value〉pDB9AaoGgBMbkUAox/+thz6IlIffpE21Qj0Ziff8I9vQ910A3ffrRaIUTffg9iDqvgu7svclHlSjENgBWDzlo5gaWYXlD+Ib3j6VpGX13mwd5Dq5FctLQFbSLWZCBzsCC/0Rbe6Aliwk+6fGam/GrVcyuXeocIxUsmSBc0hhhwwdbz2IKpvY+rqff63uglgcbn4pyMbn0diofbP0roqVXyCbFCDGbS46cmac8YKeDGrCURayt/yZW3Z7AwCzLvN3py6LBZvj8W41JbzND5fa/S3bdfg==〈/Value〉接着,添加所使用的变换算法。在此,例如,它可以是Encrypt (加密)和AES。
<Transfomiation Method〉
<Type>Encrvpt</Tvpe>
< AI 叫rithm>A ES</AI ^orithm>
</T ra n s formationM ethod>
此外,定义名字空间并将其封装在‘Data (数据)’元素内部,例如,如下
<tO:Data xmns:tO=”http:/./TrustedXm
01/t!,a!isformei's”>
<t0 !Transformation Method>
<t0: Ty pe> En cry pt</t0: Ty pe>
<t0: AI go rith m> A ES</.tO: A lgorith m>
</10: T r a n s f'o nn a t i o n M e t h o d>
<t0:Value>
pDB9AaoGgBMbkljAox/+thz6IlIVVpE2!QjOZiW8I9vQ9IOA3VVrRaIUTWg9iDqvgu7svclH!SjENgBWDzlo5gaWYXlD+Ib3i6VpGX13mwd5Dq5FctLQFbSLWZCBzsCC/ORbe6A I iwk+6fGam/GrVcyuXeocixUsmSBc0hhhwwdbz2IKpvY+rqVV63 uglgcbn4py MbnOdiofbPOroq VXyCbFCDGbS46cmac8 Y KeDCirC LI Rayt/yZW3Z7AwCzLvN3py6LBZvj8W41JbzND5fa/S3bdfg==
</t0: Value〉.
<tO:Data>至于密钥,(r)在Key (密钥)元素内部维护,例如,如下
<Key>
32,BuLI8ihhSAV3oxa9hm7Dx70BuLI8i,9uzEeIG89oAasixlbDLae9uzEeLzn9xpp89kZtTio0zn9x,fmmxLd3Ehgl 6Efmmx</ Key>再一次,添加所使用的变换信息。在此,例如,它又是Encrypt和AIBE,例如,如下 <TransformationMethod>
<T ype>Encrypt</T ype><Algorithm>AlBE</Algorithm>
</T ran sformationM ethod>还添加解码器检索其密钥(Key)的服务信息,例如,如下
<Encrvpnonlnfo xmlns: e0=" http ://TrustedXml_01/transfbrmers/AIB E" > <KeyProviderService> http://TrustedXml_01/aibe/cgc s\ し </KeyProviderService>
<Key ProviderAciion>GetCapabi Iity </Key Provider Action> く/.E n c ryp t i o n info >例如,名字空间可被定义并封装到‘Keylnfo (密钥信息)’,如下
<t0:KeyInfo xmlns:t0="http://TrustedXml 01/transfoi'mers”〉 <tO:TransformationMethod>
<tO:Type>Encrypt</tO:Type>
<tO: Algori thm>AIBE</tO:Algorithm>
</t0: T ransf'ormationM ethod>
<eO: EncryptionInfo xmlns:eO=”http://TrastedXml—O l/ti.ansformers/AIBE”> <eO:KeyProviderService> http://T r U stedXin 1—01 /aibe/cgc. svc </e O: KeyProviderS ervice>
<eO: Key Provider Action>GetCapabil ity</eO: Key Provider Action> </eO:EncryptionInfo>
<Key>
32,BuLI8ihhSAV3oxa9hm7Dx70BuLI8i,9uzEeIG89oAasixlbDLae9uzEeI.zii9
xpp89kZtTio0zn9x,fmmxLd3Ehgl6Efmmx
</Key>
</tO:KeyInfo>BloodTest的示例输出元素如下、くBloodTest action=”decode”>
<T ran sfbrmed Data>
<t0:Keylnfo xmlns:t0=”lmp://TrustedXml_01 /transformers”〉 <t0: Transformation M ethod>
<iO:Type>Encrypt</tO: Type〉 <tO:Algodthm>AIBE</tO:A]goHthm> </tO:TransformationMethod>
<e0: Encrypt i on I nfo xmlns:eO=l,http:// rrustedXml 01/transformers/AIBEn> <eO:KeyProviderService> http://「rustedXml—01/aibe/cgc.svc </eO:KeyProviderService>
<e0: Key Provider Ac tion>GetCapabi I ity</eO: Key Provider Action> </eO:Encrypiion[nfo><Key>
32,BiiL18ihhSAV3oxa9hm7Dx70BiiLI8i,9uzEelG89oAasixlbDLae9uzEeI,zn9xppS 9kZtT io0zn9x,fmmx LcB Ehgl 6E fmmx</Key>
</t():Keylnfo>
<tO:Data xmlns:tO=”http:."TrustedXml—Ol /transformers”:〉
<t0: T ransformationMethod>
<tO: T y p e > E n c ry p t</t0: T y p e >
<t0: AI gor i th m> A E S </t(): AI gori tlrm >
</t 0: T r a n s fo rm a t i o n M e t h o d >
<t():Value>
pDB9AaoGgBMbkUAox/+thz6IlIWpE21 QjOZiW8I9vQ91 OA3WrRaIUTWg9iDqvgu7svclH I SjENgB\VDzlo5ga\VYX ] D+Ib3j6VpGX 13mwd5Dq5FctLQFbSLWZCBzsCC/ORbe6A I i w k+6 fG am / G r V c y n X e o c I x U s m S B c 0 h h h w w d b z 21K p v Y+1' q W63 uglgcbn4py MbnOdiofb POroq VXyCbFCDG bS46cmacS Y KeDGrCU Ray t/yZW3 Z7AwCzLvN3py6LBZ¥j8W41JbzND5fa/S3bdfg==
</tO:V alue>
</tO:Data>
</T ransformedD ata>
</BloodTest>以下输入的记录和经变换的输出示出了一示例变换。示例输入记录
く xml version=" 1.0" encoding='!utf-8'! >
CPatieniInfo Id=,!JK392E8D">
<Name action="encode">John McKenzie</Name>
<Doctor>Dr. Smith </Doctor>
<LabResults>
〈BloodTest action="encode">
<Te s t D ata ] a bn am e="Quest">
<data> ... </daia>
</T estData>
<7BloodTest>
<MRlTest>
<Te s t D ata I abn a m e=" M e I a" >
くdata〉... </data>
</TestData>
く/MRITest:〉
<XRavTest>
くTestData labname="Lest" action="encode"> くdata〉... </data>
</TestData>
<TestData labname="Vanta">
<clata> ... </data>
</TestData>
</XRayTest>
</LabResults>
</Patient]nfo> 示例经变换的输出记录< xml Yersion=lfLOfl encoding=nutf-8n >
<ParientInfo [d=”JK392E8D">
<Name action=”decode”>
<TransformedData>
くtO: Key lnfo xnilns:tO=”http://TrustedXml—OI/transformers”〉 <tO:Transformation Method〉
<tO: T ype>Encry p t</tO: Type> <tO:Algorithm>AIBE</tO:Algorithm>
</tO: TransformationMethod>
<e O: Enc iy p t i o nln foxmlns:eO=1,http:// i'rustedXml 0 l/transformers/A[BEn>
<e0:KeyPro¥iderSeryice>http;//TrustedXml_01/aibe/cgc.s¥c</e0;Key ProviderServi<eO:KeyProviderAetion>GetCapabilityく/eO:KeyPro' idei iction> </cO: R nc rvption I n fo>
<Key>
32,GIQO12Wooxa9hm7Dx70BuLI8ihhSAV3,oAasixlbDLa42gFFe9uzEeIG89589XBMSkZtTio0zn9xpp,hgIIAl 6CfmmxLd3E</Key>
</tO:KeyInfo>
<tO:Data xmlns:tO=,fhttp://TrustedXml 01/transformersn> <t():"l'ransformationMerhod> <iO:Type>Eiicrypt</iO:Type>
<t0:八 lgorithm〉八 ES く/tO:八 lgorithm>
</t 0: T ransformation Mcth od>
<t0: Value>
9ItK!H620ezLZXG4QGr6DKikZOgMxFePzFs849Ft\9WEbaOqhPO.aJUVAkmfHP2HRW7SOQfdihNj I wBdM95KtgeKrjb20/0S/l i9SIIU6zprU=
</iO:Value>
</tO:Data>
く/丁 ransformedData>
</Name>
<Doctor>Dr. Smith </Doctor>
<LabResults>
<BioodTcst acrion="dccodcf,>
<T ransforrnedData>
<t0: Key Info xmlns;tO=1,http ://TrustedXm 1_01 /transformers1^
く tO: T ran sformati o n M ethod>
<t0: Ty pe> Enc rypt</t0: T ype>
<t0: Algorithm>AIBE</tO: Algorithin> </tO:TransfoiTnationMethod> <eO:EncryptionInfo

xmlns:e0=Hhttp://TrustedXml_01/transformers/AIBEn>
<e0:KeyProviderService>http:/;TrustedXiTi]_01 /aibe/cgc.svc</eO: KeyProviderServic
<e0: Key ProviderA ct ion>GetCapability</eO: Key Provider Acri on>
</eO: Encrypti on In fo>
<Key>
32,B,jLI8ihhSAV3oxa9hrn7Dx70BuLI8i,9uzEcIG89oAasixlbDLac9uzEcI,zn9xpp8
9kZtTio0zn9x.fmmxLd3Ehgl6Efmmx
</Key>
</tO:Key!nfo>
くtO:Data xmlns:t0_11ittp//TrusteclXml_0i/transformers,'> <tO:TransformationMethod>
<tO:Type>Encrypt</tO:Type>
くtO: Algorithm〉AES</tO: Algorithm〉</tO:TransformationMethod>
<lOValue>
pDB9八 aoGgBMbkUAox/+thz6 川 WpE21 QjOZi\V8I9vQ9 i O八 3 WrRaiUTWg9iDqvgu7svcIH I SjENgBWDzloSgaWYXl D i-Ib3j6VpGX13mwd5Dq5FctLQFbSLWZCBzsCC/0Rbe6AI iwk-h6fGam/GrVcyiiXeoc{xUsmSBc0hhhwvvdbz2IKpvY+rqW63ug]gcbn4pyMbiiOdioftPOroqVXyCbFCDGbS46cTnac8YKcDGrCURayt/yZW3Z7A\vCzL¥N3py6LBZyj8W41JbzND5fa/S3bdfg=
<,iO:Value>
</t():I)ata>
</T ra n s formed D a ta>
</BloodTesl>
<M RI Test〉
くTestData labname_MMela1,>

くdata〉... </data>
く/Te st Data〉
</MRITest>
<XRayTest>
〈TestData Iabname=nLestn action=,5decode,!>
<TransformeclData>
<t():KevInfo xmlns:t()_i,htip://TrustedXml Oi/transfomiers">
<r.O: Transform ati on Meth od>
<tO: T ype>Encry pt</tO: T ype>
<10: Algori thm>AI B E</tO:Algorithm></tO:TransformationMethod>
<e 0:Enc ry piio n I n Ibxmlns:eO="http://TrustedXml 01/transformers/AIBE!,>
<eO:KeyProvicierService>hap://TrustedXni] OI/aibe/cgc,svc</e():KeyProviderService>
<eO:KevProviderAction>GeiCapabi]ity</eO:KeyProviderAction>
</e(): Enc vy ptionl n fo >
<Key>
32,ooxa9hiTiSoxa9hm7DSAV3oxai,iDqvgu7svclHlSjENgBWDzlo5gaVVYXI ,4QGr6DKikZ0gMxFePz,DLa42gFFe9uzEeI</Kc*y>
</tO;KeyInfo>
<lO:Daia xmlns:t()—”luip:"TmstedXml Ol/lrans!brmersM> <t():TransforrnationMethocl>
<tO: T y pe> E n cry p [</tO: Type><TO:Algorilhni>AES</lO:Algorilhm>
</tO: T ransformation Method〉
<tO:Va lue>

bSL WZCBzsC WDzlo5 gaWYX I D+lb3j 6 VpGX 13mwd5Dq5FctLQFbSLWZCBzsCC/0Rbe6A I CbFCDGbS46cm+6fGam/GrVcyuXeocIxUsmSBc==
</tO: Value〉
</tO:Data>
</T r a n s fo rm e d D a ta>
</TestData>
くTestData labname="Vanta">
<data> ... </data>
</TestData>
</XRayTest>
</LabResults>
</PatientInfo>以上示例因而突出显示了任何数据模糊化或其他数学变换可被应用于XML数据的不同部分,从而对不同部分不同地编码并且启用对数据的选择性访问。至于解码,最初,作出请求的实体检索或接收能力。为获得能力,解码器将‘身份关键词’(《)提供给CGC以请求‘能力’(C)。取决于该请求,CGC提供该给定‘身份关键词’的能力(C)。就此,所提供的能力打开匹配的‘身份关键词’(W)的(K’)而不是其他K’。在该给定示例中,如果用户想要得到文档中的‘Name (名字)’,该用户提供元素‘Name’的‘身份关键词’(W)。在此,(w)将是“JK392E8DName”。一旦用户获得了该能力,则它可被应用于K’上以根据如下来得到K AIBE(K,,PUB,C) — K现在,有了 K,用户将能够使用该K来解密R’,例如,如下AESk (R,)—R下面针对补充上下文提供对无容器数据描述的各附加实施例和关于联合信任覆盖的细节。可信云服务生态系统的补充上下文如上所述,独立的数据保护和密码技术被以各种方式组合以增强关于数据(例如,作为存储在诸如由CSP维护的远程站点处的数据)的隐私性、信任和安全性。尽管下面以ー般数据或网络服务为上下文来描述一般生态系统,然而这种一般数据或网络服务可被用于在远程站点处存储数据的上述场景中的任ー个或多个。向网络数据服务提供数字托管模式,包括用于存储在云中的数据的可搜索加密技 术,从而跨多个实体来分布信任以避免单个实体造成的损害。在一个实施例中,密钥生成器、密码技术提供者和云服务提供者各自都作为分开的实体来提供,从而使得数据的发布者能够机密地(经加密的)将数据发布给服务提供者,并且然后选择性地将经加密的数据展示给请求该数据的订阅者,该选择性地展示基于被编码到响应于订阅者请求所生成的密钥信息中的订阅者身份信息中。相对于可捜索的加密/解密算法而言,由ー个或多个密码技术提供者实现的可搜索的公钥加密(PEKS)方案为任何给定的消息W生成陷门TW,使得TW允许检查给定密文是否是对W的加密,其中TW不掲示关于明文的任何附加信息。根据下面所述的各个实施例,PEKS方案可以用于基于包含 在诸如经加密的消息之类的经加密的数据(例如消息文本)中的关键词对所述经加密的数据确定优先级或进行过滤。因此,可以通过释放相应关键词的能力(有时被密码员称为“陷门”)来给数据接收者提供对经加密数据的与关键词有关的部分的所选访问。通过这种方式,可以在经加密的数据中检查这些关键词,但是保证不会从订阅者获悉比该订阅者的能力所允许的更多东西。为免于疑惑,尽管在此处的一个或多个实施例中将PEKS公开为用于实现可搜索加密的算法,但是能够理解,存在多种备选算法以用于实现可捜索加密。PEKS的一些示例性的非限制性的替代方案例如包括遗忘RAM。因此,在此所使用的术语“可捜索加密”应当不限于任何一种技术,并且因此是指宽范围的如下加密机制或加密机制的组合所述加密机制允许基于对经加密数据的捜索或查询功能来选择性地访问经加密数据的子集。可任选地,可以作为附加好处向生态系统中的数据的订阅者和发布者提供对结果的确认和/或验证。确认提供ー种方式来确认由于针对数据的子集的订阅请求而接收的数据项是正确的项集合,即数据的本应该接收的正确子集实际已经被接收。密码领域的ー种技术是数据拥有证明(PDP),然而,为免于疑惑,PDP仅仅是可以被实现的ー种示例性算法,并且可以使用实现相同或类似目标的其他算法。数据拥有的可证(Provable)或证明是关于如何頻繁、高效且安全地验证存储服务器忠实地存储了其客户端的可能很大的外包数据的主題。存储服务器被假定为在安全性和可靠性方面都是不可信的。对结果的验证提供用于检查项本身的内容的附加机制,即以确保结合订阅请求所接收的项未曾被任何未授权实体篡改过。密码领域中的验证的一个示例是数据拥有证明(PDP),然而,为免于疑惑,PDP仅仅是可以被实现的ー种示例性算法,并且可以使用实现相同或类似目标的其他算法。在密码领域中已知的另ー技术是可恢复性证明(P0R),然而,为免于疑惑,POR仅仅是可以被实现的ー种示例性算法,并且可以使用实现相同或类似目标的其他算法。POR是ー种由服务提供者或数据主存者(证明者)对客户端(验证者)进行的紧凑证明,其表示目标文件F在客户端可以完全恢复文件F并且未发生篡改的意义上而言是完整的。作为附加的选项,生态系统可以实现匿名凭证的概念,由此发布者可以按匿名方式上传关于其自己的信息而不暴露关键细节,并且订阅者可以受其能力的限制,使得其不能被暴露或被提供对由发布者上传的关键细节的访问。通过这种方式,发布者或订阅者可以与系统交互,同时仅仅暴露其希望向第三方暴露的那样多的信息。常规的web服务被限于静态客户端服务器布置和用于访问web服务的静态地定义的用户策略。然而,当根据经常改变和演进的复杂业务和其他关系来构思许多发布者和订阅者时,这样的常规web服务模型不能是灵活的或者足够安全的。因此,在各个实施例中,启用后期绑定,使得数据和内容的发布者和/或所有者可以基于订阅者是谁、基于订阅者的能力以及基于他们在寻找什么(例如基于针对数据的请求中所使用的关键词)来改变对经加密内容的访问特权。因此,订阅者能够选择性地访问的东西与发布者和/或所有者对访问特权的改变一致地动态改变,因为订阅者能力被编码在由运行中的密钥生成器所提供的密钥信息中。因此,为给定请求在为该请求生成密钥的时刻定义订阅者特权,并且因此该订阅者特权总是反映关于来自订阅者的请求的当前策略。类似地,可信云服务的服务器的管理员可以被准许观察由该服务器处理的活动和数据事务的日志,但是还可以被限制为不能看见任何客户姓名或信用卡信息。因此,订阅者的身份可以是限制订阅者能访问的数据类型的基础。在此,在构建对云服务的信任的上下文中提出可信生态系统的各种非限制性实施例,然而,在此提供的对生态系统的信任建立是更一般的,并且不限于应用于云服务。更确切而言,在此所述的实施例类似地适用于企业数据中心内的不同服务器或參与者。因此,尽管数据可能从未离开给定实体,但是在此所述的用于构建信任的技术同样适用于企业内的不同过程在单独控制区内操作的情況。在没有跨所有企业过程的可见性的情况下,可能造成类似的不信任,就好像參与者置身于企业之外。例如,服务器云即使在处于管理员的控制之下时或者管理员可能不注意或者为恶意时可能在企业内遭到破坏。除了适用于云中的经加密数据,本发明的各种技术还可以适用于存储在膝上型计算机或其他便携式设备上的数据,因为膝上型计算机可能丢失或失窃。在这种情况下,该设备可能最終为过于好奇的或者恶意的实体所占有,然而,在此所述的适于保护云中数据的相同技术还可以用于保护服务器或膝上型计算机上的数据。如果本地数据是经加密的,则在没有适当订阅者凭证的情况下,窃贼将不能理解经加密的本地数据,从而不能出示适当角色或能力来访问该数据。图37是根据一实施例的可信云服务框架或生态系统的框图;该系统包括可信数据存储3700,该可信数据存储100用于存储可搜索的经加密数据3710以及订阅者请求的经历了确认和/或验证的結果。就此,网络服务3720可以构建在安全数据3710之上,使得数据的发布者保留对赋予给例如通过网络服务3720请求该数据的订阅者3740的能力的控制。发布者3730也可以是订阅者3740,并且反之亦然,并且数据的所有者3750也可以是发布者3730和/或订阅者3740。作为ー些常见角色和可以定义的对应能力集合的示例,特殊类型的发布者3730和订阅者3740是管理员3760和审计者3770。例如,管理员3760可以是对数据3710的特殊许可集合,以帮助维护对可信数据存储3700的操作,并且审计者实体3770可以在审计的范围内帮助维护某些数据的完整性。例如,审计者3770可能订阅含有攻击性关键词的数据3710的消息,在这种情况下,审计者3770在根据所赋予能力受到许可的情况下可以在数据3710的消息包含这样的攻击行关键词时受到提醒,但是不能阅读其他消息。就此,可以基于如下能力构建无数场景将发布者数据置于数字托管之下,使得可以分发实现对该数据的选择性访问的密钥。例如,发布者向生态系统认证并且指示要上传到该生态系统的文档集合。该文档基于从生成密钥信息的単独的密钥生成器所接收的密码密钥信息根据可搜索加密算法被 加密。然后,经加密数据被传输给网络服务提供者以供存储该经加密数据,使得经加密数据可以根据基于请求设备的身份信息赋予给该请求设备的所选特权的后期绑定被选择性地访问。将密码技术提供者同经加密数据的存储相分离将附加地隔离经加密的数据免受进ー步损害。
就此,图38是示出了根据可信云服务生态系统的用于发布数据的示例性非限制性方法的流程图。在3800,发布者向该系统认证(例如发布者用用户名和ロ令、LiVE ID凭证等登录)。在3810,密钥信息由诸如密钥生成中心之类的密钥生成器生成,这将在下面的一个或多个实施例中予以描述。在3820,分开的密码技术提供者基于密钥信息对发布者文档集进行加密。在3830,经加密文档与能力一起被上传到例如存储服务提供者之类的网络服务提供者,使得可利用基于请求设备(订阅者)的身份信息所赋予的所选特权的后期绑定来选择性地访问经加密文档例如在订阅者侧,订阅者向生态系统认证,并且指示对数据子集的请求(例如对包含给定关键词或关键词集合的文档的子集的查询)。响应于从至少一个订阅者设备对经可捜索地加密数据的请求,密钥生成组件基干与订阅者设备相关联的身份信息生成密码密钥信息。然后,根据在密码密钥信息中所定义的赋予给该订阅者设备的特权,经加密数据的子集被解密。图39是示出根据可信云服务生态系统的用于订阅数据的示例性、非限制性方法的流程图。在3900,用于订阅数据的方法包括认证订阅者(例如订阅者用用户名和ロ令、LiVE ID凭证等登录)。在3910,订阅者作出对数据的请求。在3920,密钥信息由独立密钥生成实体基于订阅者请求而生成,其中订阅者的能力可以在密钥信息中定义。在3930,基于在密钥信息中所定义的能力来解密发布者数据的子集。例如,CSP可以对该数据进行解密。在3940,使发布者数据的子集可被订阅者访问,例如订阅者可以基于由所有者/发布者所赋予的可动态定义的能力来对该数据进行下载、查看、处理、改变等等。可任选地,用于加密、解密和密钥生成的技术可以由分开的密码技术提供者来提供,但是由任何參与者来主存。在一个实施例中,订阅者设备的身份信息包括该订阅者的角色。例如,审计者角色、管理员角色或其他预先指定的角色可以被发布者/所有者用作限制或赋予对经可搜索地加密的数据存储的各部分的访问的基础。图40示出了示例性的生态系统,该生态系统示出了密钥生成中心(CKG) 4000、密码技术提供者(CTP) 4010和云服务提供者(CSP) 4020的分离,由此消除单个实体在可信生态系统中造成损害的可能性。就此,客户4030包括数据的发布者和/或订阅者。可任选地,CKG 4000可以基于例如由CTP 4010提供的參考软件、开源软件和/或软件开发工具包(SDK)来构建,从而使得多方的构件块能够自己创建这样的组件或者对第三方实现这样的生态系统组件感到满意。在一个实施例中,SDK由CTP 4010来提供,并且可以被ー个或多个參与者用户用于主存或实现CKG 4000、下面将更详细描述的计算和存储抽象(CSA)和/或密码客户端库。可任选地,SDK可以是从CTP 4010分发给主存CKG 4000的实体。一般而言,CKG 4000、CTP 4010或CSP 4020中的每个都可以根据给定实现被细分为子组件,然而总体分离被保留以维持信任。例如,诸如主公钥(MPK)递送4002、客户端库下载器4004、秘密密钥提取器4006、信任验证器4008或者其他子组件之类的CKG实体4001可以按子集的形式分开地提供、或者作为集成组件一起提供。诸如用于编码和解码的客户端应用4012、备选的加密技术4014、用于与CKG对接的应用4016、其他密码构件块4018等等之类的CTP实体4011也可以按子集形式分开地提供或者一起提供。此外,可以认为CSP4020是许多分开的服务提供者,如分别主存存储服务4024和服务主存4028的CSP4022、4026,或者这样的服务可以一起提供。能够理解,由可信生态系统中的一个或多个參与者主存的CKG或CKG实例不需要是单个单片实体。更确切而言,CKG可以被分成多个(冗余)实体,这些实体协作以生成密钥,使得操作即使在參与者的小子集离线的情况下仍然可以继续。在一个实施例中,可任选地,參与者的集合即使在这些參与者的小子集已经被对手损害或者以其他方式变为不可用或不受信任时仍然可以整体上受到信任。图41是示出了用于为企业4100执行云服务的可信生态系统的其他好处的另一体系结构图。例如,企业4100可以包括不同组织4102、4104、4106、4108。该图中的不同组织4102、4104、4106、4108示出了 各组织可以采取相对于实现用于使用系统或密钥生成的策略而言那样多或那样少的所有权。例如,组织4102实现其自己的策略4112,但是使用集中式密钥生成器4122,而组织4104选择实现其自己的密钥生成器4124并且实现其自己的策略4114。组织4106也实现其自己的策略,但是依靠第三方CKG 4126,而组织4108选择依 靠第三方策略提供者4118和独立CKG 4128。就此,为了发布数据,发布者4140基于来自CKG 4122的输出获得用于对数据进行加密的公共參数4135。基于公共參数,数据在4145处由发布者设备4140使用独立密码技术提供者来加密。经加密数据被上传到存储抽象服务4150,该存储抽象服务4140隐藏与由诸如CSP 4172、4174、4176或4178之类的ー个或多个CSP 4170存储经加密数据相联系的存储语义。在订阅者设备4160上,对数据的请求导致从CKG 4122生成私有秘密密钥4165。私有秘密密钥4165包括如下信息该信息使得订阅者设备4160能够通过在4155处对经可搜索地加密的数据进行解密来选择性地访问该数据。再次,从CSP 4170检索数据的语义被存储抽象服务4150隐藏。而且,被赋予给订阅者设备4160的特权是由于由发布者/所有者所赋予的能力的后期绑定而产生的特权的当前集合。从图41中能够理解,多个数据所有者(企业或消费者)可以如在此所述的那样參与可信生态系统以建立可信关系。在这种情况下,每个所有者都可以主存或控制其自己的CKG(例如组织4104的CKG 4124),使得对数据的请求或查询被转发给相应CKG以从所请求数据的所有共有者收集所需的密钥。图42是示出了通过存储抽象层4210来适应于不同存储提供者的另ー框图。对于该可信生态系统,分别具有客户端应用4240、4242的桌面4230、4232可以如上所述的那样发布或订阅数据,从而向密钥生成中心4220发起对用于对数据进行加密和解密的密钥信息的请求。类似地,服务4244、4246、4248也可以是生态系统中的发布者和/或订阅者。就此,为了由私有云存储4200、SQL数据服务存储4202、或简单存储web服务4204等等中的任一进行存储或提取,存储抽象服务4210 (如名称所隐含的那样)抽象出关于远离客户端的ー个或多个特定存储库的细节。就此,为免于疑惑,图42针对多种情況。在一种情况下,图42通过存储抽象服务(有时亦称计算和存储抽象(CSA))涵盖了存储提供者(将其抽象为个体)的非居间化。另外,图42涵盖了如下场景数据被分割和/或扇出(例如为了冗余)为可以为相同或不同类型的多个后端存储提供者的场景,使得原始数据即使在后端存储提供者之一(或少数)意外地或无意地删除或改变其数据副本时仍然可以被重构。图43示出了与包括服务器操作系统(OS) 4314和存储服务4312的存储抽象服务4310相结合的存储的其他方面,该存储抽象服务4310抽象出私有云存储4300、SQL数据存储4302、简单存储web服务存储4304等等的存储细节。客户端可以是分别具有客户端应用4340和4342的桌面4350或4352。密钥生成中心4320可以包括在服务器OS 4324上执行的密钥生成器应用4322。就此,具有活动目录4336、服务器OS 4334和安全令牌服务(STS)4332的组织4330可以是生态系统中的发布者或订阅者。就此,存储传输格式(STF)是标准交換格式,其可以用于在多个库的范围内交换经加密数据和元数据。例如,组织4330可能希望在存储服务提供者4300、4302或4304之间传输电子邮件数据(在这种情况下可以使用STF )。图44是示出了可信生态系统4420中的各个不同參与者的另ー框图。如上所述,有利地,企业4400可以将数据量的存储和维护从现场推卸给云存储服务提供者,其中云存储服务提供者更适于处理这样的数据量,同时维持数据将不会对错误的订阅者解密的舒适性,因为企业维持对针对经加密数据所定义的能力的控制。例如,组织4402可以操作诸如Sharepoint之类的协作应用4412。就此,组织4402可为sharepoint数据建立数字托管或者可信域。策略4432和CKG 4434可以由第一数据中心4430来实现,该第一数据中心4430用于通过为可信域定义密码密钥信息4445来建立安全空间。然后,例如担当发布者4414的另ー组织4404可以基于从CKG 4434获得的密钥信息对数据进行加密,此时,第二数据中心4440的计算和存储抽象组件4442处理在第三数据中心4450处(例如在CSP 4452中)存储经可搜索地加密的数据的细节。反过来,当组织4404的订阅者4416请求数据时,私有密钥或秘密密钥信息作为提取4465的一部分被递送给订阅者4416。接着,基于包括为订阅者定义的能力的私钥信息,由该订阅者所请求的数据在4475被解密,其中假定该订阅者具有特权,并且抽象层4442再次处理底层存储4452的细节。图45是可信云计算系统的示例性非限制性实现的一些层的代表性视图,在该计算系统中,不同构件可以由不同或相同实体来提供。在该层栈的底部是数学和密码库4586,其用于实现加密/解密算法。可以提供各种密码方案的定义的抽象作为细节库4586与可搜索密码方案4582的实际实现之间的中间层4584。层4582、4584和4586—起形成较大的密码服务层4580,该密码服务层4580在与抽象层4560组成软件即服务(SaaS)应用生态系统时形成实现可信数字托管4570及其存储的基础。抽象层4560包含用于实现数字托管模式的基本语言,即诸如SetUp 0 (设置)、Encrypt ()(加密)、Extract ()(提取)、Decrypt ()(解密)之类的命令。处于抽象层4560之上的是层4550,该层4550捆绑到各种更具体的平台技术(例如SDS、Azure、Backup/Archive (备份/归档)、RMS、STS等等)中。处于捆绑到各种具体平台技术中的层4550之上的是使用可信数字托管4500的各种SaaS应用。该示例性的非限制性图示示出了 数字托管应用4500可以由单个公司4510或由合作方4530或者由这二者来实现。例如,公司4510可以实现诸如下列服务高性能计算(HPC)、eDiscovery和合法发现4514、Live服务4516(例如DBox)、作为服务的备份/归档4518、审计日志——业务过程和监控4520、或者其他云服务4522。合作方4530可实现诸如下列服务eLetterOfCredit4532、HPC即垂直面服务4534、eHealth服务、安全外联网4538、顺从4540、诉讼支持4542
坐坐寸寸o、
基于可信云服务生态系统的场景由于密钥生成器、密码提供者和云服务提供者的分离所固有的増加的信任,以及本文所述的其他技术,可在云中实现任何类型的应用。就此,在已经实现了这样可信云服务生态系统的情况下,可以实现丰富的服务和场景的集合,这些服务和场景利用在此所述的可信生态系统的ー个或多个好处。例如,图46是ー个示例性非限制性过程的流程图,该过程用于以利用上述后期绑定向发布者提供对数据的受控选择性访问的方式来向数字保险箱应用发布文档。在4600,对设备进行认证(例如设备用用户名和ロ令、ロ令凭证、生物測定凭证、Live ID凭证等等登录)。在4610,上传文档并输入标签。在4620,标签被发送给托管代理,并且作为响应,从托管代理接收经散列的标签。就此,所述标签可以如所提到的那样来提供,或者可替代地可以通过全文索引来自动地从净荷(记录、文档)中提取。在4630,客户端利用发布者的密钥信息对文档进行加密,并且所述文档与订阅者相对于这些文档的能力一起被发送给安全数字云存储提供者。在4640,安全数字云存储提供者例如将经加密的团块(blob)发送给存储服务(例如相对于存储抽象层)。图47是用于订阅置于数字保险箱中的材料的示例性、非限制性过程的流程图。在4700,订阅者被认证,并且客户端设备将标签发送给托管代理,该托管代理在4710作为响应发回经散列的标签。然后,客户端在4720将经散列的标签发送给数字保险箱服务,并且经散列的标签被解释以了解在4730,该客户端是否有权让其搜索请求全部或部分地由存储服务来执行。图48示出了使用数字托管模式来通过ー个或多个数据中心为企业实现安全外联网的可信云服务的示例性、非限制性的实现。如所提到的那样,可信计算生态系统可以包括密钥生成中心4800,该密钥生成中心4800与密码技术提供者(CTPM810分开实现,该密码技术提供者4810提供參考实现以供用于实现与生态系统一致的同一个或多个云服务提供者(CSPM820分开实现的密码技木。在安全外联网的示例性非限制性的实现中,4880示出了 企业维护共享储存库4870 (例如SharePoint)和设计或分析应用的储存库4860以供与共享储存库4870中的文档结合使用。商业软件4840 (例如Sentinel)可以监控具有桌面4850的计算机的应用或服务器性能等等。就此,在可信云服务生态系统中,当使用桌面4850的订阅者从存储中寻求可以选择性地访问并且被加密的信息时,安全令牌服务4830可以递送某些信息以标识出订阅者4882,并且CKG 4800可以通过第一数据中心的CKG层4802的接ロ被咨询,如4884所示。CKG 4800返回密钥信息,然后,该密钥信息如4886所示的那样可以用于通过存储抽象服务4822选择性地访问由数据服务4824所持有的数据。因此,任何类型的数据都可以在企业的范围内根据企业中的订阅者的角色来选择性地共享。图49是示出了基于可信云服务生态系统的另一示例性非限制性场景的流程图,在该生态系统中,给订阅者提供对由例如企业内的CSP存储的经加密数据的选择性访问。最初,订阅者设备还未获取访问经加密数据的特权。然而,通过在4900例如通过与应用交互来作出对ー些或全部经加密数据的请求,该应用自动地与对应STS通信以用于在4910获 得声明(密码学中的用语)。在4920,该应用与CKG通信以获得密钥信息,该密钥信息编码有关于订阅者的能力的信息(能力有时在密码学的用语中被称为陷门,但是术语“能力”不限于通常出现术语“陷门”的上下文)。最后,该应用在4930将密钥信息提供给CSP,CSP允许以订阅者能力所允许的程度来对经加密的数据进行捜索或查询。图50是示出了可以基于登录信息来为订阅者定制应用响应的另一流程图。例如,在5000,用户ID信息被应用接收。在5010,应用从STS获得相关声明。在5020,基于用户充当的与用户ID信息相关联的ー个或多个角色,体验可以被定制为与这些角色的特权/约束相称。例如,向公司的首席财务官呈现的作为公司的经加密数据的视图的用户体验可以并且应当是与提供给邮件室雇员的公司经加密数据的视图不同的用户体验。图50可以适用于单方或多方登录场景。图51是示出了安全记录上传场景的另一流程图,该场景可以针对单方或多方来实现。在5100,记录和关键词被应用接收,其例如是由具有该应用的设备的用户提供或指定的。在5110,应用获得主公钥(MPK)并且应用公钥加密关键词可搜索(PEKS)算法。该应用可以可任选地将MPK高速缓存。在5120,该应用例如通过存储抽象层将经加密的记录输入到CSP储存库中。 图52是示出了对经可捜索地加密数据存储进行基于角色查询的示例性、非限制性的另一流程图,该数据存储由可信云服务生态系统来实现,例如以供由单方进行自动搜索。在5200,应用接收或发起联合查询。在5210,应用从STS获得相关声明。例如,STS将用户的角色映射到合适的查询组,并且返回给定角色的合法查询集合。在5220,应用提交经过滤的声明和查询,使得可以有效地提交对应于该查询的声明、而不是所有的声明。可任选地,CKG将陷门声明返回给应用(或者拒绝该声明)。在5230,该应用对远程索引执行陷门声明。基于对远程索引的处理,结果可以被应用接收,并且通过该应用例如基于用户角色使用定制呈现来将结果呈现给用户。图53是示出了多方协作场景的流程图,在该场景中,企业向外部企业提供对其经加密数据中的一些的访问。例如,制造商可以给供应商赋予对其存储在可信云中的数据的访问,并且反之亦然。就此,在5300,企业2的STS被指定为资源提供者,并且企业I的应用继续进行以获得用于对云中的资源提供者所提供的资源进行访问的声明。在5310,企业I的STS被指定为身份提供者。就此,应用为由企业I处的订阅者所定义的角色或角色集合获得声明,这由身份提供者来促进。在5320,应用基于由企业2控制的可许可资源以及基于由订阅实体所定义的许可/能力来检索声明。在图53中,尽管仅仅描绘了ー个STS,但是应当注意,在数字托管或联合信任覆盖中可以存在多个身份提供者STS和/或多个资源提供者 STS。图54是示出了例如诸如企业I和企业2之类的多个企业间的多方自动搜索场景的流程图。在5400,企业I的应用接收或发起联合查询以供执行。在5410,应用从资源提供者(企业2)的STS获得相关声明。可任选地,该资源提供者可以在组织标签中指定。STS可以可任选地执行用户角色到查询组的映射,使得返回针对该用户角色的合法查询集合。在5420,应用基于该用户角色提交经过滤的声明和查询,使得可以有效地提交对应于该查询的声明、而不是所有的声明。可任选地,CKG将能力返回给应用(例如陷门声明),或者CKG拒绝该声明。在5440,该应用对远程索引执行陷门声明。基于对远程索引的处理,结果可以被应用接收,并且通过该应用例如基于用户角色使用定制呈现来将结果呈现给用户。该方法可包括接收联合查询或以其他方式发起联合查询的步骤。就此,可任选地,联合查询也可以被密码保护,使得没有陷门(或能力)的接收者(客户端或服务提供者)可以分解联合查询并且确定其组成部分。图55示出了可以针对可信云服务实现的示例性、非限制性的边缘计算网络(ECN)技术。就此,结合彼此独立操作的可信云组件给多个动态计算节点5570、5572、5574、5576动态地分配计算带宽。例如,密钥生成中心5520、存储抽象服务5510、组织5530和组织5540可以如所示那样被实现为涵盖多组织业务或诸如上述场景之类的其他场景。密钥生成中心5520包括密钥生成器5522和服务器OS 5524。存储抽象服务5510包括存储服务组件5512和服务器OS 5514。组织5530包括STS 5532,AD 5536和服务器OS 5534。组织5540包括STS 5542、AD 5546和服务器OS 5544。服务器 OS 5514、5524、5534、5544协作以跨各服务器来实现ECN。任何存储提供者或抽象5502都可以用于存储数据,例如可以使用SQL数据服务。以此方式,一个或多个桌面5550、5552可以分别通过客户端应用5560、5562发布或订阅数据。图56是示出了根据可信云服务生态系统的密钥生成中心5610的一个或多个任选方面的框图。最初,诸如桌面5660、5662和相应的客户端应用5670、5672或者服务或服务器5674、5676、5678等等之类的计算设备的集合是云内容递送网络5650的潜在发布者和/或订阅者。然而,在满足来自该计算设备集合中的任何计算设备的请求以前,密钥生成中心最初为了获得发布者的信任而充当保管者,该密钥生成中心基于公钥对数据进行加密并且基于数据订阅者的能力向其发放私钥。在示例性的非限制性的交互中,来自计算设备的请求最初被供应5600,并且CKG5610的主存者在5680向CKGエ厂5602请求CKG 5610的实例。接着,在5682进行用户认证5604。接着,任何基于使用的计费5684可以由计费系统5606应用以供CKGエ厂5602使用。接着,租赁CKG在5686被CKGエ厂5602具体化,其可以包括MPK递送组件5612、客户端库下载器5614、秘密密钥提取器5616和信任确认器/验证器5618。MPK递送组件5612在5688将MPK递送给CDN 5650。客户端库下载器5614将密码库下载到作出请求的客户端,这些密码库可以与要发布的数据的加密或者该设备订阅的数据的解密结合使用。接着,客户端基于从与信任验证器5618协作的秘密密钥提取器5616所接收的密钥信息来作出提取给定文档集合的请求,该信任验证器5618可以基于在5694验证订阅者的STS拇指纹、例如基于与该请求所涉及的组织的不同STS 5620、5622、5624、5626进行通信来确认订阅者具有某些能力。如在其他实施例中,可以提供存储抽象服务5640来抽象数据库服务5630 (例如SQL)的存储细节。图57是与网络服务5700的递送相结合的可信存储5700的示例性非限制性的框图,该可信存储5700包括具有确认和/或验证的经可搜索地加密的数据5720。在该实施例中,订阅者5740或订阅者5740所使用的应用可以作为访问经加密存储5700的某些部分的请求的一部分来请求对针对上述请求返回的项进行确认证明,以确认实际接收的项也是本应当接收的项。就此,图57示出了可捜索加密技术与确认技术的组合。可任选地,该系统还可以与基于声明的身份和访问管理相集成,这在此处的其他实施例中予以描述。就此,如在此处的各个实施例中所描述的那样,亦称联合信任覆盖的数字托管模式可以无缝地与更传统的基于声明的认证系统相集成。在图57中,可信数据存储5700或服务提供者或数据存储的主存者执行证明步骤,而数据的所有者(例如订阅者设备)执行确认。数据存储5700是可信的,因为用户可以相信其提供強力的保证,但是能够理解,物理实体实际上主存该数据,并且一些參与者不是完全可信的。图58是用于订阅的包括确认步骤的示例性、非限制性过程的流程图。在5800,经可搜索地加密的数据的子集被从订阅者设备接收。在5810,密码密钥信息被从密钥生成实例中生成,该密钥生成实例基于订阅者设备的身份信息来生成该密码密钥信息。在5820,根据在密码密钥信息中所定义的赋予给该订阅者设备的能力,经加密数据的子集被解密。在5830,该子集中表示的项可以被确认(例如数据拥有证明),并且数据在5840被访问。 在许多情况下,能够在不需要对经加密数据进行解密的情况下对经加密数据执行PDP/P0R是合乎需要的。可任选地,PDP所需的密钥信息可以被编码在曾用可搜索加密被保护的元数据之内。尽管这是管理用于HF/POR的密钥的有效方式,但是应当注意,存在许多高价值的场景,在这些场景中,可以在不需要访问明文内容的情况下对经加密数据执行PDP/P0R。图59示出了示例性、非限制性的确认质询/响应协议,其中验证者5900 (例如数据所有者)向证明者5910 (例如数据服务提供者)发出密码质询5920。在接收到质询5920以后,证明者5910根据数据和质询来计算响应5912。然后,质询响应5930被返回给验证者5900,该验证者5900然后执行计算以验证或证明该数据未曾被修改过5902。在图59中总体上示出的确认被称为私有H)P,但是应当注意,还存在“公共”版本,其中给第三方提供密钥(“公”钥)使得第三方充当根据类似协议的验证者,而不必去了解实际数据。POR (即验证的ー个示例)与PDP不同,其中PDP提供数据是可检索的证明(无论任 何破坏/修改与否),但是如下在图30中所示,基本协议是相同的,但是文档的结构和实际算法是不同的。此处的可信生态系统的各个实施方式组合可捜索加密和P0R/TOR以使系统受益并且巩固信任。就此,在将数据提交给服务提供者以前,数据被可捜索地加密,并且对数据的后处理可以包括POR和/或rop。另外,如果需要提供更カ的保证,则“数据分散”技术可以可任选地覆盖到上述任何一个或多个实施例中。利用数据分散,数据被分发给若干服务提供者以获得对抗任何单个服务提供者中的“大規模不良行为”或者灾难性损失的回复力。使用在此所示的信任机制,该分散以使得独立服务提供者难以串通和破坏数据的方式来执行。这类似于上述分布式CKG实施例的概念。图60是与用于来自发布者2530的数据的网络服务2520的递送相结合的可信存储2500的另ー示例性非限制性的框图,该可信存储2500包括具有确认和/或验证的经可搜索地加密的数据2510。具体而言,图60示出了验证组件6050,其用于验证返回给订阅者2540的项未被篡改或者未以其他方式被不经意地改变。上述PDP是验证的非限制性示例。图61是用于订阅的包括确认步骤的示例性、非限制性过程的流程图。在6100,经可捜索地加密的数据的子集被从订阅者设备接收。在6110,密码密钥信息被从密钥生成实例中生成,该密钥生成实例基于订阅者设备的身份信息来生成该密码密钥信息。在6120,根据在密码密钥信息中所定义的赋予给该订阅者设备的能力,经加密数据的子集被解密。在6130,该子集中表示的项的内容可以被验证(例如可恢复性证明),并且数据在6140被访问。图62示出了示例性、非限制性的验证质询/响应协议,其中验证者6200 (例如数据所有者)向证明者6210 (例如数据服务提供者)发出密码质询6220。在接收到质询6220以后,证明者6210根据数据和质询来计算响应6212。然后,质询响应6230被返回给验证者6200,该验证者6202然后执行计算以验证或证明该数据是可恢复的6202。盲指纹表示对网络去重复技术(诸如Rabin指紋)进行扩展的另一类密码技木,网络去重复技术通常用于最小化网络上的冗余数据交換。在本文的各实施例中,应用指纹化以使得该协议中的參与者(例如,在数据存储的情况下是CSP)不知晓它们正在主存的数据的实际内容。对于关于盲指纹的某些附加上下文,跨越广域网(WAN)的任何大型数据交换(包括数据的维护)将需要用于在线上进行“去重复”的技术,或者确保非必要数据不通过线来发送。通过将数据的片段指纹化,井随后交換指纹以使得发送者知晓它们具有而接收者所不具有的东西,来实现这一点。而且,接收者知晓它们需要向发送者索要什么数据。可使用分布式文件服务重复(DFS-R)来优化各场景中的数据交换,诸如通过WAN的分公司备份和分布式文件系统。 在Exchange的情况下,存在大量数据重复,并且在任何给定时间在线上的可能多达50%或者更多的数据可能是重复的。可在块等级或在对象等级(例如,电子邮件、日历项、任务、联系人等)获得指紋。可在主和次数据中心处高速缓存指紋。因此,如果在主数据中心处存在故障,则次数据连同指纹可被还原到主数据中心。主数据中心处的数据的加密仍应允许指纹对次数据中心操作者可见,尽管是被模糊化的。例如,这可以通过用可捜索加密将指纹存储为关键词/元数据来实现,以使得除了次数据中心中的经授权实体/代理外,其他实体均不能够检测到模式。在数据服务的上下文中,当发送全文或增量时,主数据中心可检查日志或EDB中的每个项/片段/块,并咨询指纹的本地副本。如果存在匹配,则该主数据中心用该指纹取代该项/片段/块。术语“盲指紋”在本文中被如此称呼是因为应用指纹化的方式。在一个实施例中,用来实现盲指纹化的密码技术选择包括大小保留密码技木。图63是用于提供服务(包括盲指纹化)的一个或多个实施例的总体环境的框图。使用盲指纹,数据订阅者6300和数据服务提供者6310经历指纹交换以作为代理来理解在被备份的数据集的各本地和备份副本上已经拥有什么数据片段。作为指纹交換6320的结果,在6302确定要传送的修改数据的減少集合作为到数据服务提供者6310的经去重复的修改数据6330,数据服务提供者6310然后基于选择性地访问经去重复的修改数据和任何盲指纹6340来应用修改数据。图64是示出了非限制性场景的框图,在该场景中,多个独立的联合信任覆盖或者数字托管可以并排存在,或者针对分层方式彼此相叠地存在。在该场景中,存在具有经可搜索地加密的数据6410的可信数据存储6400,各种网络服务6420可以基于该数据6410。例如,网络服务6420可以包括递送文字处理软件来作为云服务。作为地理分布等的一部分,可任选地,可以提供多个覆盖/托管6432、6434、6436,这些覆盖/托管各自被调节到不同的应用/垂直面/顺从需求/主权实体要求,使得发布者2530或订阅者6450基于ー组要求或管辖区/住所区域来隐式或显式地选择要參与的正确的覆盖/托管。因此,该覆盖可以改变,但是来自云的后端服务可以保持不变,而不必使核心服务本身的递送复杂化。图65是可信存储的另ー示例性、非限制性实施例的框图,该可信存储包括用于针对非授权访问模糊化数据的数据分发技木。本示例示出了 提供加密技术作为用于隐藏或模糊化数据的手段的所有上述技术或系统也可通过阻止对数据(或元数据)的可见性的任何其他数学变换或算法来实现。就此,例如,可跨一组数据存储来自动地整合或分发数据,该组数据存储可以是相同类型的容器,或如图65所示是不同类型的容器6512、6514、……、6516。因此该系统包括数据存储6500,该数据存储包括(作为抽象)用于存储了选择性访问的数据或元数据6510的数据存储6512、6514、……、6516。发布者可将表示至少ー个资源的数据或元数据6510发布到数据存储6500,并且第一独立实体6550执行可应用于如所发布的该数据和元数据的访问信息的生成,并且第二独立实体6560分发该数据和元数据,如跨数据存储6500的ー组数据存储来发布,同时维护对存储所发布的数据或元数据的该组数据存储的知识。 因此,这一知识是在无访问信息的情况下不能被掲示的秘密。可经由网络服务6520发布数据或元数据6510,该网络服务6520基于由该至少ー个资源的发布者或所有者所授予的并由访问信息表示的所选择的后期绑定特权来向对该网络服务的给定请求提供对所发布的数据或元数据的选择性访问。该数据存储6500包括相同或不同容器类型的多个容器,而所发布的数据或元数据被跨越该多个容器中的至少ー个容器来自动分布。该分布可基于数据分发者6560已知的任何算法,例如,基于对由多个容器所表示的存储资源的实时分析、基于该数据或元数据的特征、或适用于给定应用的任何其他參数。以此,当订阅者6540作出对数据或元数据6510的请求吋,网络服务咨询独立实体6550和/或6560以确定是否准许订阅者6540具有允许重组该数据的访问信息。例如,数据地图可以是准许该数据的重组的秘密。可将此实施例与其他数学变换(诸如加密)相组合以提供对该数据的附加保护。这种附加数学变换可由进ー步的独立实体监瞀以用于对信任进行附加分发以进一步满足以下该数据除对授权方外保持不可见。在此描述了多种示例性、非限制性的实施例,这些实施例示出了可信数据服务的递送。这些实施例不是独立的,而是可以在合适时彼此組合。另外,任何上述实施例都可以被扩展为多个可替代方式。例如,在一个实施例中,可信数据服务提供陷门或能力的到期和撤消,以获得数据访问的更大程度的安全性。在另一任选实施例中,权限管理层被构建到可信数据服务的供应中,例如以保留作为加密/解密的一部分而附加于内容的权限或者以阻止在数据托管中对受版权保护的数据的动作,这些动作在明文中是更容易地识别或检测的。因此,在本发明的范围内可以构思在此所述的实施例的任何组合或置换。示例性、非限制性实现数字托管模式的任何示例性实现被称为联合信任覆盖(FT0)。在附录A中附有关于FTP实现的一些附加的非限制性细节。就此而言,数字托管模式仅仅是许多可能的模式和变型方案的ー个示例。此外,该模式(其包括发布者、订阅者、管理员和审计者——以及可能地包括上文所述其他专用角色)在另ー底层FTO模式上形成ー层,该底层FTO模式执行CTP、CSP、CKG等等的“教会和州(church & state)”分离以维持信任。也可以存在多个独立FTO和DEP,其可以在彼此不干涉并且甚至不知道彼此的存在的情况下共存。而且,可以在云存储服务提供者不协作或者甚至不了解这些模式/覆盖的存在的情况下在云存储上覆盖DEP和FT0。
更详细而言,FTO是独立于云中数据服务的服务集合。这些服务由数据服务的运营商以外的多方来运行,并且能够提供关于针对由云服务主存的数据的机密性、篡改检测和不可抵赖性的強力保证。
任何合作方都可以构造和主存这些覆盖服务,例如居间程序服务、确认服务、存储抽象服务等等。这些合作方可以选择主存ー參考实现或者基于公开可用的格式和协议来构造其自己的实现。由于格式、协议和參考实现的公开性质,維持诸如FTO的运营商和数据所有者之类的多方间的控制的分离可以是直接的。尽管加密是该解决方案的ー个元素,但是在不同方的范围内联合的服务的组织也是该解决方案的一部分。尽管常规的加密技术对于许多场景而言是强制性的,但是它们排除了实现这些场景中的许多场景,比如篡改检测、不可抵赖性、通过组织多个(不受信任)的服务构建信任、捜索数据库等等。补充上下文如上所述,对于某些附加的非限制性上下文而言,可信的一组云供应为构建于信任之上的云启用了应用生态系统。在此所使用的各种技术包括CKG——密钥生成中心,一种实体,其主存多承租人密钥生成中心,例如Microsoft、VeriSign、Fidelity (保真度)、ASovereign Entity (主权实体)、Enterprise (企业)、Compliance Entity (顺从实体)等中的任一都可以主存CKG。就此而言,多承租人是任选的(例如合乎需要但不是強制性的)。其他术语包括CTP——密码技术提供者,ー种实体,其提供加密技术以供与可信生态系统一起使用,例如 Symantec、Certicom、Voltage> PGP 公司、BitArmor、Enterprise、Guardian(保管者)、Sovereign Entity等等中的任一个都是可以作为CTP的示例公司。另外,术语“CSP”——云服务提供者是提供包括存储在内的云服务的实体。各种公司可以提供这样的数据服务。CIV—云索引确认器是用于确认所返回的索引的第二储存库。CSA——计算和存储抽象对存储后端进行抽象。STF——存储传输格式是用于跨多个储存库来传输数据/元数据的通用格式。就此,如上所述,ー些企业场景包括使用数据服务技术或应用的外联网工程;设计和工程分析;定义制造商和供应商间的数据关系等等。因此,通过将信任分布在多个实体的范围内使得不存在‘过分’受信任的实体或单点损害来为全部多个场景实现了唯一的生态系统。对于关于可搜索加密的某些补充上下文而言,用户通常具有或获得针对关键词的‘能力’或‘陷门’,并且然后使用该‘能力’(将其呈现给服务器)来发送请求。服务器‘组合’能力和索引以找出相关的文档或数据。然后,仅仅给用户提供对由该搜索产生的文档的访问(虽然用户可以访问不止这些文档)。如所提到的那样,不应当认为单个算法限制了在此所述的经可搜索地加密的数据存储的供应,然而,下面总体上概述了示例性非限制性算法之外的一些理论,并且提供了可搜索对称加密(SSE)模式的初步知识 消息m 关键词 -W1, . . . , Wn PRF:H
·生成托管密钥 针对H选择随机S·加密·选择随机密钥K 选择随机固定长度r·对于 KiSn计算ai=Hs (Wi)
计算IDi=Hai (r)计算Ci= b, Hato (标志)输出(EK(m), r, C1, . . . , cn)·针对w生成陷门或能力· d=HSJ (W)·针对w进行测试 计算 p=Hd(r)·计算 Z = p Ci 如果z=flag,贝丨』输出“true (真)”·对Ek (m)进行解密以获得m尽管再次不应当认为限制了在此所述的任何实施例,但是下面是关于公钥加密w/关键词搜索(PEKS)模式的初步知识。公钥加密a. PKE= (Gen, Enc, Dec)基于身份的加密b. IBE= (Gen, Enc, Extract, Dec)c.生成主密钥i. (msk, mpk) =IBE. Gen Od.针对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.关键词 -W1, . . . , wni.生成托管密钥i. (msk, mpk) =IBE. Gen Oi i (pk, sk) =PKE. Gen Oj.加密k.对于 I < i < ηi. Ci=IBE. Enc (mpk, Wi, flag)
I.返回(PKE. Enc (pk, m),C1, , cn)m.为w生成能力或陷门i. d=IBE. Extract (msk, w)η.针对w进行测试ο.对于 I < i < ηi. z=IBE. Dec (d, Ci)ii.如果 z=flag,贝丨』输出 “true”对Ek (m)进行解密以获得m示例性联网以及分布式环境本领域普通技术人员可以明白,此处所描述的用于可信云服务框架的方法和设备的各种实施例和各相关实施例可以结合任何计算机或其他客户机或服务器设备来实现,该任何计算机或其他客户机或服务器设备可作为计算机网络的一部分来部署或者被部署在分布式计算环境中,并且可以连接到任何种类的数据存储。在这一点上,此处描述的各实施例可在具有任何数量的存储器或存储单元的、并且任何数量的应用和进程跨任何数量的存储单元发生的任何计算机系统或环境中实现。这包括但不限于具有部署在具有远程或本地存储的网络环境或分布式计算环境中的服务器计算机和客户机计算机的环境。附图66提供了示例性联网或分布式计算环境的非限制性性示意图。该分布式计算环境包括计算对象或设备6610、6612等以及计算对象或设备6620、6622、6624、6626、6628等,这些计算对象或设备可包括如由应用6630、6632、6634、6636、6638表示的程序、方法、数据存储、可编程逻辑等。可以明白,计算对象或设备6610、6612等以及计算对象或设备6620、6622、6624、6626、6628等可包括不同的设备,诸如PDA、音频/视频设备、移动电话、MP3播放器、膝上型计算机等。计算对象或设备6610、6612等以及计算对象或设备6620、6622、6624、6626、6628等可经由通信网络6640或者直接或间接地与一个或多个其他计算对象或设备6610、6612等以及计算对象或设备6620、6622、6624、6626、6640等通信。即使在图66中被示为单个元件,但网络6640也可包括向图66的系统提供服务的其他计算对象或计算设备,和/或可表示未示出的多个互连网络。计算对象或设备6610、6612等或6620、6622、6624、6626、6628等还可包含诸如应用6630、6632、6634、6636、6638之类的应用,该应用可利用适用于与根据本发明的各实施例来提供的可信云计算服务或应用进行通信或适用于实现该可信云计算服务或应用的API或其他对象、软件、固件和/或硬件。存在支持分布式计算环境的各种系统、组件和网络配置。例如,计算系统可由有线或无线系统、本地网络或广泛分布的网络连接在一起。当前,许多网络被耦合至因特网,后 者为广泛分布的计算提供了基础结构并包含许多不同的网络,但任何网络基础结构可用于变得与如各实施例中所描述的技术相关联的示例性通信。由此,可使用诸如客户机/服务器、对等、或混合体系结构之类的网络拓扑结构和网络基础结构的主机。在客户机/服务器体系结构中,尤其在联网系统中,客户机通常是访问另一计算机(例如,服务器)所提供的共享网络资源的计算机。在附图66的图示中,作为非限制性示例,计算对象或设备6620、6622、6624、6626、6628等可被认为是客户机,而计算对象或设备6610、6612等可被认为是服务器,其中计算对象或设备6610、6612等提供数据服务,诸如从计算对象或设备6620、6622、6624、6626、6628等接收数据;存储数据;处理数据;向诸如计算对象或设备6620、6622、6624、6626、6628等客户机传送数据等,但任何计算机都可取决于环境而被认为是客户机、服务器、或两者。这些计算设备中的任ー个都可以处理数据,或请求可包含此处ー个或多个实施例所描述的经改善的用户剖析和相关技术的服务或任务。服务器通常是可通过诸如因特网或无线网络基础结构之类的远程网络或本地网络访问的远程计算机系统。客户机进程可在第一计算机系统中活动,而服务器进程可在第ニ计算机系统中活动,它们通过通信介质相互通信,由此提供分布式功能并允许多个客户机利用服务器的信息收集能力。按照用户剖析来利用的任何软件对象可以独立地提供或跨多个计算设备或对象分布。例如,在其中通信网络/总线6640是因特网的网络环境中,计算对象或设备6610、6612等可以是诸如计算对象或设备6620、6622、6624、6626、6628等客户机经由诸如超文本传输协议(HTTP)等多种已知协议中的任一种与其通信的web服务器。诸如计算对象或设备6610、6612等服务器还可担当诸如计算对象或设备6620、6622、6624、6626、6628等客户机,这是分布式计算环境的特性。示例性计算设备如上所述,此处描述的各种实施例适用于其中期望实现可信云服务框架的ー个或多个部分的任何设备。因此,应当理解,构思了结合此处描述的各实施例使用的各种手持式、便携式和其他计算设备和计算对象,即在设备可以结合可信云服务框架来提供某些功能的任何地方。因此,在下面的图67中描述的以下通用远程计算机仅是ー个示例,且所公开的主题的各实施例可以用具有网络/总线互操作性和交互的任何客户机来实现。尽管并不是必需的,但各实施例的任意一个可以部分地经由操作系统来实现,以供设备或对象的服务开发者使用,和/或被包括在结合可操作组件来操作的应用软件中。软件可在诸如客户机工作站、服务器或其他设备之类的ー个或多个计算机所执行的诸如程序模块之类的计算机可执行指令的通用上下文中描述。本领域的技术人员可以理解,网络交互可以用各种计算机系统配置和协议来实施。因此,图67示出了其中可实现ー个或多个实施例的合适的计算系统环境6700的ー个示例,但是如上所述,计算系统环境6700仅是合适的计算环境的ー个示例,并且不旨在对各实施例中的任意ー个的使用范围或功能提出任何限制。也不应该将计算环境6700解释为对示例性操作环境6700中示出的任一组件或其组合有任何依赖性或要求。參考图67,用于实现此处的一个或多个实施例的示例性远程设备可以包括手持式计算机6710形式的通用计算设备。手持式计算机6710的组件可以包括但不限于处理单元6720、系统存储器6730和将包括系统存储器在内的各种系统组件耦合至处理单元6720的系统总线6721。计算机6710通常包括各种计算机可读介质,例如但不限于,数字多功能盘(DVD)、闪存、内部或外部硬盘驱动器、紧致盘(CD)等等,并且可以是可由计算机6710访问的任何可用介质,包括远程驱动器、云存储盘等。系统存储器6730可包括诸如只读存储器(ROM)和 /或随机存取存储器(RAM)之类的易失性和/或非易失性存储器形式的计算机存储介质。作为示例而非限制性,存储器6730还可以包括操作系统、应用程序、其他程序模块、和程序数据。用户可以通过输入设备6740向计算机6710输入命令和信息。监视器或其他类型的显示设备也经由诸如输出接ロ 6750之类的接ロ连接到系统总线6721。除监视器之外,计算机还可以包括其他外围输出设备,如扬声器和打印机,它们可以通过输出接ロ 6750连
接。 计算机6710可使用到ー个或多个其他远程计算机(诸如远程计算机6770)的逻辑连接在联网或分布式环境中操作。远程计算机6770可以是个人计算机、服务器、路由器、网络PC、对等设备或其他常见网络节点、或者任何其他远程媒体消费或传输设备,并且可包括以上关于计算机6710所述的任何或全部元件。图67所示的逻辑连接包括诸如局域网(LAN)或广域网(WAN)之类的网络6771,但也可包括其他网络/总线。这些联网环境在家庭、办公室、企业范围的计算机网络、内联网和因特网中是常见的。如上所述,尽管结合各种计算设备、网络和广告体系结构描述了示例性实施例,但还可将底层概念应用于其中期望结合与云服务的交互来提供信任的任何网络系统和任何计算设备或系统。存在着实现此处描述的实施例中的ー个或多个的多种方式,例如,使应用和服务能使用可信云服务框架的适当API、工具包、驱动程序代码、操作系统、控件、独立或可下载的软件对象等等。可以从API (或其他软件对象)的观点以及从提供根据所描述的实施例中的ー个或多个的定点平台服务的软件或硬件对象来构想各实施例。此处描述的各种实现和实施例可以具有完全采用硬件、部分采用硬件并且部分采用软件、以及采用软件的方面。本文中所使用的词语“示例性”意味着用作示例、实例、或说明。为避免疑惑,本文所公开的主题不限于这些示例。另外,本文中被描述为“示例性”的任何方面或设计不一定被解释为比其他方面或设计更优选或有利,它也不意味着排除本领域普通技术人员已知的等效示例性结构和技木。而且,就术语“包括”、“具有”、“包含”和其他类似的词语在详细描述或权利要求书中的使用而言,为避免疑惑,这样的术语g在以类似于术语“包括”作为开放的过渡词的方式解释而不排除任何附加或其他元素。如所述的,此处所述的各种技术可结合硬件或软件或,在适当时,以两者的组合来实现。如此处所使用的,术语“组件”、“系统”等同样g在指计算机相关实体,或者是硬件、硬件和软件的组合、软件或者是执行中的软件。例如,组件可以是,但不限于是,在处理器上运行的进程、处理器、对象、可执行码、执行的线程、程序和/或计算机。作为说明,在计算机上运行的应用和计算机都可以是组件。一个或多个组件可以驻留在进程和/或执行线程中,并且组件可以位于一个计算机内和/或分布在两个或更多计算机之间。如前所述的系统已经參考若干组件之间的交互来描述。可以理解,这些系统和组件可包括组件或指定的子组件、某些指定的组件或子组件和/或附加的组件,并且根据上述内容的各种置换和组合。子组件还可作为通信地耦合到其他组件的组件来实现,而不是被包括在父组件内(层次性)。另外,应该注意,一个或多个组件也可以合并到提供聚合功能的单ー组件中,或者也可以分成多个单独的子组件,并且,可以提供诸如管理层之类的任何一个或更多中间层,以可通信地耦合到这样的子组件,以便提供集成的功能。此处所述的任何组件也可与ー个或多个此处未专门描述的但本领域技术人员一般已知的其他组件进行交互。
考虑到以上描述的示例性系统,參考各附图的流程图将可以更好地理解根据所公开的主题实现的方法。尽管为了说明简洁起见,按照一系列框示出和描述了方法,但是,应该理解和知道,所要求保护的主题不限于框的顺序,因为ー些框可以按与此处所描绘和描述的不同的顺序进行和/或与其他框并发地进行。尽管经由流程图示出了非顺序或分支的流程,但可以理解,可实现达到相同或类似结果的各种其他分支、流程路径和框的次序。此夕卜,并非全部所示的框都是实现下面所述的方法所必需的。虽然在某些实施例中示出了客户机侧观点,但要出于避免对存在相对应的服务器观点的疑问来理解,反之亦然。类似地,在实施一方法时,可以提供具有存储和被配置成经由一个或多个组件实施该方法的至少ー个处理器的相对应的设备。尽管结合各附图的优选实施例描述了各实施例,但可以理解,可以使用其他类似的实施例,或可以对所描述的实施例进行修改和添加来执行相同的功能而不背离本发明。而且,此处描述的各实施例的ー个或多个方面可以在多个处理芯片或设备中实现或跨多个处理芯片或设备实现,且存储可以类似地跨多个设备来实现。因此,本发明不应限于任何单 个实施例,而是应该根据所附权利要求书的广度和范围来解释。
权利要求
1.一种用于主存数据的方法,包括 接收数据或与该数据相关联的元数据中的至少ー个,其中所述数据、所述元数据、或这两者由合成包装器来保护,该合成包装器是从所述数据、所述元数据、或这两者的至少ー个数学变换来形成的,其中所述数学变换至少包括基于第一组准则来定义所述数据、所述元数据、或这两者的第一包装器的第一数学变换以及基于第二组准则来定义所述数据、所述元数据、或这两者的第二包装器的第二数学变换;以及 接收请求基于该请求中包括的ー组能力来访问由所述合成包装器保护的数据、元数据、或这两者;以及 基于所述ー组能力,基于通过所述第一包装器评估可见性并独立地通过所述第二包装器评估可见性来确定对所述数据、元数据、或这两者的至少 ー个访问特权。
2.如权利要求I所述的方法,其特征在于,所述接收包括接收由从所述至少ー个数学变换形成的合成包装器所保护的数据或元数据中的所述至少ー个,所述至少ー个数学变换至少包括基于所述第一组准则来定义对少于所述数据、所述元数据、或这两者的全部进行包装的第一包装器的第一数学变换。
3.如权利要求I所述的方法,其特征在于,所述接收包括接收由从所述至少ー个数学变换形成的合成包装器所保护的数据或元数据中的所述至少ー个,所述至少ー个数学变换至少包括基于所述第一组准则来定义对所述数据、所述元数据、或这两者进行包装的第一包装器的第一数学变换,以及定义对由所述第一包装器所包装的数据、元数据、或这两者进行包装的第二包装器的至少第二数学变换。
4.如权利要求I所述的方法,其特征在于,所述接收包括接收由从所述至少ー个数学变换形成的合成包装器所保护的数据或元数据中的所述至少ー个,所述至少ー个数学变换至少包括基于所述第一组准则来定义对少于所述数据、所述元数据、或这两者的全部进行包装的第一包装器的第一数学变换,以及定义对由所述数据、所述元数据、或这两者的全部进行包装的第二包装器的至少第二数学变换。
5.如权利要求I所述的方法,其特征在于,所述接收包括接收由包含补充的包装器的合成包装器来保护的数据、元数据、或这两者,该合成包装器至少包括用于满足补充的信任或安全准则的第一和第二包装器。
6.如权利要求I所述的方法,其特征在于,还包括 如果所述数据、所述元数据、或这两者的状态变成新状态,则自动添加或移除适合于与该新状态相关联的新的一组准则的至少ー个附加包装器。
7.如权利要求I所述的方法,其特征在于,如果所述数据、所述元数据、或这两者的机密性分类改变成更敏感的分类,则向所述数据、所述元数据、或这两者自动添加适合于该更敏感的分类的至少ー个附加包装器。
8.如权利要求I所述的方法,其特征在于,所述确定包括确定评估可见性的同心次序。
9.如权利要求I所述的方法,其特征在于,所述确定包括确定评估可见性的横向次序。
10.如权利要求I所述的方法,其特征在于,定义所述第一包装器或定义所述第二包装器包括定义对所述数据、所述元数据、或这两者的访问速度要求。
11.如权利要求I所述的方法,其特征在于,定义所述第一包装器或定义所述第二包装器包括定义对所述数据、所述元数据、或这两者的防篡改要求。
12.如权利要求I所述的方法,其特征在于,定义所述第一包装器或定义所述第二包装器包括定义对所述数据、所述元数据、或这两者指定的恢复可靠性要求。
13.—种系统,包括 至少部分由数学变换技术提供者来分发的、独立于访问信息生成器来实现的至少ー个数学变换组件,所述访问信息生成器生成用于以下中的至少ー个的能力信息发布数据、元数据、或这两者或者订阅所发布的数据、所发布的元数据、或这两者,所述至少ー个数学变换组件包括被配置成基于所述访问信息生成器所生成的能力信息来执行至少ー个编码算法或解码算法的至少ー个处理器;以及 独立于所述访问信息生成器和所述至少ー个数学变换组件来实现的网络服务提供者,包括被配置成实现与由所述至少ー个数学变换组件加密的计算机数据、计算机元数据、或这两者有关的网络服务的至少ー个处理器,所述网络服务提供者被配置成与所述至少ー个数学变换组件进行通信以执行适用于所述计算机数据、计算机元数据、或这两者的至少两个数学变换包装器的生成、重新生成、更改、扩充、或删除。
14.如权利要求13所述的系统,其特征在于,所述网络服务提供者被配置成基于修改包装器的ー组信任要求中的信任要求的至少ー个时间事件来生成、重新生成、更改、扩充、或删除该包装器。
15.如权利要求13所述的系统,其特征在于,所述网络服务提供者被配置成基于修改包装器的ー组信任要求中的信任要求的至少ー个空间事件来生成、重新生成、更改、扩充、或删除该包装器。
全文摘要
用于数据服务的数字托管模式可包括对远程站点处的或云服务中的被模糊的数据的选择性访问,从而跨多个实体来分发信任以避免单点数据损害。基于该模式,用于任何种类的净荷的“可信信封”通过置于该信封上的各种装饰或信封来启用带帘访问,该装饰或信封允许范围为各保证(诸如但不限于机密性、隐私性、匿名性、篡改检测、完整性等)的全范围信任。通过被称为包装器合成的技术家族来提供可验证信任。多个同心和/或横向变换包装器或层可整体地或部分地将数据、元数据、或这两者变换成数学变换(例如,加密、跨存储来分发、模糊)或以其他方式将可见性缺失引入数据、元数据、或这两者中的一些或全部。
文档编号G06F15/00GK102656589SQ201080056810
公开日2012年9月5日 申请日期2010年11月18日 优先权日2009年12月15日
发明者R·P·德索扎, R·V·奥拉德卡 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1