一种用户模式加密文件系统技术方案

技术编号:10095055 阅读:125 留言:0更新日期:2014-05-28 19:26
本发明专利技术是一种能自动实现云存储文件加密的用户模式加密文件系统,所述系统包括加密文件容器、虚拟文件系统驱动及文件操作处理程序;加密文件容器用于存放加密文件且内部具有文件和文件目录的组织结构;虚拟文件系统驱动和文件操作处理程序一起将加密文件容器中的文件和文件目录映射到计算机文件系统的一个虚拟文件盘或虚拟文件目录,并将应用程序或系统程序针对虚拟文件盘或虚拟文件目录中文件和文件目录的操作转化成针对加密文件容器中文件和文件目录的操作,并在处理过程中对受信程序读或写的文件数据自动进行解密或加密处理。用于文件云存储时,作为非受信程序的云存储客户端从虚拟文件盘或虚拟文件目录中读取的文件数据是加密的。

【技术实现步骤摘要】
一种用户模式加密文件系统
本专利技术属于信息安全
,是一种用户模式加密文件系统,特别是一种能自动实现云存储文件加密的加密文件系统。
技术介绍
提供文件存储功能的云存储系统(文件云存储系统)是一种通过网络提供数据存储服务的系统。文件云存储系统通常由云存储客户端和云存储服务端(云端系统)两部分组成,用户通过云存储客户端将文件上传或同步到云端系统保存,或将云端系统保存的文件下载或同步到用户计算机本地使用。文件云存储系统由于使用方便,深受用户欢迎;但云存储系统的数据安全却始终是云存储用户最关心、最担心的问题,又是目前尚未很好地解决的问题,也是妨碍云存储服务业务发展的障碍之一。对云存储中的文件进行安全保护最有效的方案是对存储在云端系统中的文件加密,而其中的一种简单的加密方案是:用户在将文件上传或同步到文件云存储系统的云端系统前,先自己手工使用工具对要存储在云端的文件进行加密,如使用文件压缩工具WinZip、WinRAR的加密功能,或者使用专门的文件加密工具(这类工具很多);当把云端系统中的文件下载或同步到用户本地计算设备(如个人电脑、移动终端)后,在使用文件前,再使用工具对被加密的文件(加密文件)进行解密。但这种方案的最大缺点是用户使用不方便,且与用户的通常使用习惯不符(增加了额外的加密、解密操作)。对此问题的一种解决方案是在上传文件时由云存储客户端自动对文件进行加密;下载文件时,云存储客户端自动对被加密的文件进行解密。但是,目前已有大量的已部署的文件云存储系统,这些系统都不支持上传、下载时的文件自动加密、解密,对于这种已部署的文件云存储系统,如何在对云存储系统不进行修改的情况下实现上传文件的自动加密和下载文件的自动解密是亟待解决而又不易解决的问题。这是因为文件云存储系统是一个庞大的系统,为了增加加密功能而对原有系统进行改动并重新部署系统的代价将是巨大的,不会被云存储服务提供商所接受,也不会被用户所接受。针对这种已部署的文件云存储系统的文件加密、解密问题,专利技术专利申请“一种云存储文件加密系统”(专利申请号:201310466023.7)中提出了一种基于文件系统过滤器驱动的方案,但专利申请201310466023.7中提出的技术方案存在的一个问题:当由于用户的疏忽或者由于计算机系统的故障导致进行文件加密处理的文件系统过滤器驱动没有启动或不能正常工作,有可能导致未被加密的文件被上传或同步到云端系统。用户模式文件系统(UserModeFileSystem,FUSE)最初是在Linux的虚拟文件系统(VirtualFileSystem,FUSE)技术基础上发展的一种文件系统技术,之后该技术被推广到其他操作系统包括Windows、Unix(不同操作系统下的FUSE在实现方案上略有差别)。用户模式文件系统的技术特点是通过一个文件系统驱动或文件系统的过滤器驱动将应用程序或系统程序针对一个(虚拟)文件盘或文件目录中的文件或文件目录的操作请求转发到一个运行在计算机系统的用户模式下的文件操作处理程序,由该用户模式下的文件操作处理程序完成针对具体文件或文件目录的操作。在用户模式文件系统中,具体的文件和文件目录可根据需要存放在任何地方。针对已部署的文件云存储系统,本专利技术利用用户模式文件系统技术实现在对文件云存储系统不进行修改的情况下对上传文件的自动加密。
技术实现思路
本专利技术的目的是提出一种能自动实现云存储文件加密的用户模式加密文件系统。为了实现上述目的,本专利技术所采用的技术方案是:一种用户模式加密文件系统,所述加密文件系统包括加密文件容器、虚拟文件系统驱动及文件操作处理程序,其中:加密文件容器:一个存放加密的文件(简称加密文件)并按计算机文件系统的由文件目录和文件组成的文件组织结构(树形的递归包含文件目录和文件的文件组织结构)对内部存放的加密文件进行组织的计算机系统的电子文件(即加密文件容器是一个电子文件)或者电子文件存储系统(即加密文件容器是一个电子文件存储系统);虚拟文件系统驱动:一个加载到用户计算机的计算机系统中的文件系统驱动或一个插入到用户计算机的计算机系统的文件系统驱动栈中的过滤器类型的文件系统驱动(即文件系统过滤器驱动,简称文件过滤器驱动或文件过滤器);所述虚拟文件系统驱动借助文件操作处理程序将所述加密文件容器中存放的文件和文件目录映射到用户计算机的文件系统的一个虚拟文件盘中或虚拟文件目录中;所述虚拟文件盘是用户计算机的文件系统中的一个对用户和程序显现为文件盘并具有单独的文件盘符的文件组织结构(由文件和文件目录组成的文件组织结构),但该文件盘不是对应于用户计算机的一个真实存在的磁盘分区或磁盘驱动器或磁盘卷(DiskPartition或DiskDrive或DiskVolume),而是对应于所述加密文件容器(所述对用户和程序显现为文件盘指用户通过计算机操作系统的文件管理器或文件系统“外壳”程序,如WindowsExplorer,看到的是一个文件盘,且用户和程序按操作使用文件盘的方式操作使用虚拟文件盘及虚拟文件盘中的文件和文件目录);所述虚拟文件目录是用户计算机的文件系统中的一个对用户和程序显现为文件目录的文件组织结构,但该文件目录中的文件和文件目录不是直接存在于用户计算机的永久存储介质上而是存在于所述加密文件容器中(的文件和文件目录)(所述对用户和程序显现为文件盘指用户通过计算机操作系统的文件管理器或文件系统“外壳”程序,如WindowsExplorer,看到的是一个文件目录,且用户和程序按操作使用文件目录的方式操作使用虚拟文件目录及虚拟文件目录下的文件和文件目录);通过映射,所述虚拟文件盘或虚拟文件目录中的一个文件或文件目录(虚拟的文件或文件目录)被映射到或对应到加密文件容器中保存的一个加密文件或文件目录;所述虚拟文件系统驱动将应用程序或系统程序针对所述虚拟文件盘或虚拟文件目录中文件和文件目录的操作请求(包括创建、读写、删除文件,读取、设置文件信息等)转交所述文件操作处理程序进行处理,并将操作处理的结果返回;文件操作处理程序:一个运行在用户计算机的计算机系统用户模式(usermode)下的对加密文件容器中的文件和文件目录进行操作处理的程序(与用户模式相对的是内核模式,kernelmode);所述文件操作处理程序接收所述虚拟文件系统驱动转发的应用程序或系统程序针对所述虚拟文件盘或虚拟文件目录中文件或文件目录的操作请求(I/O操作请求),并将接收的操作请求转化成针对所述加密文件容器中对应(加密)文件或文件目录的操作;若所述加密文件容器是一个电子文件,则所述文件操作处理程序按访问和处理计算机文件系统的文件的方式访问和处理加密文件容器中保存的文件和文件目录(比如,按读写文件的方式访问加密文件容器这个“特殊”文件,由此获得其中保存的“内部”文件和“内部”文件目录的信息或数据,并对它们进行操作处理),若所述加密文件容器是一个电子文件存储系统,则所述文件操作处理程序通过文件存储系统提供的访问和操作处理方式访问和操作处理加密文件容器中的文件和文件目录;所述文件存储系统提供的访问和操作处理方式包括动态库、API(ApplicationProgrammingInterface)、系统调用或交互协议(比如,若加本文档来自技高网
...
一种用户模式加密文件系统

【技术保护点】
一种用户模式加密文件系统,其特征是:所述加密文件系统包括加密文件容器、虚拟文件系统驱动及文件操作处理程序,其中:加密文件容器:一个存放加密的文件并按计算机文件系统的由文件目录和文件组成的文件组织结构对内部存放的加密文件进行组织的计算机系统的电子文件或者电子文件存储系统;虚拟文件系统驱动:一个加载到用户计算机的计算机系统中的文件系统驱动或一个插入到用户计算机的计算机系统的文件系统驱动栈中的过滤器类型的文件系统驱动;所述虚拟文件系统驱动借助文件操作处理程序将所述加密文件容器中存放的文件和文件目录映射到用户计算机的文件系统的一个虚拟文件盘中或虚拟文件目录中;所述虚拟文件盘是用户计算机的文件系统中的一个对用户和程序显现为文件盘并具有单独的文件盘符的文件组织结构,但该文件盘不是对应于用户计算机的一个真实存在的磁盘分区或磁盘驱动器或磁盘卷,而是对应于所述加密文件容器;所述虚拟文件目录是用户计算机的文件系统中的一个对用户和程序显现为文件目录的文件组织结构,但该文件目录中的文件和文件目录不是直接存在于用户计算机的永久存储介质上而是存在于所述加密文件容器中;通过映射,所述虚拟文件盘或虚拟文件目录中的一个文件或文件目录被映射到或对应到加密文件容器中保存的一个加密文件或文件目录;所述虚拟文件系统驱动将应用程序或系统程序针对所述虚拟文件盘或虚拟文件目录中文件和文件目录的操作请求转交所述文件操作处理程序进行处理,并将操作处理的结果返回;文件操作处理程序:一个运行在用户计算机的计算机系统用户模式下的对加密文件容器中的文件和文件目录进行操作处理的程序;所述文件操作处理程序接收所述虚拟文件系统驱动转发的应用程序或系统程序针对所述虚拟文件盘或虚拟文件目录中文件或文件目录的操作请求,并将接收的操作请求转化成针对所述加密文件容器中对应文件或文件目录的操作;若所述加密文件容器是一个电子文件,则所述文件操作处理程序按访问和处理计算机文件系统的文件的方式访问和处理加密文件容器中保存的文件和文件目录,若所述加密文件容器是一个电子文件存储系统,则所述文件操作处理程序通过文件存储系统提供的访问和操作处理方式访问和操作处理加密文件容器中的文件和文件目录;所述文件存储系统提供的访问和操作处理方式包括动态库、API、系统调用或交互协议;所述文件操作处理程序和虚拟文件系统驱动构成用户模式文件系统驱动;对于应用程序或系统程序将非加密的文件数据保存到虚拟文件盘或虚拟文件目录中的操作,所述用户模式文件系统驱动将文件数据加密后保存到所述加密文件容器中;对于应用程序或系统程序将加密的文件数据保存到虚拟文件盘或虚拟文件目录中的操作,所述用户模式文件系统驱动将文件数据保存到所述加密文件容器中时不再对文件数据进行加密;对于受信程序针对所述虚拟文件盘或虚拟文件目录中的文件进行的文件信息以及文件数据读取操作,所述用户模式文件系统驱动按解密后的文件返回操作处理的结果;对于非受信程序针对所述虚拟文件盘或虚拟文件目录中的文件进行的文件信息以及文件数据读取操作,所述用户模式文件系统驱动按加密后的文件返回操作处理的结果;非受信进程读取的文件数据中包含有解密加密的文件数据所需的密钥信息包括密钥标识信息;所述用户模式文件系统驱动对文件数据进行的加密和解密处理由所述文件操作处理程序完成或者由所述虚拟文件系统驱动完成;所述受信程序指被允许以明文形式读取保存在所述加密文件容器中的文件的程序;所述受信程序包括应用程序和系统程序;受信程序之外的其他程序只能以密文形式读取保存在所述加密文件容器中的文件,称为非受信程序;所述受信程序和非受信程序包括针对加密文件容器中单个文件类型的受信程序和非受信程序,即对单个文件类型而言是受信的或非受信的,以及针对加密文件容器中所有文件类型的受信程序的和非受信程序,即针对加密文件容器中所有文件类型而言是受信的或非受信的;所述受信程序和非受信程序由所述用户模式加密文件系统的发布者设定,或者由使用用户模式加密文件系统的用户设定,或者由用户模式加密文件系统自动在线更新设定。...

【技术特征摘要】
1.一种用户模式加密文件系统,其特征是:所述加密文件系统包括加密文件容器、虚拟文件系统驱动及文件操作处理程序,其中:加密文件容器:一个存放加密的文件并按计算机文件系统的由文件目录和文件组成的文件组织结构对内部存放的加密文件进行组织的计算机系统的电子文件或者电子文件存储系统;虚拟文件系统驱动:一个加载到用户计算机的计算机系统中的文件系统驱动或一个插入到用户计算机的计算机系统的文件系统驱动栈中的过滤器类型的文件系统驱动;所述虚拟文件系统驱动借助文件操作处理程序将所述加密文件容器中存放的文件和文件目录映射到用户计算机的文件系统的一个虚拟文件盘中或虚拟文件目录中;所述虚拟文件盘是用户计算机的文件系统中的一个对用户和程序显现为文件盘并具有单独的文件盘符的文件组织结构,但该文件盘不是对应于用户计算机的一个真实存在的磁盘分区或磁盘驱动器或磁盘卷,而是对应于所述加密文件容器;所述虚拟文件目录是用户计算机的文件系统中的一个对用户和程序显现为文件目录的文件组织结构,但该文件目录中的文件和文件目录不是直接存在于用户计算机的永久存储介质上而是存在于所述加密文件容器中;通过映射,所述虚拟文件盘或虚拟文件目录中的一个文件或文件目录被映射到或对应到加密文件容器中保存的一个加密文件或文件目录;所述虚拟文件系统驱动将应用程序或系统程序针对所述虚拟文件盘或虚拟文件目录中文件和文件目录的操作请求转交所述文件操作处理程序进行处理,并将操作处理的结果返回;文件操作处理程序:一个运行在用户计算机的计算机系统用户模式下的对加密文件容器中的文件和文件目录进行操作处理的程序;所述文件操作处理程序接收所述虚拟文件系统驱动转发的应用程序或系统程序针对所述虚拟文件盘或虚拟文件目录中文件或文件目录的操作请求,并将接收的操作请求转化成针对所述加密文件容器中对应文件或文件目录的操作;若所述加密文件容器是一个电子文件,则所述文件操作处理程序按访问和处理计算机文件系统的文件的方式访问和处理加密文件容器中保存的文件和文件目录,若所述加密文件容器是一个电子文件存储系统,则所述文件操作处理程序通过文件存储系统提供的访问和操作处理方式访问和操作处理加密文件容器中的文件和文件目录;所述文件存储系统提供的访问和操作处理方式包括动态库、API、系统调用或交互协议;所述文件操作处理程序和虚拟文件系统驱动构成用户模式文件系统驱动;对于应用程序或系统程序将非加密的文件数据保存到虚拟文件盘或虚拟文件目录中的操作,所述用户模式文件系统驱动将文件数据加密后保存到所述加密文件容器中;对于应用程序或系统程序将加密的文件数据保存到虚拟文件盘或虚拟文件目录中的操作,所述用户模式文件系统驱动将文件数据保存到所述加密文件容器中时不再对文件数据进行加密;对于受信程序针对所述虚拟文件盘或虚拟文件目录中的文件进行的文件信息以及文件数据读取操作,所述用户模式文件系统驱动按解密后的文件返回操作处理的结果;对于非受信程序针对所述虚拟文件盘或虚拟文件目录中的文件进行的文件信息以及文件数据读取操作,所述用户...

【专利技术属性】
技术研发人员:龙毅宏唐志红
申请(专利权)人:武汉理工大学
类型:发明
国别省市:湖北;42

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

1