CN105224882B - 一种基于桥文件系统的文件加密系统 - Google Patents
一种基于桥文件系统的文件加密系统 Download PDFInfo
- Publication number
- CN105224882B CN105224882B CN201510614005.8A CN201510614005A CN105224882B CN 105224882 B CN105224882 B CN 105224882B CN 201510614005 A CN201510614005 A CN 201510614005A CN 105224882 B CN105224882 B CN 105224882B
- Authority
- CN
- China
- Prior art keywords
- file
- encryption
- bridge
- data
- fuse
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及一种基于桥文件系统的文件加密系统,所述系统包括文件加密过滤器驱动和桥文件系统,当一个受信进程打开或创建一个加密文件,或者打开或创建安全文件目录或安全文件盘中的一个文件时,文件加密过滤器驱动将文件打开或创建操作重定向到桥文件系统所映射或对应的虚拟文件盘或虚拟文件目录中的一个文件;桥文件系统将受信进程针对重定向后的文件的所有操作转化为针对重定向前的原文件的操作;受信进程通过桥文件系统读到的文件数据是明文数据,而非受信进程直接读取文件读到的是密文数据;由于同时打开同一文件的受信进程和非受信进程使用不同的文件FCB和缓存,避免了暴力清缓存或刷缓存的问题,也避免了缓存中明文数据和密文数据的混合。
Description
技术领域
本发明属于信息安全技术领域,特别是一种基于桥文件系统的文件加密系统。
背景技术
基于文件过滤器驱动(File Filter Driver)的透明文件加密系统能在不影响用户使用习惯的情况下自动实现文件的加密和解密,是保证数据安全的重要技术手段。但目前的基于文件过滤器驱动的透明文件加密技术普遍存在如下问题。
目前的文件系统(如Windows文件系统)都是带缓存的文件系统,即,当一个程序进程读取一个文件的数据时,文件系统先看内存中是否缓存有程序进程要读取的数据,若有,则直接将内存中缓存的数据返回,否则,文件系统从存储介质中读取一定数量的文件数据(通常是几个页的数据,如通过文件I/O的page读操作),然后一方面将读取的文件数据缓存在内存中,另一方面将程序进程所需数据返回;当多个进程同时打开同一个文件时,它们共享文件缓存数据(在Windows文件系统中,一个文件只有一个文件控制块FCB,一个FCB对应一个文件缓存,因此多个进程同时打开同一个文件时,它们共用一个FCB和文件缓存)。
在基于文件过滤器驱动的透明文件加密系统中,通常将程序进程分为受信进程和非受信进程;一个受信进程被允许获得加密文件的明文数据,而一个非受信进程则不被允许,比如Word程序的程序进程是加密后的Word文档的受信进程,能够获得Word文档加密文件中的明文数据,而浏览器进程作为Word文档的非受信进程则不被允许获得Word文档加密文件中的明文数据。受信进程针对特定的文件类型而设定(如Word程序的程序进程是加密Word文档受信进程)。
由于文件系统的缓存机制,当一个受信进程读取一个加密文件时,内存中缓存的是明文数据(在Windows环境下,由于存在以内存映射方式打开的文件,因此,透明文件加密系统通常是在文件Page读时进行数据解密,从而使得内存中缓存的是明文数据),而当一个非受信进程读取一个加密文件时,内存中缓存的是密文数据。当一个受信进程和一个非受信进程交替读取一个加密文件时,文件加密系统需要不断地清空内存中缓存的数据,以确保内存中缓存有正确的数据(明文或密文),这称为暴力刷缓存或清缓存问题,暴力刷缓存或清缓存降低了文件操作的效率;进一步地,当一个受信进程和一个非受信进程同时读取一个加密文件时,文件加密系统就很难处理了,这时内存中缓存的数据有可能同时存在明文和密文数据,这既可能造成敏感数据泄漏,又使得受信和非受信进程获得错误的数据。
针对透明文件加密中的数据缓存问题,人们提出一些解决方案,如双缓存方案,多FCB方案等。双缓存方案在内核层改变文件I/O的操作处理,设法使得受信进程和非受信进程读取不同的缓存数据,但技术方案复杂。而多FCB方案(如基于LayerFSD技术的SEFS,参见基于LayerFSD技术的SEFS透明加密平台技术白皮书)实际上是引入了一个新的文件系统,它使得每个进程有自己的FCB和缓存,开发一个这样的新的文件系统当然是件很复杂的事情,而且内存利用率、存在重复读取数据的问题,这种方案的最大问题是用户和程序不能在原有文件系统上直接操作,而是在新文引入的件系统上操作。
发明内容
本发明的目的是提出一种基于桥文件系统的文件加密系统,以克服现有技术方案在缓存处理方面的不足。
为了实现本发明的目的,本发明所提出的技术方案是:一种基于桥文件系统的文件加密系统,所述系统包括文件加密过滤器驱动和桥文件系统,其中:
文件加密过滤器驱动:插入到计算机文件系统中的一个过滤器类型的驱动,当一个受信进程打开或创建一个加密文件(注:在许多文件系统中打开和创建是同一种文件I/O操作,只是命令的名字用“打开”或“创建”文件而已),或者打开或创建安全文件目录或安全文件盘中的一个文件(加密或未加密文件)时,文件加密过滤器驱动将文件打开或创建操作重定向到桥文件系统所映射或对应的虚拟文件盘或虚拟文件目录中的一个文件(虚拟文件),即在重定向后的文件打开或创建操作中,受信进程要打开或创建的原文件的文件路径被转换成(桥文件系统所映射或对应的)虚拟文件盘或虚拟文件目录中的一个文件路径(一个虚拟文件路径);所述安全文件目录或安全文件盘是计算机文件系统的一个文件目录或文件盘,安全文件目录或安全文件盘中的文件被基于桥文件系统的文件加密系统自动加密;加密后的文件的名字和类型不变,即加密后的文件保持原有文件的名字和扩展名;
桥文件系统:一个在受信进程对加密文件或者安全文件目录或安全文件盘中的文件进行文件I/O操作过程中起着桥梁作用(桥接、转换)的用户空间文件系统(Filesystemin Userspace,FUSE);桥文件系统又包括FUSE文件驱动(用户空间文件系统的文件驱动)和FUSE用户空间程序(用户空间文件系统的用户空间程序);桥文件系统(的FUSE文件驱动)被映射或对应到计算机文件系统的一个虚拟文件盘或虚拟文件目录;所述虚拟文件盘或虚拟文件目录不对应计算机文件系统的存储介质上的一个磁盘分区或文件目录结构,但在用户和程序进行文件I/O操作时表现为一个文件盘或文件目录(本发明所说的虚拟文件盘可以仅是从文件系统层面的虚拟文件盘,不必是设备层面的虚拟磁盘,即通过文件系统驱动虚拟出的文件盘,而不必是采用了设备驱动虚拟出的磁盘);桥文件系统的FUSE用户空间程序的程序进程(即FUSE用户空间程序运行时的进程)对所有加密文件而言都是非受信进程;当文件加密过滤器驱动将一个受信进程打开或创建一个加密文件的操作,或者打开或创建安全文件目录或安全文件盘中的一个文件的操作,重定向到桥文件系统所映射或对应的虚拟文件盘或虚拟文件目录后,桥文件系统通过FUSE用户空间程序将受信进程针对重定向后的文件的所有操作转化为针对重定向前的原文件的操作;
所述受信进程是被允许获取加密文件的明文的程序进程;所述非受信进程是不被允许获取加密文件的明文的程序进程;受信进程针对文件类型而设定(如Word程序的程序进程是Word文档的受信进程);所述文件I/O操作包括针对文件的所有操作。
当文件加密过滤器驱动将一个受信进程打开或创建一个加密文件的操作,或者打开或创建安全文件目录或安全文件盘中的一个文件的操作,重定向到桥文件系统所映射或对应的虚拟文件盘或虚拟文件目录中的文件时,重定向后的文件路径中包含有受信进程要打开或创建的原文件的文件路径,而桥文件系统从重定向后的文件路径中获得受信进程要打开或创建的原文件的文件路径,并由FUSE用户空间程序依据获得的原文件的文件路径对受信进程要打开或创建的原文件进行操作;若桥文件系统接收到打开或创建文件的操作请求后,发现请求中的文件路径不符合重定向后的文件路径的格式,则报告出错。
当非受信进程打开或创建安全文件目录或安全文件盘中的一个文件时,若文件加密过滤器驱动发现打开或创建的文件是一个非加密的文件,则文件加密过滤器驱动将打开或创建的文件转化成加密文件;
当非受信进程对安全文件目录或安全文件盘中打开或创建的一个文件进行文件数据存写操作时,若文件加密过滤器驱动发现存写的文件数据是非加密的文件数据,则文件加密过滤器驱动对存写的文件数据进行加密处理。
当非受信进程对桥文件系统所映射或对应的虚拟文件盘或虚拟文件目录中的文件进行文件I/O操作时,文件加密过滤器驱动阻止非受信进程的文件I/O操作;而当受信进程和操作系统辅助文件I/O操作的系统进程(如Windows的system进程)对桥文件系统所映射或对应的虚拟文件盘或虚拟文件目录中的文件(即重定向后的文件)进行文件I/O操作时,文件加密过滤器驱动允许受信进程和操作系统辅助文件I/O操作的系统进程的文件I/O操作。
对于文件数据的加密和解密处理有两种方案:
方案一、受信进程或操作系统辅助文件I/O操作的系统进程通过桥文件系统对加密文件进行I/O操作时,对文件数据的加密和解密处理由桥文件系统实施
在此方案下与加密、解密有关的处理如下:
当受信进程或操作系统辅助文件I/O操作的系统进程对桥文件系统所映射或对应的虚拟文件盘或虚拟文件目录中的文件进行文件I/O操作时,文件加密过滤器驱动不对受信进程的文件I/O操作进行干预(将I/O操作向下层驱动传递),不对存写和读取的文件数据进行加密和解密处理;
当受信进程或操作系统辅助文件I/O操作的系统进程对重定向到桥文件系统所映射或对应的虚拟文件盘或虚拟文件目录中的文件进行数据读取操作时,桥文件系统通过FUSE用户空间程序对重定向前的原文件进行数据读取,并由FUSE用户空间程序或FUSE文件驱动对读取的加密数据进行解密处理;
当受信进程或操作系统辅助文件I/O操作的系统进程对重定向到桥文件系统所映射或对应的虚拟文件盘或虚拟文件目录中的文件进行数据存写操作时,桥文件系统通过FUSE用户空间程序对重定向前的原文件进行数据存写,并由FUSE用户空间程序或FUSE文件驱动对存写的数据进行加密处理。
方案二、受信进程或操作系统辅助文件I/O操作的系统进程通过桥文件系统对加密文件进行I/O操作时,对文件数据的加密和解密处理由文件加密过滤器驱动实施
在此方案下与加密、解密有关的处理如下:
当受信进程或操作系统辅助文件I/O操作的系统进程对重定向到桥文件系统所映射或对应的虚拟文件盘或虚拟文件目录中的文件进行数据读取操作时,桥文件系统通过FUSE用户空间程序对重定向前的原文件进行数据读取操作,并通过FUSE文件驱动将读取的数据返回,而文件加密过滤器驱动对桥文件系统返回的加密数据进行解密处理;
当受信进程或操作系统辅助文件I/O操作的系统进程对重定向到桥文件系统所映射或对应的虚拟文件盘或虚拟文件目录中的文件进行数据存写操作时,文件加密过滤器驱动对要提交到桥文件系统的FUSE文件驱动的数据进行加密处理,并由桥文件系统通过FUSE用户空间程序将加密后的数据存写到重定向前的原文件。
从以上描述可以看到,基于本发明的技术方案,所有非受信进程包括FUSE用户空间程序的程序进程对同一个文件进行I/O操作时,它们共用一个文件FCB和共用存有密文文件数据的缓存,而通过文件重定向,所有对同一个文件进行I/O操作的受信进程共用另一个文件FCB和共用存有明文文件数据的缓存,即非受信进程和受信进程分别使用不同的FCB和缓存,从而使得在非受信进程和受信进程对同一个加密文件交替进行读写时无需进行清缓存操作,在非受信进程和受信进程对同一个加密文件同时进行读写时也不会出现密文数据和明文数据混合的问题。
虽然对文件的加密和解密处理可以由桥文件系统的FUSE用户空间程序或FUSE文件驱动或文件加密过滤器驱动实施,但在FUSE用户空间程序实施最容易。另外,本发明虽然引入了一个用户空间文件系统,但这个文件系统不是用来存储和管理文件的,而是仅作为受信进程访问文件时文件加密、解密的桥梁。
附图说明
图1为Windows下本发明的系统结构和原理图。
具体实施方式
下面结合附图对本发明的具体实施进行描述。
在Windows下本发明的系统的结构和原理图如图1所示,其中,文件加密过滤器驱动的开发可以采用Windows文件过滤器驱动(filter driver)或微过滤器驱动(mini-filter driver)技术开发。利用Windows文件过滤器驱动或微过滤器驱动实施加密功能及进行受信进程和非受信进程判断已是成熟的技术,在此不多叙述。对于文件重定向,可以利用Windows文件I/O的reparse point功能(参见simrep.c代码);需注意的是,除了对打开或创建文件操作(IRP_MJ_CREATE)中的文件路径进行重定向处理外,对于文件重命名操作(IRP_MJ_SET_INFORMATION+FileRenameInformation)中的重命名文件路径也需要进行重定向处理,以确保重命名后的文件在桥文件系统所映射或对应的虚拟文件盘或虚拟文件目录中。当一个受信进程打开或创建一个文件时,文件加密过滤器驱动(在pre操作阶段)通过内核文件函数调用或通过一个用户空间程序检查确定要打开或创建文件是否是加密文件。
桥文件系统的开发可利用Windows下的用户空间文件系统技术进行开发,比如,利用Windows的文件驱动或文件过滤器驱动开发FUSE文件驱动,用Windows桌面开发技术开发FUSE用户空间程序,而FUSE文件驱动与FUSE用户空间程序之间通过Windows的内核层与用户层之间的通信机制实现数据交换;或者,使用已有的Windows FUSE框架进行开发桥文件系统。在Windows环境下如何开发用户空间文件系统,在公开的资料包括互联网上都有介绍,在此不多叙述。桥文件系统映射成一个盘后,可以通过文件目录软链接(Soft link)将桥文件系统所映射或对应的虚拟文件盘进一步映射到一个文件目录。
重定向后的文件的文件路径(转换后的文件路径)的表示可采用的一种技术方案是:
虚拟文件目录名\原文件路径,或者,虚拟文件盘\原文件路径,这里的原文件路径是受信进程要打开或创建的原文件的完整路径包括文件所在文件盘的指示(这里,原文件的完整路径中的文件盘指示可以采用内核层的表示,也可以采用应用层的表示;若采用应用层的表示,则将盘符后的冒号去掉,如D:转换成D)。若桥文件系统接收到打开或创建文件的操作请求后,发现请求中的文件路径没有包含一个有效的原文件路径,比如,原文件路径中的文件盘指示指向一个无效盘,则认为请求中的文件不符合重定向后的文件路径的格式(没有对应的原文件),报告错误。
对文件数据的加密可以采用流加密或块加密。为了区分加密文件和非加密文件以及存放加密、解密有关信息,可以给加密文件附加一个特别的、包含特征信息的头部(加密头部)。当一个进程打开或创建一个文件时,文件加密过滤器驱动根据打开或创建的文件是否包含附加的加密头部确定被打开或创建的文件是否是加密文件;当非受信进程对安全文件目录或安全文件盘中打开或创建的一个文件进行文件数据存写操作时,文件加密过滤器驱动根据存写的文件数据是否包含加密头部来确定存写的文件数据是加密的文件数据还是非加密的文件数据。
若加密文件包含一个附加的加密头部,且当受信进程或操作系统辅助文件I/O操作的系统进程通过桥文件系统对加密文件进行I/O操作时,对文件数据的加密和解密处理由桥文件系统实施,则:
当桥文件系统执行文件数据读取或存写请求并通过FUSE用户空间程序对加密文件进行文件数据读取或存写操作时,由FUSE用户空间程序或FUSE文件驱动将读取或存写的文件数据的起始位置加上等于加密头部长度的偏移;
当桥文件系统执行文件长度(File Size)或文件分配长度(File AllocationSize)查询请求并通过FUSE用户空间程序查询并返回加密文件的文件长度或文件分配长度时,由FUSE用户空间程序或FUSE文件驱动将返回的长度减去加密头部的长度;
当桥文件系统执行文件长度或文件分配长度设置请求并通过FUSE用户空间程序设置加密文件的文件长度或文件分配长度时,由FUSE用户空间程序或FUSE文件驱动将设置的长度加上加密头部的长度。
若加密文件包含一个附加的加密头部,且当受信进程或操作系统辅助文件I/O操作的系统进程通过桥文件系统对加密文件进行I/O操作时,对文件数据的加密和解密处理由文件加密过滤器驱动实施,则:
当受信进程通过桥文件系统对加密文件进行文件数据读取或存写操作时,文件加密过滤器驱动将读取或存写的文件数据的起始位置加上等于加密头部长度的偏移;
当受信进程通过桥文件系统查询加密文件的文件长度或文件分配长度时,文件加密过滤器驱动将桥文件系统返回的长度减去加密头部的长度;
当受信进程通过桥文件系统设置加密文件的文件长度或文件分配长度时,文件加密过滤器驱动将设置的长度加上加密头部的长度。
若对文件数据的加密和解密处理由文件加密过滤器驱动实施,则选择在Page读时对加密数据进行解密,Page写时对数据加密(这样方便)。
在其他操作系统上实施本发明,在具体实施上有些微小的差别,但总体思路上是一样的。
需指出的是,若桥文件系统的FUSE文件驱动通过文件过滤器驱动实施,则文件加密过滤器驱动同桥文件系统的FUSE文件驱动是同一个文件过滤器驱动或者是不同的文件过滤器驱动。还有,若桥文件系统不是一个用户空间文件系统而是一个能够直接对计算机文件系统中的文件进行文件I/O操作的文件系统,则本发明的技术方案同样成立,只是此时所有由用户空间文件系统的FUSE文件驱动和FUSE用户空间程序实施的功能全部由桥文件系统的文件驱动实施。
其他未说明的具体技术实施,对于相关领域的技术人员而言是众所周知,不言自明的。
Claims (10)
1.一种基于桥文件系统的文件加密系统,其特征是:所述系统包括文件加密过滤器驱动和桥文件系统,其中:
文件加密过滤器驱动:插入到计算机文件系统中的一个过滤器类型的驱动,当一个受信进程打开或创建一个加密文件,或者打开或创建安全文件目录或安全文件盘中的一个文件时,文件加密过滤器驱动将文件打开或创建操作重定向到桥文件系统所映射或对应的虚拟文件盘或虚拟文件目录中的一个文件,即在重定向后的文件打开或创建操作中,受信进程要打开或创建的原文件的文件路径被转换成虚拟文件盘或虚拟文件目录中的一个文件路径;重定向后的文件路径中包含有受信进程要打开或创建的原文件的文件路径;所述原文件的文件路径是包含有文件所在文件盘的指示的原文件的完整路径;所述安全文件目录或安全文件盘是计算机文件系统的一个文件目录或文件盘,安全文件目录或安全文件盘中的文件被基于桥文件系统的文件加密系统自动加密;加密后的文件的名字和类型不变,即加密后的文件保持原有文件的名字和扩展名;
桥文件系统:一个在受信进程对加密文件或者安全文件目录或安全文件盘中的文件进行文件I/O操作过程中起着桥梁作用的用户空间文件系统;桥文件系统又包括FUSE文件驱动和FUSE用户空间程序;桥文件系统被映射或对应到计算机文件系统的一个虚拟文件盘或虚拟文件目录;所述虚拟文件盘或虚拟文件目录不对应计算机文件系统的存储介质上的一个磁盘分区或文件目录结构,但在用户和程序进行文件I/O操作时表现为一个文件盘或文件目录;桥文件系统的FUSE用户空间程序的程序进程对所有加密文件而言都是非受信进程;当文件加密过滤器驱动将一个受信进程打开或创建一个加密文件的操作,或者打开或创建安全文件目录或安全文件盘中的一个文件的操作,重定向到桥文件系统所映射或对应的虚拟文件盘或虚拟文件目录后,桥文件系统从重定向后的文件路径中获得受信进程要打开或创建的原文件的文件路径,并通过FUSE用户空间程序将受信进程针对重定向后的文件的所有操作转化为针对重定向前的原文件的操作;
所述受信进程是被允许获取加密文件的明文的程序进程;所述非受信进程是不被允许获取加密文件的明文的程序进程;受信进程针对文件类型而设定;所述文件I/O操作包括针对文件的所有操作。
2.根据权利要求1所述的基于桥文件系统的文件加密系统,其特征是:
若桥文件系统接收到打开或创建文件的操作请求后,发现请求中的文件路径不符合重定向后的文件路径的格式,则报告出错。
3.根据权利要求1所述的基于桥文件系统的文件加密系统,其特征是:
当非受信进程打开或创建安全文件目录或安全文件盘中的一个文件时,若文件加密过滤器驱动发现打开或创建的文件是一个非加密的文件,则文件加密过滤器驱动将打开或创建的文件转化成加密文件;
当非受信进程对安全文件目录或安全文件盘中打开或创建的一个文件进行文件数据存写操作时,若文件加密过滤器驱动发现存写的文件数据是非加密的文件数据,则文件加密过滤器驱动对存写的文件数据进行加密处理。
4.根据权利要求1所述的基于桥文件系统的文件加密系统,其特征是:
当非受信进程对桥文件系统所映射或对应的虚拟文件盘或虚拟文件目录中的文件进行文件I/O操作时,文件加密过滤器驱动阻止非受信进程的文件I/O操作;而当受信进程和操作系统辅助文件I/O操作的系统进程对桥文件系统所映射或对应的虚拟文件盘或虚拟文件目录中的文件进行文件I/O操作时,文件加密过滤器驱动允许受信进程和操作系统辅助文件I/O操作的系统进程的文件I/O操作。
5.根据权利要求1所述的基于桥文件系统的文件加密系统,其特征是:
若受信进程和操作系统辅助文件I/O操作的系统进程通过桥文件系统对加密文件进行I/O操作时,对文件数据的加密和解密处理由桥文件系统实施,则:
当受信进程或操作系统辅助文件I/O操作的系统进程对桥文件系统所映射或对应的虚拟文件盘或虚拟文件目录中的文件进行文件I/O操作时,文件加密过滤器驱动不对受信进程的文件I/O操作进行干预,不对存写和读取的文件数据进行加密和解密处理;
当受信进程或操作系统辅助文件I/O操作的系统进程对重定向到桥文件系统所映射或对应的虚拟文件盘或虚拟文件目录中的文件进行数据读取操作时,桥文件系统通过FUSE用户空间程序对重定向前的原文件进行数据读取,并由FUSE用户空间程序或FUSE文件驱动对读取的加密数据进行解密处理;
当受信进程或操作系统辅助文件I/O操作的系统进程对重定向到桥文件系统所映射或对应的虚拟文件盘或虚拟文件目录中的文件进行数据存写操作时,桥文件系统通过FUSE用户空间程序对重定向前的原文件进行数据存写,并由FUSE用户空间程序或FUSE文件驱动对存写的数据进行加密处理。
6.根据权利要求1所述的基于桥文件系统的文件加密系统,其特征是:
若受信进程和操作系统辅助文件I/O操作的系统进程通过桥文件系统对加密文件进行I/O操作时,对文件数据的加密和解密处理由文件加密过滤器驱动实施,则:
当受信进程或操作系统辅助文件I/O操作的系统进程对重定向到桥文件系统所映射或对应的虚拟文件盘或虚拟文件目录中的文件进行数据读取操作时,桥文件系统通过FUSE用户空间程序对重定向前的原文件进行数据读取操作,并通过FUSE文件驱动将读取的数据返回,而文件加密过滤器驱动对桥文件系统返回的加密数据进行解密处理;
当受信进程或操作系统辅助文件I/O操作的系统进程对重定向到桥文件系统所映射或对应的虚拟文件盘或虚拟文件目录中的文件进行数据存写操作时,文件加密过滤器驱动对要提交到桥文件系统的FUSE文件驱动的数据进行加密处理,并由桥文件系统通过FUSE用户空间程序将加密后的数据存写到重定向前的原文件。
7.根据权利要求3所述的基于桥文件系统的文件加密系统,其特征是:
若加密文件包含一个附加的加密头部,则当一个进程打开或创建一个文件时,文件加密过滤器驱动根据打开或创建的文件是否包含附加的加密头部确定被打开或创建的文件是否是加密文件;当非受信进程对安全文件目录或安全文件盘中打开或创建的一个文件进行文件数据存写操作时,文件加密过滤器驱动根据存写的文件数据是否包含加密头部来确定存写的文件数据是加密的文件数据还是非加密的文件数据。
8.根据权利要求1所述的基于桥文件系统的文件加密系统,其特征是:
若加密文件包含一个附加的加密头部,且当受信进程或操作系统辅助文件I/O操作的系统进程通过桥文件系统对加密文件进行I/O操作时,对文件数据的加密和解密处理由桥文件系统实施,则:
当桥文件系统执行文件数据读取或存写请求并通过FUSE用户空间程序对加密文件进行文件数据读取或存写操作时,由FUSE用户空间程序或FUSE文件驱动将读取或存写的文件数据的起始位置加上等于加密头部长度的偏移;
当桥文件系统执行文件长度或文件分配长度查询请求并通过FUSE用户空间程序查询并返回加密文件的文件长度或文件分配长度时,由FUSE用户空间程序或FUSE文件驱动将返回的长度减去加密头部的长度;
当桥文件系统执行文件长度或文件分配长度设置请求并通过FUSE用户空间程序设置加密文件的文件长度或文件分配长度时,由FUSE用户空间程序或FUSE文件驱动将设置的长度加上加密头部的长度。
9.根据权利要求1所述的基于桥文件系统的文件加密系统,其特征是:
若加密文件包含一个附加的加密头部,且当受信进程或操作系统辅助文件I/O操作的系统进程通过桥文件系统对加密文件进行I/O操作时,对文件数据的加密和解密处理由文件加密过滤器驱动实施,则:
当受信进程通过桥文件系统对加密文件进行文件数据读取或存写操作时,文件加密过滤器驱动将读取或存写的文件数据的起始位置加上等于加密头部长度的偏移;
当受信进程通过桥文件系统查询加密文件的文件长度或文件分配长度时,文件加密过滤器驱动将桥文件系统返回的长度减去加密头部的长度;
当受信进程通过桥文件系统设置加密文件的文件长度或文件分配长度时,文件加密过滤器驱动将设置的长度加上加密头部的长度。
10.根据权利要求1所述的基于桥文件系统的文件加密系统,其特征是:
若桥文件系统的FUSE文件驱动通过文件过滤器驱动实施,则文件加密过滤器驱动同桥文件系统的FUSE文件驱动是同一个文件过滤器驱动或者是不同的文件过滤器驱动;
若桥文件系统不是一个用户空间文件系统而是一个能够直接对计算机文件系统中的文件进行文件I/O操作的文件系统,则所有由FUSE文件驱动和FUSE用户空间程序实施的功能全部由桥文件系统的文件驱动实施;
若,当受信进程或操作系统辅助文件I/O操作的系统进程对重定向到桥文件系统所映射或对应的虚拟文件盘或虚拟文件目录中的文件进行数据存写和读取操作时,桥文件系统不进行文件数据的加密和解密处理,则由文件加密过滤器驱动对文件数据进行加密和解密处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510614005.8A CN105224882B (zh) | 2015-09-23 | 2015-09-23 | 一种基于桥文件系统的文件加密系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510614005.8A CN105224882B (zh) | 2015-09-23 | 2015-09-23 | 一种基于桥文件系统的文件加密系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105224882A CN105224882A (zh) | 2016-01-06 |
CN105224882B true CN105224882B (zh) | 2018-04-20 |
Family
ID=54993844
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510614005.8A Active CN105224882B (zh) | 2015-09-23 | 2015-09-23 | 一种基于桥文件系统的文件加密系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105224882B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105760779B (zh) * | 2016-02-18 | 2018-06-22 | 武汉理工大学 | 一种基于fuse的双向文件加密系统 |
CN107145793B (zh) * | 2017-04-08 | 2019-05-21 | 北京明朝万达科技股份有限公司 | 一种基于文件双缓存的文件权限管理的方法及装置 |
CN109033872A (zh) * | 2018-07-18 | 2018-12-18 | 郑州信大捷安信息技术股份有限公司 | 一种基于身份的安全运行环境构造方法 |
CN110232261B (zh) * | 2019-06-03 | 2021-05-11 | 浙江大华技术股份有限公司 | 包文件的操作方法、文件处理设备及具有存储功能的设备 |
CN110569651A (zh) * | 2019-08-27 | 2019-12-13 | 北京明朝万达科技股份有限公司 | 基于国产操作系统的文件透明加解密方法及系统 |
CN115130142A (zh) * | 2022-09-01 | 2022-09-30 | 北京时代亿信科技股份有限公司 | 加密文件的处理方法及装置、非易失性存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101710345A (zh) * | 2009-12-22 | 2010-05-19 | 成都市华为赛门铁克科技有限公司 | 一种文件的存储、读取方法、装置和存取系统 |
CN102821094A (zh) * | 2012-07-09 | 2012-12-12 | 深圳市深信服电子科技有限公司 | 虚拟桌面中的数据安全处理方法及系统 |
CN103825953A (zh) * | 2014-03-04 | 2014-05-28 | 武汉理工大学 | 一种用户模式加密文件系统 |
CN104125069A (zh) * | 2014-07-07 | 2014-10-29 | 武汉理工大学 | 一种面向共享的安全文件目录文件加密系统 |
-
2015
- 2015-09-23 CN CN201510614005.8A patent/CN105224882B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101710345A (zh) * | 2009-12-22 | 2010-05-19 | 成都市华为赛门铁克科技有限公司 | 一种文件的存储、读取方法、装置和存取系统 |
CN102821094A (zh) * | 2012-07-09 | 2012-12-12 | 深圳市深信服电子科技有限公司 | 虚拟桌面中的数据安全处理方法及系统 |
CN103825953A (zh) * | 2014-03-04 | 2014-05-28 | 武汉理工大学 | 一种用户模式加密文件系统 |
CN104125069A (zh) * | 2014-07-07 | 2014-10-29 | 武汉理工大学 | 一种面向共享的安全文件目录文件加密系统 |
Non-Patent Citations (2)
Title |
---|
文件保护系统中透明加解密技术的设计与实现;徐翔;《中国优秀硕士论文全文数据库》;20090602;全文 * |
文件透明加解密关键技术研究及应用;翟壮;《中国优秀硕士论文全文数据库》;20131227;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN105224882A (zh) | 2016-01-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105224882B (zh) | 一种基于桥文件系统的文件加密系统 | |
TWI312952B (en) | Method of protecting information in a data storage device and data storage device for use with a host computer | |
US8145900B2 (en) | Crypto-pointers for secure data storage | |
CN105426766B (zh) | 一种基于影子文件的文件加密系统 | |
CN101542498B (zh) | 信息处理装置及方法 | |
US6378071B1 (en) | File access system for efficiently accessing a file having encrypted data within a storage device | |
US7269741B2 (en) | Recording apparatus, medium, method, and related computer program | |
JP4643427B2 (ja) | 暗号化機能内蔵ストレージシステム | |
CN105760779B (zh) | 一种基于fuse的双向文件加密系统 | |
EP2043073A1 (en) | Method for encrypting and decrypting shared encrypted files | |
US8750519B2 (en) | Data protection system, data protection method, and memory card | |
EP1769395A2 (en) | Object-based storage | |
US11288212B2 (en) | System, apparatus, and method for secure deduplication | |
KR101120779B1 (ko) | 시스템 페이징 파일의 암호화 | |
JP2007233704A (ja) | 仮想マシンを利用した情報処理装置および情報処理システム、並びに、アクセス制御方法 | |
JP2007304720A (ja) | コンテンツ利用管理システム、コンテンツ提供システム、及びコンテンツ利用装置 | |
CN108229190A (zh) | 透明加解密的控制方法、装置、程序、存储介质和电子设备 | |
US8132025B2 (en) | Management method for archive system security | |
CN105335663B (zh) | 一种基于双像文件的加密文件系统 | |
CN105590067B (zh) | 一种基于用户空间文件系统的文件加密系统 | |
JPH10301856A (ja) | ファイルアクセスシステムおよび記録媒体 | |
CN105574431B (zh) | 一种基于多像文件的加密文件系统 | |
JP2009516961A (ja) | キー及び/又は権利オブジェクトを管理する方法及びシステム | |
JPH05233460A (ja) | ファイル保護方式 | |
CN111190844A (zh) | 一种协议转化方法及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |