Linux加密文件系统构建.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Linux加密文件系统构建

Linux加密文件系统构建   摘 要:使用加密文件系统是保护重要数据的一种有效手段。传统的加密文件系统因为数据保护不彻底、效率低下等缺陷,无法很好地满足用户需求。本文介绍了一种加密文件系统的设计与实现,该文件系统基于Linux操作系统,采用标准加密算法,利用堆叠式文件系统来实现。   关键词:加密文件系统 Linux 堆叠 OpenSSL   中图分类号:TP316文献标识码:A文章编号:1672-8882(2011)07-084-02      随着信息技术的发展,电子文档被广泛使用在各行各业,如何确保这些电子信息的安全已经成为人们日益关注的问题。加密文件系统作为一种有效的数据保密技术而受到人们的青睐,它可以有效防止非法入侵者窃取用户的机密数据。同时,在多个用户共享一个系统的情况下,可以很好地保护用户的私有数据。所以,在高安全等级的操作系统中引入加密文件系统将对系统整体安全性起到至关重要的作用。   现在已经有很多成熟的加密文件系统,如Windows的EFS(Encrypting File System),Linux的CFS(Cryptographic File System)、TCFS(Transparent Cryptographic File System)、AFS(Andrew File System)等。这些加密文件系统对文档安全提供了一定程度的保护,但是它们普遍存在性能比较低下、保护机制不完整等一些问题。所以,本文的目标是设计一种使用方便、性能高效的加密文件系统,实现文档信息在操作系统底层的安全保密。   1. 现有加密文件系统的分析   现有的加密文件系统主要有如下几个:   1.1 CFS   CFS是比较早的一个经典的加密文件系统。它利用NFS文件系统的工作原理,在一个NFS服务器将数据写入磁盘时对数据进行加密,从磁盘读出数据时对数据进行解密,从而保证了数据在磁盘上的密文存储。CFS的加密操作在用户层完成,需要频繁地进行用户层到核心层的数据交换,因此CFS最大的缺点在于其效率低下。   1.2 TCFS   TCFS是在CFS基础上开发的加密文件系统,与CFS的不同在于它是一个NFS客户端。TCFS可以在不同级别上进行密钥管理,另外TCFS的数据加/密操作在核心层完成,所以性能有所改善。因其基于NFS的工作机制,每次读写操作都会涉及到核心层与用户层之间的数据交换,所以其效率的依然低下。另外,TCFS的安全性主要依赖于存放在磁盘上的用户登陆密码,在一定程度上降低了系统的安全性。   1.3 AFS   AFS是一个分布式加密文件系统,它通过一个统一的访问接口把多个服务器连接起来,使用户能够方便、高效地共享分布在网络中的文件。AFS提供了一个安全的加密数据传输路径,并通过鉴权数据库与访问控制列表ACL(Access Control Lists)的配合为用户提供更高的安全性。AFS的数据在服务器端是明文存储,其数据的存储安全性没有得到根本的保护。同时,因为AFS使用分布式的数据存储方式,一台服务器崩溃或被入侵,就会严重破坏整个系统的安全性。   2、堆叠(Stackable layer)文件系统[1]   Linux系统的一个重要特征就是支持多种不同的文件系统。它通过虚拟文件系统(VFS)把实际文件系统的具体细节抽象出来,将实际的文件系统和系统服务分离开来,以便提供一个统一的接口[2]。每一个具体的文件系统负责实现VFS系统调用的底层操作。可以根据实际需要设计特殊的文件系统,然后通过VFS来支持它。   堆叠式文件系统是把要实现的文件系统功能加载到原有文件系统之上,形成一个新的文件系统。可以将多层堆叠式文件系统叠加在一起,实现文件系统的“堆叠”式开发,以提供更强大的功能。其中上层文件系统调用下层文件系统的功能,直到底层文件系统。这样每一层只关注和其直接关联的下层,和其他的层没有直接关系。   利用现有文件系统的功能,把要开发的堆叠式文件系统插入到VFS和底层文件系统之间。也就是说,需要实现的新功能都由堆叠式文件系统来提供,而对于底层的文件系统则不做任何的修改。所以,开发、测试工作的焦点就是这个堆叠式文件系统,而基本不涉及底层文件系统。具有性能损失小、开发代价低等优点。同时,为了提高文件系统的效率,堆叠式文件系统以内核模块的形式实现。   这样开发者可以把主要精力放在文件系统的新功能上,不用考虑内核中的文件系统和底层文件系统的关联,同时避免了用户级文件系统过多的上下文切换和数据拷贝降低了该类文件系统性能的缺陷。   3、FiST[3](File-System Translator)语言   为方便堆叠式文件系统的开发,哥伦比亚大学教授E.Zado设计了FiST语言。Fi

您可能关注的文档

文档评论(0)

3471161553 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档