Linux系统下双缓冲透明加密文件系统的应用研究

2020-06-19 08:20黄海宁
科技创新导报 2020年7期
关键词:应用分析

黄海宁

摘   要:随着互联网络的快速发展,给人们的生活和工作造成了翻天覆地的变化,人们能够通过互联网络快速的获得信息,但与此同时也会导致各种隐私在互联网络上暴露,引起各种安全隐患。例如,病毒、木马、黑客等入侵,都有可能造成计算机安全受到威胁。本文通过对现有的透明文件加密系统进行分析,提出了基于双缓冲透明加密文件,可以有效减少对缓冲频繁区域次数减少保障操作内核肽的运行性能。

关键词:Linux系统  双缓冲  透明加密文件  应用分析

中图分类号:TP309.7;TP316.81                文献标识码:A                        文章编号:1674-098X(2020)03(a)-0145-02

在Linux系统之中,只有打开文件之后才能够快速的对文件进行读写操作,而无论是读取还是写入,都必须利用VFS映射到具体文件系统之中,在具体文件系统页面缓冲查找的过程中,为了提高读写的整体速度,必须要将缓存的内容保留一份副本。在写入时则必须要先写入到缓冲页,空闲时候再从缓冲页写入到磁盘。Linux系统可以通过address space operations保护缓冲页面与具体文件系统之间的关联,也能够为读取页和写入页实现快速的读取和写入,每一个特定的文件系统都必须利用address space operations结构中的函数,从而为文件加密提供重要的支撑。

1  系统设计

基于双缓冲透明加密文件系统主要由用户态控制台、访问控制管理层、密钥管理层以及页面缓存层对每一个文件的密文缓冲和明文缓冲[1]。

配置策略层包括用户态,能够帮助用户进行快速操作,有效对部分文件进行授信。访问控制管理层能够将配置策略传递的策略信息进行链接,实现VFS通用接口将用户带传递下来的文件信息进行拦截,利用内核态对文件的结构体进行描述,获得当前操作文件或者进程,从而决定是否需要明文或者密文。为了能够有效解决网络的安全隐患,必须要对数据进行加密。通过透明加密技术能够保证解密实现自动化透明化,确保文件的安全,但也会给用户的正常文件读写造成影响,影响用户体验。Linux系统的透明加密文件主要包括用户透明加密文件系统、基于拦截系统调用的加密文件系统以及过滤页缓冲透明加密文件系统。用户透明加密文件系统主要包括内核态和用户态的频繁切换,很容易导致系统性能消耗过度,不利于整个程序的正常运行,而且因为没有系统级别的缓存优化,也会造成系统的整体利用效率过低。

双缓冲层主要为address space operations结构体,包括明文缓冲以及密文缓冲,为授信进程和非授信进程快速读取,在发生操作时必须要充分考虑数据的一致性,因为在写文件的过程中必须要向密文缓冲区写入文件,这样就很容易造成不同缓冲区之间的内容存在差异,所以为了有效避免出现数据写入不同步的情况,必须要更新,另一个缓冲区的基数相对应的内容,而密钥管理层主要是通过128位密钥AES算法和FEK,算法加密文件所使用的密钥被称之为FEK,与只使用一个密钥的对称算法不同,公钥加密是非对称的,它使用两个独立的密钥。为此FEK的产生必须要具有随机性,经过加密之后的FEK,每一个文件末尾必须写入128个字节,作为整个文件的原数据,而公开的FEK必须要一对密钥统称为UEK[2]。

2  双缓冲透明加密文件系统的实现

Linux系统为了能够支持不同文件系统的操作,帮助用户提供更加干净整洁的文件系统页面。通过利用虚拟文件系统将整个文件系统的通用层实现抽象设计,从而帮助用户进行系统调用,快速进行读写。

为了实现双缓冲透明加密功能,最主要的就是加强对虚拟文件系统定义的打开读取,写入等函数进行重定。在打开文件时,必须要针对文件末尾的原数据进行快速获取,如果获取到了,则说明该文件并没有加密过,用户只需要导入UEK就能够处理,也可以为文件解密提供准备,如果没有获取原数据,则表明该文件属于明文信息,在读写时可以根据用户不同的选择进行加密或者不加密[3]。

通过访问控制能够对文件的明文或者密文信息进行判定,如果必须获取明文数据,则应该在明文的缓冲页面查找,如果查找成功则可以直接将明文信息快速反馈给用户态。如果查找失败则应该在密文缓冲页查找密文数据,在解密之后传递给用户态,并且将该明文信息缓存在明文缓冲区。如果在密文缓冲中也没有找到相应的密钥,则必须从块设备获取相对应的密文,数据在解密之后返回给用户态,将解密数据保存于明文缓冲,如果需要查找密文数据,则应该在密文缓冲中快速查阅[4]。堆栈式文件系统作为虚拟文件系统的重要组成部分,能够将文件系统功能加载到原有文件之上,实现传递式开发。堆栈式文件系统能够实现新的功能,同时也不会对底层文件系统进行修改,运用堆栈式文件系统的内核模块运行,可以有效减少内核态与用户态的频繁切换。具有性能损失少,开发代价低等优势,所以堆栈式文件系统也成为双缓冲透明加密文件系统的重要支持。

双缓冲透明加密文件系统构建不可避免的会涉及到硬件平台的选型和软件系统的选择,本系统本着性价比适中的原则完成对系统所需硬件的购置和软件的定制。硬件平台选择价格适中性能稳定的设备,软件环境尽量选择开源免费环境。随着业务的不断发展本系统所承载的业务也会不停的变化,系统应该可以灵活的扩展,保证对未来新业务的可扩展性。系统各模块之间尽量做到高内聚低耦合,使得模块之间相对独立便于扩展。

3  系统安全性需求

本双缓冲透明加密文件系统由于要同时服务于专网和互联网用户,对系统安全性要求不言而喻。首先系统必须考虑隔绝来自互联网的病毒、木马和非法用户的注入攻击,同时也要对专网的用户数据进行必要的审核防止误操作。根据不同用户的职责赋予不同权限,根据用户角色进行访问审核限制,合理分配用户权限避免权限交叉,以最小权限原则设计用户权限,保证数据安全。本双缓冲透明加密文件系统必须考虑到其用户群体的知识结构和使用环境等因素[5]。本双缓冲透明加密文件系统主要使用者是分布于不同乡镇的信息员和县级部门的管理人员,需要同时满足乡镇信息员简单明了界面友好和县级部门管理人员功能强大高效的特点。双缓冲透明加密文件系统故障率要控制在很低的水平,至少保证周内不会出现宕机的情况发生。宕机频率应低于1次/月,不能出现不可恢复的系统性故障。具备断电保护功能,突然的电力中断不会对系统造成致命的损害。同时,系统还应该具备定时、自动、异机备份重要数据库的能力,避免由于不同原因导致系统崩溃后的无法恢复服务[6]。

4  结语

总而言之,通过本次对Linux系统下双缓冲透明加密文件系统的重要应用进行深入分析详细介绍了双缓冲透明文件加密系统的设计理念以及实现方法,并且根据系统的安全性能需求进行介绍,能够进一步提高整个双缓冲透明加密文件系统的设计效果。

参考文献

[1] 黄顺锐. 基于TrustZone技术的数据安全加密方法的研究与实现[D].北京邮电大学,2019.

[2] 李康康. 基于strongSwan的国密IPSec VPN安全方案设计与实现[D].西安电子科技大学,2017.

[3] 孙晓芳. 一种基于内容关联密鑰技术的数据库系统加密方法研究[D].华中科技大学,2017.

[4] 杨冬奎. 基于ARM嵌入式平台的脉冲星数字后端软件设计与安全防护技术研究[D].东南大学,2017.

[5] 黄萌萌. 基于嵌入式平台的无线视频采集传输系统的研究与设计[D].太原科技大学,2016.

[6] 方霞,吕海燕,任颖.双缓冲透明加密文件系统加密与防御体系安全技术的研究[J].网络安全技术与应用,2016(4):37-38.

猜你喜欢
应用分析
互联网技术在广播电视领域的应用与探究
绿色建筑煤矸石资源化利用新技术的应用分析
绿色化学理念下的初中化学教学探究
试析机电一体化系统在机械工程中的应用