分级内容可寻址存储系统中的块级客户端侧加密技术方案

技术编号:10991899 阅读:72 留言:0更新日期:2015-02-04 10:45
本发明专利技术涉及分级内容可寻址存储系统中的块级客户端侧加密。提供用于块级客户端侧加密的技术。在内容可寻址存储系统中,多个块被用于实施分级文件系统。该分级文件系统支持加密卷和未加密卷两者。文件夹和文件系统直接调用块系统层,以用于涉及非加密卷的操作。文件夹和文件层调用卷加密层,以用于涉及加密卷的操作。卷加密层通过API接收来自文件夹和文件层的调用,所述API匹配所述块系统层通过其接收来自所述文件夹和文件层的调用的API。

【技术实现步骤摘要】
分级内容可寻址存储系统中的块级客户端侧加密相关申请的交叉引用本申请要求于2013年7月22日提交的申请号为13/947,409的美国专利的优先权,其全部内容结合于此作为参考。
本专利技术涉及存储系统,更具体地,涉及分级内容可寻址存储系统中的块级客户端侧加密的技术。
技术介绍
用于访问所存储的数字项目的信息在本文被称为所存储项目的“访问密钥”。在典型的文件系统中,所存储的项目基于(a)所述项目被存储的位置,以及(b)所述项目的名称或识别符而被检索。例如,如果名为“fo0.txt”的文件位于名为“c:\myfiles
ext”的目录中,那么应用程序可以利用路径名“c:\myfiles
ext\fo0.txt”作为访问密钥以从文件系统检索文件。因为常规的访问密钥是基于被检索项目的位置,所以当所述项目被移动时,访问密钥改变。此外,项目的每个副本具有不同的访问密钥,这是因为每个副本被存储在不同的位置。 与常规文件系统相比,内容可寻址存储(CAS)系统允许应用程序基于从项目内容生成的散列值从存储器检索项目。因为CAS系统基于为所述项目生成的散列值对所述项目执行存储相关的操作,并且所述散列值是基于项目的内容而不是项目存储在什么位置,请求操作的应用程序可以如此操作,而不需要知道项目存储副本的数量或位置。例如,CAS系统可以在位置A、B和C存储项目X的多个副本。期望检索项目X的应用程序将通过向CAS系统发送基于项目X的内容的散列值来这样做。基于该散列值,CAS系统将向该应用程序提供从位置A、B和C中的一个位置检索的项目X的副本。因此,应用程序将获得项目X,而不需要知道项目X实际存储的位置,存在多少项目X的副本,或实际获得所检索副本的特定位置。 存储数字项目,例如文件或消息,涉及对“块存储系统”进行一个或多个调用。块存储系统是执行存储操作而不需要理解数字信号自身的格式或内容的存储系统。这样的存储系统被称为块存储系统,是因为该系统处理所有形式的数字项目,好像这些项目仅仅是不透明的数据块。例如,相同的块存储系统可以被文字处理应用程序、图像管理应用程序和日历系统利用,以分别存储文档、图像和约会。不过,从块存储系统方面来说,只有一种项目类型被存储:不透明的数字块。 块存储系统可以被实施为CAS系统。例如,块存储系统可以通过向该块应用加密散列函数(例如,MD5、SHA-1或SHA2),生成该块的散列值。接着,该块存储可以存储所述块,并保持将散列值与块被存储的位置关联的索引。 当应用程序随后请求该块的检索时,该应用程序向该存储系统提供散列值。块存储系统利用索引定位与散列值关联的块,并将因此定位的块提供至请求的应用程序。 块可以用于表示文件系统分级结构,其中,一些块对应于文件系统分级结构的文件夹/目录,而其他块对应于存储在这些文件夹/目录中的文件。对于分级结构内的任何给定的块或属于多个树的块的子树,也是可能的。 加密用于保护数据和/或元数据。在实施为CAS系统的块存储系统中,一个方案是在块存储服务器上执行加密操作。不过,成功的攻击会暴露存储在块存储服务器中的所有数据。而且,这样的方案会引起潜在地重大的修改和/或开销以配置服务器执行加密和解密操作。 在该部分中描述的方法是可以实行的方法,但不见得是之前已经构想或实行的方案。因此,除非另有说明,否则不应该认为由于在该部分中描述的任何方法包含在该部分中而作为现有技术。
技术实现思路
提供了用于块级客户端侧加密的技术。根据本专利技术的一个方面,提供了一种方法,包括:在内容可寻址存储系统中,利用多个块来实施分级文件系统;支持所述分级文件系统中的加密卷和非加密卷两者;其中,支持加密卷和非加密卷两者包括:使得文件夹和文件层直接调用块系统层,以用于涉及非加密卷的操作;以及使得所述文件夹和文件层调用卷加密层,以用于涉及加密卷的操作,其中,所述卷加密层通过API接收来自所述文件夹和文件层的调用,所述API匹配所述块系统层通过其接收来自所述文件夹和文件层的调用的API。 【附图说明】 在附图中: 图1示出用于分级内容可寻址存储系统中的块级客户端侧加密的系统实施例的框图; 图2A示出对应于加密卷的散列树的实施例的框图; 图2B示出卷状态的框图; 图3示出用于获得块树的根散列以访问加密卷的方法实施例的流程图; 图4示出获得指定块的获取操作方法的实施例的流程图; 图5示出将指定块添加到加密卷的存放操作(put operat1n)方法的实施例的流程图; 图6示出一个或多个实施例可以在其上实施的计算机系统。 【具体实施方式】 在下列【具体实施方式】中,为了说明的目的,阐述了很多具体细节以便提供对本专利技术的透彻理解。然而,显而易见的是,本专利技术可以在没有这些具体细节的情况下被实践。在其他情况下,已知的结构和装置以框图的形式示出,以避免使本专利技术不必要地晦涩难懂。 总体概述 提供了用于块级客户端侧加密的技术。在内容可寻址存储系统中,多个块被用于实施分级文件系统。该分级文件系统可以被配置为支持加密卷和未加密卷两者种。文件夹和文件系统直接调用块系统层,以用于涉及未加密卷的操作。文件夹和文件层调用卷加密层,以用于涉及加密卷的操作。卷加密层通过API接收来自文件夹和文件层的调用,所述API匹配块系统层通过其从文件夹和文件层接收调用的API。 对于给定的加密卷,数据保护在块级执行。在一个实施例中,加密的卷包括存储在散列树中的多个块。通过利用一个或多个授权和密钥分配方案,可以访问和/或共享加密的卷。 如本文所利用的,下面的符号指的是: .E (K, M)-利用密钥K的数据M的加密; .D (K, N)-利用密钥K的密文数据N的解密; .h (X)-数据X的单程散列; .CK-块密钥(用于加密块的密钥); .VK-卷密钥(用于加密与特定卷相关的数据的密钥); .ID(VK)-卷密钥VK的识别符; .VS-卷状态; .VID-卷识别符; .KE -与实体E关联的密钥; .RC -加密卷的根块;以及 .CCT-块C的明文块数据;以及 .CE-块C的加密块数据;CE相当于E (K,CCT),其中,K基于应用于块C的加密方案而确定。 系统概述 图1示出用于块级客户端侧加密的系统的实施例的框图。该块级客户端侧加密可以在一个或多个分级内容可寻址存储系统中实施。卷管理系统100被配置为实施一个或多个加密卷的加密、存储和访问。在一个实施例中,卷管理系统100还被配置为实施一个或多个未加密卷的存储和访问。 卷管理系统100包括一个或多个文件系统客户端102-106、块存储服务器(chunkstore server) 122以及名称表服务器124。卷管理系统100的这些组件中的每个组件将在后文中更详细描述。 文件系统客户端 文件系统客户端102-106通常表示被配置为存储和访问利用块存储服务器122实施的文件系统中的文件的实体。因此,文件系统客户端102-106可以对应于个人用户、应用程序、用户组、系统、服务或利用文件系统的任何其他实体类型。当在加密卷上存储文件时,文件系统客户端102-106执行由块存储服务器122存储的块数据的加密和解密。本文档来自技高网
...

【技术保护点】
一种方法,包括:在内容可寻址存储系统中,利用多个块来实施分级文件系统;支持所述分级文件系统中的加密卷和非加密卷两者;其中,支持加密卷和非加密卷两者包括:使得文件夹和文件层直接调用块系统层,以用于涉及非加密卷的操作;以及使得所述文件夹和文件层调用卷加密层,以用于涉及加密卷的操作;其中,所述卷加密层通过API接收来自所述文件夹和文件层的调用,所述API匹配所述块系统层通过其接收来自所述文件夹和文件层的调用的API。

【技术特征摘要】
2013.07.22 US 13/947,4091.一种方法,包括: 在内容可寻址存储系统中,利用多个块来实施分级文件系统; 支持所述分级文件系统中的加密卷和非加密卷两者; 其中,支持加密卷和非加密卷两者包括: 使得文件夹和文件层直接调用块系统层,以用于涉及非加密卷的操作;以及 使得所述文件夹和文件层调用卷加密层,以用于涉及加密卷的操作; 其中,所述卷加密层通过API接收来自所述文件夹和文件层的调用,所述API匹配所述块系统层通过其接收来自所述文件夹和文件层的调用的API。2.根据权利要求1所述的方法,其中 所述块系统层具有用于执行存放操作的第一接口和用于执行获取操作的第二接口; 所述卷加密层具有用于执行存放操作的第三接口和用于执行获取操作的第四接口; 所述方法进一步包括: 所述文件夹和文件层对所述第一接口进行第一调用以对非加密卷执行存放操作; 所述文件夹和文件层对所述第二接口进行第二调用以对所述非加密卷执行获取操作; 所述文件夹和文件层对所述第三接口进行第三调用以对加密卷执行存放操作; 响应于所述第三调用,所述卷加密层对所述第一接口进行第四调用; 所述文件夹和文件层对所述第四接口进行第五调用以对所述加密卷执行获取操作;以及 响应于所述第五调用,所述卷加密层对所述第二接口进行第六调用。3.根据权利要求1所述的方法,其中: 其中,所述块系统层为被配置为访问所述分级文件系统的客户端层; 其中,所述卷加密层为被配置为执行加密和解密的客户端层,其中,所述卷加密层进一步被配置为对所述块系统层进行调用以访问所述分级文件系统。4.一种方法,包括: 利用内容可寻址存储系统中的多个块来实施分级文件系统,所述分级文件系统包括多个加密卷; 为每个加密卷保持相应的卷密钥; 接收驻留于所述多个加密卷的特定加密卷上的特定块的获取请求; 响应于所述获取请求,执行步骤: 从所述内容可寻址存储系统获得所述特定块的加密块数据; 利用所述特定加密卷的卷密钥获得所述特定块的明文块数据;以及 用所述特定块的明文块数据来响应所述获取请求。5.根据权利要求4所述的方法,其中,利用所述特定加密卷的卷密钥获得所述特定块的明文块数据的步骤包括: 利用所述卷密钥解密为所述特定块随机生成的特定块密钥; 通过利用所述特定块密钥解密所述特定块的加密块数据,生成所述明文块数据。6.根据权利要求4所述的方法,其中,利用所述特定加密卷的卷密钥获得所述特定块的明文块数据的步骤包括通过利用所述卷密钥解密所述特定块的加密块数据,生成所述明文块数据。7.根据权利要求4所述的方法,其中,利用所述特定加密卷的卷密钥获得所述特定块的明文块数据的步骤包括: 利用所述卷密钥解密在存储所述特定加密卷的块的所述内容可寻址存储系统内的块树的根散列; 利用所述块树的根散列获得所述特定块的散列;以及 通过利用所述特定块的散列解密所述特定块的所述加密块数据,生成所述明文块数据。8.根据权利要求4所述的方法,进一步包括: 对于所述内容可寻址存储系统中的至少一个块,保持基于明文块数据生成的第一散列与基于所述加密块数据生成的第二散列之间的映射。9.根据权利要求8所述的方法,其中,所述第一散列是所述明文块数据的双散列。10.根据权利要求4所述的方法,其中,所述获取请求包括明文块散列,所述方法进一步包括: 利用所述明文块散列获得加密块散列; 其中,所述加密块数据利用所述加密块散列而获得。11.根据权利要求4所述的方法,进一步包括: 对于所述内容可寻址存储系统中的至少一个卷,保持卷识别符与所述至少一个卷的卷状态的散列之间的映射。12.根据权利要求4所述的方法,进一步包括: 从客户端接收存放请求以将第二块添加到所述特定加密卷; 加密所述第二块; 在所述内容可寻址存储系统中将所述加密的第二块与所述特定加密卷关联地存储。13.根据权利要求12所述的方法,其中,所述加密的第二块通过利用与所述加密块的内容不相关的指定块密钥进行加密,进一步包括步骤: 利用所述卷密钥加密所述指定块密钥; 将加密的指定块密钥与基于所述第二块的明文块数据生成的散列关联地存储。14.根据权利要求12所述的方法,其中,所述加密的第二块利用所述卷密钥进行加密。15.根据权利要求12所述的方法,其中,所述加密的第二块利用基于所述第二块的明文块数据生成的散列进行加密。16.根据权利要求12所述的方法,进一步包括通过利用所述卷密钥生成至少一个新块,更新与所述卷关联的所述块树。17.根据权利要求4所述的方法,进一步包括: 利用实体的实体密钥加密所述卷密钥; 通过密钥管理组件与所述实体共享所述加密卷密钥,共享所述特定加密卷,其中,所述实体通过利用其自身的实体密钥解密所述...

【专利技术属性】
技术研发人员:朱利安·伯夫萨钦·拉瓦特
申请(专利权)人:阿普赛尔有限公司
类型:发明
国别省市:美国;US

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

1