你的位置:首页 > 新闻动态 > 行业资讯

文件安全加密系统的实现层次

2014-12-28 09:54:46      点击:
     在现代操作系统中,文件的操作均通过文件系统进行,虽然不同的操作系统支持的文件系统不同,但对文件的访问方式基本相同,在Windows系统中,文件系统是以设备驱动程序形式存在的。Windows的设备驱动程序采用分层方式,允许在应用程序和硬件之间存在多个驱动程序层次,其中过滤驱动程序是一种特殊类型的中间驱动程序,它们位于其它驱动程序的上层或下层,截获发送给低层驱动程序设备对象的请求,在请求到达低层驱动程序之前,过滤驱动程序可以更改该请求,而低层驱动程序完全不知道在其上层驱动中发生的一切操作。图1给出了Windows系统中的文件操作流程,其中层次I和II属于应用层;层次III和IV属于操作系统内核层。从中可以看出,一个应用程序(I层)在发出文件操作请求时,需要经过操作系统提供的API层(II层)、文件过滤驱动程序层(III层)和文件系统层(IV层)才能访问文件,由此可知,文件加密安全系统也只能在这四个层次上进行实现。
     文件系统的这种组织结构决定了文件加密安全系统的实现方式,在数据从应用程序访问文件所经过的每个层次中,均可对访问的数据实施加密/解密操作,由于层次I只能获取应用程序自身读写的数据,其他应用程序的数据不经过该层,因此,在层次I中只能实现静态加密,无法实现动态加密;即使是层次II,也并不是所有文件数据均通过该层,但在该层可以拦截到各种文件的打开、关闭等操作。因此,在应用层实现的动态加解密产品无法真正做到“实时”加密/解密操作,一般只能通过其他变相的方式进行实现(一般均在层次II进行实现)。例如,在应用程序打开文件时,先直接解密整个文件或解密整个文件到其他路径,然后让应用程序直接(重定向)访问这个完全解密的文件,而在应用程序关闭这个文件时,再将已解密的文件进行加密。其实质是静态加解密过程的自动化,并不属于严格意义上的动态加密。