[发明专利]基于Linux系统的软件安全防护方法无效
申请号: | 201210228806.7 | 申请日: | 2012-07-04 |
公开(公告)号: | CN103065082A | 公开(公告)日: | 2013-04-24 |
发明(设计)人: | 苏均生;李逊 | 申请(专利权)人: | 北京京航计算通讯研究所 |
主分类号: | G06F21/52 | 分类号: | G06F21/52 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100074*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 linux 系统 软件 安全 防护 方法 | ||
1.一种基于Linux系统的软件安全防护方法,包括如下步骤:
(1)在虚拟文件系统和物理文件系统之间生成安全文件模块,并建立文件管理服务;
(2)安装相应的硬件驱动并进行初始化,通过硬件驱动与加密卡进行通信,分配硬件资源;
(3)通信正常后,加载安全文件模块,对被保护的目录或文件类型进行分类过滤与文件加解密处理;预先定义好待加密的目录或者文件类型,在执行加解密过程中,对已定义的文件进行加解密、对未定义的文件不处理。
2.如权利要求1所述的一种基于Linux系统的软件安全防护方法,其特征在于:所述安全文件模块使用虚拟文件系统VFS进行文件管理,VFS的对象是一个结构体,包括超级对象块、索引节点对象、目录项对象、文件对象,及指向操作其父对象的函数指针,通过继承使用VFS的通用函数。
3.如权利要求1或2所述的一种基于Linux系统的软件安全防护方法,其特征在于:所述对文件进行加解密时,采用密钥分级管理方法:把密钥分为主密钥、二级密钥两级;主密钥以随机系统时间做种子,保存在硬件加密卡密码芯片的屏蔽区域中;使用主密钥对工作密钥加密生成二级密钥;工作密钥种子由随机真数发生器产生,随机真数发生器固化到密码芯片中,对每个加密文件分别由密钥种子进行SHA1运算产生一个工作密钥。
4.如权利要求3所述的一种基于Linux系统的软件安全防护方法,其特征在于:所述文件加密保护时,使用工作密钥结合SM1算法对文件进行加密形成加密文件主体,主密钥通过AES算法对工作密钥加密生成二级密钥,存储在文件头部,成为加密文件的一部分;
文件解密时,取出文件头部分的二级密钥,使用主密钥结合AES对其解密,得到工作密钥;再对加密文件主体部分解密,得到源文件。
5.如权利要求4所述的一种基于Linux系统的软件安全防护方法,其特征在于:建立隐藏分区,并在隐藏分区中存储安全策略;读处理时,安全文件模块拦截到读磁盘请求后,检查访问的进程是否允许访问加密文件,如果不允许,直接放行;通过文件尾部的加密位判断该文件是否已经被加密,如果该文件没有被加密,那么直接放行;否则重新构造请求数据包,读取指定长度的数据内容,并且对数据进行解密,返回给原来的请求数据包;
写处理时,安全文件模块拦截到写磁盘操作后,根据安全策略判断该文件是不是需要加密保存,如果需要加密,则对数据进行加密,并写入磁盘。
6.如权利要求4所述的一种基于Linux系统的软件安全防护方法,其特征在于:采用密文和明文双缓冲方法:一个加密文件设有两种页面缓冲数据,一种页面缓冲数据是明文,另一种加密数据是密文;内核模块判断进程是否允许访问明文数据,如果允许,则访问明文缓冲,否则只访问密文缓冲。
7.如权利要求6所述的一种基于Linux系统的软件安全防护方法,其特征在于:采用文件完整性校验方法:如果文件被定义为可信资源,对其进行完整性保护;如果文件损坏,系统自动对其数据进行恢复;在数据恢复过程中,资源备份和资源SHA1散列数据一一对应,存储在磁盘隐藏分区中;在访问可信资源之前,比较SHA1数据,如果不匹配,那么将资源从隐藏分区中恢复。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京航计算通讯研究所,未经北京京航计算通讯研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210228806.7/1.html,转载请声明来源钻瓜专利网。