磁盘数据安全保护技术综述

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

磁盘数据安全保护技术综述摘要:随着越来越多的重要数据存储在磁盘上,磁盘数据的安全保护逐渐成为备受关注的问题。众多的安全威胁如磁盘数据被非法修改、磁盘数据泄漏、磁盘失窃,都可能会对保存着重要信息的组织如军队、政府、企业等造成无法估计的损失。以保密性、完整性、可用性、验证和授权为安全威胁模型,从硬件和软件两个方面对当前主要的磁盘数据安全保护技术、系统进行分析和比较,并展望今后的研究方向。关键词:磁盘数据安全保护;保密性;完整性;可用性;验证;授权中图分类号:TP309文献标志码:A文章编号:1001-3695(2008)05-1288-04信息时代的重要特征之一就是大量的数据都以电子化的形式存储在各种媒质上。自1956年第一块磁盘IBM350RAMAC诞生以来[1],磁盘就以其体积小、容量大、速度快等特点逐渐成为存储数据的理想介质。??磁盘数据的安全保护可以从硬件和软件两个方面进行。硬件保护是指借助于额外的硬件单元或部件对磁盘数据进行保护;软件保护是指依赖于硬件上层的操作系统或文件系统,从应用程序级、文件系统级或操作系统级对磁盘的读/写、访问等进行安全保护。在当前的磁盘数据保护技术的研究中,基于硬件保护的研究工作主要以产品或专利的形式存在[2~6]。基于软件的保护研究有各种原型系统和解决方案,主要可分为encrypt-on-wire和encrypt-on-disk系统两类[7]。其中,encrypt-on-wire系统是指加密服务器与客户端之间数据传输的系统[8~10];encrypt-on-disk系统是指加密磁盘上存储数据的系统。Encrypt-on-disk系统又可以分为共享[11~18]和非共享系统[19~21]两类,其区别主要在于是否提供加密文件的多用户共享机制。??如何衡量当前提出的众多磁盘数据安全保护系统,需要考虑其具体的应用场景和威胁模型。Hasan等人[22]提出了一个通用的安全存储系统的威胁模型CIAA,即保密性、完整性、可用性和验证,但他并没有强调访问控制失效给系统带来的危险。而在磁盘数据保护中,对磁盘的读写权限控制是保护磁盘数据安全的必要手段。因此本文在CIAA的基础上添加了授权即CIAAA,并将其作为分析各种磁盘数据保护技术的指标。??当前磁盘数据保护技术的研究日趋热门,相关的研究工作很多。例如,Riedel等人[7]提出了一个评价存储系统安全性的框架;Kher等人[23]对当前主要的安全存储系统进行了介绍和比较。但这些工作都没有包括当前最新的工作,如WindowsVistaBitLockerdriveencryption等,并且都没有涉及硬件方面的保护技术。因此有必要对现有技术给出较为全面的分析和归纳,以提供有益的借鉴。??1硬件系统??1.1硬盘数据加密系统??硬盘数据加密系统是苗胜等人[2]设计的一种基于FPGA的硬盘加密系统。其基本原理是由数据缓冲电路对硬盘数据线上的数据进行缓冲,过滤命令控制信号、加密数据信号,实现硬盘数据的安全保护。该系统使用智能卡存储和管理密钥,并支持DES、3DES、AES等各种加密算法。??CIAAA评价为:??a)保密性。总线上流入磁盘的数据通过硬件电路模块进行加/解密保护,确保了磁盘数据的保密性。但文献[2]中没有指出所使用的加密算法的加密模式。如果是简单的ECB模式,则同样的明文块会产生同样的密文块,造成安全隐患。??b)完整性。系统没有验证磁盘数据完整性的机制。??c)可用性。硬件电路的使用周期一般较长,且执行效率较软件系统有很大的优势。但系统的硬件单元一旦受到物理损坏,则整个系统就无法正常工作。??d)验证。系统没有验证机制。??e)授权。系统没有权限控制机制。??1.2Secureddatastoragedevice??SDSD[3]由保护和媒质部分构成。保护部分的主要模块有实时时钟、命令处理器、数据存储处理器及固定存储等。媒质部分为存储数据的介质(如磁盘、软盘等)及其控制单元,由介质控制器、介质驱动及介质本身组成。保护和媒质部分通过接口逻辑连接。??SDSD通过保护部分将数据通过实时时钟打上时间戳,再经过加密后将其写入存储介质。SDSD将加密密钥分为两部分,一部分存储在媒质部分的存储介质中,一部分存储在保护部分的固定存储中。这样做的目的是即使非法用户通过访问磁盘获得了存储在介质中的密钥,也无法获得存储在保护部分中的密钥以获得完整的加/解密密钥。为了提高系统的效率,SDSD没有采用通用的加密算法如DES等,而是通过由密钥产生的伪随机序列进行加/解密操作。??CIAAA评价为:??a)保密性。磁盘上的数据经过保护部分的安全操作后以密文的形式存储,确保了数据的保?┟苄浴*?b)完整性。通过对写入数据打上时间标签,保证了系统抗重放攻击的能力。??c)可用性。电路损耗或损坏对系统的正常工作产生影响。??d)验证。SDSD没有提供单独的验证机制。??e)授权。SDSD没有磁盘数据读写的权限控制机制。??2软件系统??2.1Encrypt-on-wire系统??SFS(self-certifyingfilesystem)[13]系统由三部分组成,即SFS文件服务器、SFS客户端和SFS认证服务器。SFS的认证服务器用来存储客户端用户的组信息和公钥信息。SFS采用自认证路径来完成服务器和客户端的双向认证。??SFS文件系统通过挂载点/sfs/location/hostid进行访问。其中,location是文件服务器的地址,可以是其DNS主机名或IP地址;hostid是服务器地址和其公钥的哈希值。当用户请求文件服务器上的文件时,SFS客户端首先生成一个公私钥对,然后从认证服务器获取文件服务器的公钥,并将其哈希值同hostid值比对以验证文件服务器的身份。通过服务器的身份认证后,客户端和文件服务器协商创建会话密钥,建立安全信道。接着客户端用其私钥签名一个请求发送给文件服务器,用于获得服务器的验证。当服务器和客户端的双向认证结束后,双方在事先建立好的安全信道中通信。??SFS后来又发展了两个改进的版本,即集中访问控制的SFS[24]和只读SFS[25]。前者在SFS中增加了非集中式的访问控制功能,允许文件的创建者添加在本地或远程SFS中的用户对该文件的访问权限。后者使用新的模块――数据库生成程序,在用户创建文件时将其每个数据块进行哈希,然后将哈希值插入到文件的inode中,接着将每个inode的哈希值插入到文件目录中。如此重复这个过程,直到创建系统根目录/root的哈希值,构成整个文件系统的哈希树。??CIAAA评价为:??a)保密性。SFS及其改进版本都通过双向认证阻止非法用户对系统的访问,间接地保护了数据的隐私,但是磁盘数据仍然以明文形式存在。??b)完整性。SFS-RO通过建立整个文件系统的哈希树确保了文件系统的完整性。??c)可用性。SFS及其改进版本中,存储服务器公钥的认证服务器由于直接参与了系统的认证过程,容易造成单点拒绝服务攻击。??d)验证。SFS及其改进版本提供了完善的双向认证机制,并通过使用自认证技术增强了系统的可扩展性。??e)授权。SFS-DAC通过创建可信任用户组及其权限控制表,控制了共享文件的授权访问。SFS及其改进版本的磁盘访问控制主要由UNIX本身自带的访问控制机制提供。??2.2Encrypt-on-disk系统??2.2.1非共享系统CFS??CFS[19]是最早提出的encrypt-on-disk系统。CFS向客户端内核注册为一个NFS服务器,不论其是在客户端本地还是在远程服务器上。因此CFS是运行在用户进程空间中,当其执行加/解密操作时需要额外的上下文切换,影响了系统的效率。CFS通过cattach命令将加密的文件目录映射为一个虚拟目录挂载在“/crypt”下,用户通过这个目录访问他们的文件。CFS基本上设计为一个单用户系统。每个用户为自己需要加密的目录及文件指定一个密钥种子,系统根据该种子生成加密密钥。当用户需要与其他用户共享加密文件时,需要亲自将密钥交给其他用户。??CIAAA评价为:??a)保密性。CFS中磁盘存储的是密文,只有在客户端执行读操作后,磁盘数据才以明文形式存在。??b)完整性。CFS没有提供验证磁盘数据完整性的机制。??c)可用性。CFS通过加密磁盘上存储的数据确保只能被其创建者或拥有者访问,但由于CFS运行在用户进程空间,频繁的上下文切换操作会消耗系统的额外资源。??d)验证。CFS依赖UNIX自身的验证机制完成用户身份验证。??e)授权。CFS采用UNIX自身的磁盘文件读写访问控制机制。??2.2.2共享系统??1)PLUTUS??PLUTUS[15]设计了良好的机制以完成文件的多用户共享。PLUTUS中具有相同共享属性的文件被归为同一文件组(file-group)中。同一文件组中的文件共享一个共同的数据结构lockbox,其中存放着该文件组的lockbox-key。同一文件组中文件的每个数据块都由不同的file-blockkeys加密,而这些file-blockkeys再由lockbox-key加密。??对于每个文件组,有一个RSA公私钥对与其关联。私钥部分叫做file-signkey,公钥部分叫做file-verifykey。PLUTUS将系统文件操作对象分为读者(readers)和写者(writers)两类。读者只被分配给lockbox-keys,而写者除了lockbox-keys外还分配给file-signkeys。PLUTUS中的文件块以Merkeltree的形式组织。写文件时写者通过对该文件的root用与该文件组对应的file-signkey进行签名。而其他的读者或写者都可以用该文件组的file-verifykey对该文件的完整性进行验证。??PLUTUS借鉴了很多Cepheus系统[14]的特点,如lockbox技术最早就是由Cepheus提出。除此之外,PLUTUS还借鉴了Cepheus的lazyre-encryption的思想。Lazyre-encryption是指当用户从系统中删除时,不立即对属于该用户的文件用新的密钥重新加密,而是等该文件被再次访问时再重新加密。关于注销用户的密钥管理,文献[7,26]中进行了有关的讨论,lazyre-encryption比用户注销后立即进行重新加密的active/aggressivere-encryption在性能上有优势。??CIAAA评价为:??a)保密性。PLUTUS文件服务器上的数据以密文形式存在,保护了数据的隐秘性。??b)完整性。PLUTUS通过file-signkey和file-verifykey对文件进行签名和验证保护,确保了磁盘数据的完整性。??c)可用性。PLUTUS通过将安全操作转移到客户端,减轻了服务器的工作压力,并且通过file-groups实现文件的共享,使得文件的所有者无须在线仍然可以共享其所拥有的文件。??d)验证。PLUTUS依赖UNIX系统自身的验证机制。??e)授权。PLUTUS通过分配不同的密钥授权不同的磁盘数据读写权限。??2)NCryptfs??NCryptfs[16]是利用可堆叠文件系统技术设计的encrypt-on-disk共享文件系统。NCryptfs提供内核级别的安全服务,因此在性能上有很大的优势。NCryptfs通过挂载点/mnt/ncryptfs进行访问,并且通过授权入口(authorizatoinentries)管理系统的访问和操作。每个授权入口都是一个登录口令及其相关权限的哈希值。??与CFS一样,用户通过attach命令创建一个加密目录。NCryptfs通过用户输入的passphrase为该目录及目录下的文件创建密钥,该密钥储存在内核中。当用户需要共享文件时,必须为每个其他用户关联授权入口。但由于密钥是通过用户的attach命令生成的,当其他用户访问共享文件时,该文件的创建者必须在线,否则无法事先产生文件的加/解密密钥并对访问者进行验证。另外由于密钥是储存在内核中,只能在同一台机器中

1 / 19
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功