CN105373744A - 基于Linux的扩展文件***加密方法 - Google Patents
基于Linux的扩展文件***加密方法 Download PDFInfo
- Publication number
- CN105373744A CN105373744A CN201510724615.3A CN201510724615A CN105373744A CN 105373744 A CN105373744 A CN 105373744A CN 201510724615 A CN201510724615 A CN 201510724615A CN 105373744 A CN105373744 A CN 105373744A
- Authority
- CN
- China
- Prior art keywords
- encryption
- key
- user
- file system
- linux
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6281—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database at program execution time, where the protection is within the operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于Linux的扩展文件***加密方法,加密设置工具在用户态运行,提供策略设置工具和密钥管理工具;内核模块按照算法策略,在文件***底层执行加解密操作;所述加密设置工具运行时与内核模块的key模块建立临时会话。与现有技术相比,本发明的积极效果是:直接与扩展文件***对接,加解密操作在Linux内核层完成,加密过程完全对用户态透明,用户不关心加解密过程,操作过程与普通文件完全一致;“国密算法”(SM1\SM2\SM3\SM4)接口配置;文件名和文件内容均进行加密操作;密钥存储于内核密钥环,非持有用户不可见(包括root用户);组件少、空间开销小、可移植性强,通用或嵌入式***均适用。
Description
技术领域
本发明属于信息安全技术领域,具体涉及一种基于Linux的扩展文件***加密方法,采用特定算法在文件***层面对路径或单个文件进行加密操作,对用户重要信息进行保护。
背景技术
文件加密是指,以某种特殊的算法改变原有的信息数据,使未经授权的用户无法获取文件信息,保护用户的重要数据。文件加密技术应考虑加密软件的稳定性、安全性和方便性。常用加密实现方式有:
数据库加密,对库后台存储数据进行加密保护,技术包括视图触发器、预解密处理以及密文索引技术。
工具加密,使用应用软件对指定路径和文件进行加解密,操作流程全部在应用层完成。
驱动加密,调用驱动模块在内核层面对指定路径和文件进行加解密。
国密算法,即国家密码局认定的国产密码算法,也叫商用密码(SM)。目前成熟在用的有SM1、SM2、SM3和SM4,最新为SM9。主要应用于企业内部敏感数据的传输、存储进行加密保护,防止信息被非法获取,广泛应用于各类安全认证、网上银行和数字签名等。
目前基于Linux的扩展文件***加密,比较常见的是dm-crypt技术。该技术速度快,适用面广,能运行于各种块设备之上。主要使用dm-crypt与快设备(或区)进行关联,对用户在挂载点内编辑的内容进行加密操作,块设备中的内容需要获取密钥后才能解读。但该技术目前只支持AES等通用算法,无法使用国密算法,并且在架构上没有对硬件加密进行扩展。
发明内容
为了克服现有技术的上述缺点,本发明提供了一种基于Linux的扩展文件***加密方法,采用驱动加密方式,用户运行应用软件设置密钥和加密方式,通过信号量传递至内核层中的加密模块,模块配置加解密算法。并通过扩展文件***(EXT)的节点映射,对其物理存储页面进行加解密操作。
本发明解决其技术问题所采用的技术方案是:一种基于Linux的扩展文件***加密方法,加密设置工具在用户态运行,提供策略设置工具和密钥管理工具;内核模块按照算法策略,在文件***底层执行加解密操作;所述加密设置工具运行时与内核模块的key模块建立临时会话。
与现有技术相比,本发明的积极效果是:
1、直接与扩展文件***对接,加解密操作在Linux内核层完成。
加密过程完全对用户态透明,用户不关心加解密过程,操作过程与普通文件完全一致。
2、“国密算法”(SM1\SM2\SM3\SM4)接口配置。
使用国密算法加密芯片,加密过程更具效率和安全性,适用于有国密要求的应用场景。另外,接口可配置内核软算法,适配无加密卡平台。
3、文件名和文件内容均进行加密操作。
保护区内,文件名用HASH(哈希值)表示,文件内容以密文形式保存在物理页上,无权限用户无法获取文件名或文件信息。在内核态中实现对文件的安全保护。
4、密钥存储于内核密钥环,非持有用户不可见(包括root用户)。
5、组件少、空间开销小、可移植性强,通用或嵌入式***均适用。
附图说明
本发明将通过例子并参照附图的方式说明,其中:
图1是本发明的文件名的加密示意图;
图2是本发明的文件内容的加解密示意图。
具体实施方式
本发明包括两部分内容:
1、加密设置工具:在用户态运行,提供策略设置和密钥管理工具。
策略设置工具根据用户输入,创建加密的路径或文件,并与指定的密钥进行绑定。
密钥管理工具,用于导入、更新、查询和销毁密钥。
工具运行时会与内核的key模块(/proc/keys)建立临时会话。
2、e4crypt内核模块。
按照算法策略,在文件***底层执行加解密操作,使用了临时页面和读回调技术,分别对物理页中密文进行加密和解密操作。
以下是本发明方法的详细介绍:
一种基于Linux的扩展文件***加密方法,如图1和图2所示,具体包括如下内容:
2-1.密钥管理工具
本专利中,对密钥存放添加了安全性设计,用户密钥只能存放在内核中。管理密钥的模块为内核密钥环(security-keyring),密钥环本质上是一个循环链表。管理接口进行了封装,用户只能使用密钥管理工具存取密钥,且只能查看自己创建的密钥。
2-2.策略设置工具
记录用户的密钥、加密算法和文件名。设置完成后,工具将把密钥环,加密算法和文件名进行绑定,同时将结果传递给内核。当持有密钥的用户对绑定文件进行编辑时,内核将命中关联的策略,在读写回调中进行加解密操作。该设计,使本专利在策略上更具备灵活性,用户可采用多种密码算法对文件进行加密处理。
3-3、持有密钥用户和普通用户访问文件:
(1)持有密钥的用户进入文件夹,创建或访问文件名、对文件内容进行读写操作:
用户创建文件名并加密后,内核根据绑定的策略,对文件名加密后保存至磁盘,并将加密的文件名映射到文件节点索引区。写文件到物理区时,内核模块先创建临时加密区,使用关联的密钥和算法加密文件信息,密文写入物理页。写操作完成后内核销毁临时区。
用户访问文件名时,内核命中绑定策略,使用关联的密码算法对磁盘文件名和索引域文件名解密。从物理区读文件时,读回调使用关联的密钥和算法,提取物理页上的密文解密,并返回明文信息至用户层。
(2)普通用户读写操作:
由于普通用户不持有该文件绑定的密钥,因此内核不会命中任何已有策略,不能访问该文件内容,内核仅返回加密后的文件名(直接在磁盘或索引区读取已加密的文件名)。
该设计对用户层完全透明,并且与权限管理完全分离。通过密钥、算法和文件的绑定机制,保证加密文件仅由持有密钥的用户访问。
Claims (6)
1.一种基于Linux的扩展文件***加密方法,其特征在于:加密设置工具在用户态运行,提供策略设置工具和密钥管理工具;内核模块按照算法策略,在文件***底层执行加解密操作;所述加密设置工具运行时与内核模块的key模块建立临时会话。
2.根据权利要求1所述的基于Linux的扩展文件***加密方法,其特征在于:所述策略设置工具根据用户输入,创建加密的路径或文件,并与指定的密钥进行绑定;所述密钥管理工具用于导入、更新、查询和销毁密钥。
3.根据权利要求2所述的基于Linux的扩展文件***加密方法,其特征在于:持有密钥的用户创建文件名并加密后,内核模块根据绑定的策略,对文件名加密后保存至磁盘,并将加密的文件名映射到文件节点索引区。
4.根据权利要求3所述的基于Linux的扩展文件***加密方法,其特征在于:持有密钥的用户写文件到物理区时,内核模块先创建临时加密区,使用关联的密钥和算法加密文件信息,密文写入物理页,写操作完成后内核销毁临时区。
5.根据权利要求3所述的基于Linux的扩展文件***加密方法,其特征在于:持有密钥的用户访问文件名时,内核模块命中绑定策略,使用关联的密码算法对磁盘文件名和索引域文件名解密;从物理区读文件时,读回调使用关联的密钥和算法,提取物理页上的密文解密,并返回明文信息至用户层。
6.根据权利要求2所述的基于Linux的扩展文件***加密方法,其特征在于:没有密钥的用户进行读写操作时,内核模块不会命中任何已有策略,不能访问该文件内容,仅返回加密后的文件名。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510724615.3A CN105373744A (zh) | 2015-10-29 | 2015-10-29 | 基于Linux的扩展文件***加密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510724615.3A CN105373744A (zh) | 2015-10-29 | 2015-10-29 | 基于Linux的扩展文件***加密方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105373744A true CN105373744A (zh) | 2016-03-02 |
Family
ID=55375932
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510724615.3A Pending CN105373744A (zh) | 2015-10-29 | 2015-10-29 | 基于Linux的扩展文件***加密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105373744A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106355097A (zh) * | 2016-08-30 | 2017-01-25 | 北京壹人壹本信息科技有限公司 | 一种在Linux操作***中进行加解密的方法及*** |
CN112528269A (zh) * | 2021-02-08 | 2021-03-19 | 北京全息智信科技有限公司 | 一种实现内核密码机的方法、装置和电子设备 |
CN113468112A (zh) * | 2021-09-02 | 2021-10-01 | 武汉华工安鼎信息技术有限责任公司 | 文件管理方法、装置、存储介质及计算机设备 |
CN113505377A (zh) * | 2021-05-25 | 2021-10-15 | 重庆沄析工业互联网有限公司 | 一种基于软件框架集成国密sm4数据加解密技术的方法 |
CN113536369A (zh) * | 2021-06-29 | 2021-10-22 | 上海浩霖汇信息科技有限公司 | 一种电子文件实时透明存储加解密方法、***以及相关产品 |
CN113722736A (zh) * | 2021-09-01 | 2021-11-30 | 斑马网络技术有限公司 | 应用文件的访问隔离方法、电子设备及可读存储介质 |
WO2022000223A1 (zh) * | 2020-06-30 | 2022-01-06 | 浙江大学 | 一种基于定制硬件安全属性的内核敏感数据保护方法 |
CN114943091A (zh) * | 2022-07-27 | 2022-08-26 | 成都中科合迅科技有限公司 | 基于linux内核块设备加密功能的Elasticsearch加密搜索方法 |
CN115146298A (zh) * | 2022-09-05 | 2022-10-04 | 三未信安科技股份有限公司 | 一种敏感文件保护方法和装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100185852A1 (en) * | 2007-07-05 | 2010-07-22 | Hitachi Software Engineering Co., Ltd. | Encryption and decryption method for shared encrypted file |
CN103294958A (zh) * | 2013-05-21 | 2013-09-11 | 中国人民解放军国防科学技术大学 | 面向类Linux***的内核级虚拟聚合并行加密方法 |
CN103605927A (zh) * | 2013-11-08 | 2014-02-26 | 深圳市道通科技有限公司 | 一种基于嵌入式Linux***实现加密和解密方法 |
CN103646206A (zh) * | 2013-12-24 | 2014-03-19 | 北京可信华泰信息技术有限公司 | 一种兼容不同密码设备的访问方法 |
CN104156672A (zh) * | 2014-08-06 | 2014-11-19 | 厦门天锐科技有限公司 | 基于linux的数据加密保护方法及*** |
CN104252605A (zh) * | 2014-09-17 | 2014-12-31 | 南京信息工程大学 | 一种Android平台的文件透明加解密***及方法 |
CN104331644A (zh) * | 2014-11-24 | 2015-02-04 | 北京邮电大学 | 一种智能终端文件的透明加解密方法 |
CN104866778A (zh) * | 2015-01-30 | 2015-08-26 | 武汉华工安鼎信息技术有限责任公司 | 一种基于Linux内核的文档安全访问控制方法和装置 |
-
2015
- 2015-10-29 CN CN201510724615.3A patent/CN105373744A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100185852A1 (en) * | 2007-07-05 | 2010-07-22 | Hitachi Software Engineering Co., Ltd. | Encryption and decryption method for shared encrypted file |
CN103294958A (zh) * | 2013-05-21 | 2013-09-11 | 中国人民解放军国防科学技术大学 | 面向类Linux***的内核级虚拟聚合并行加密方法 |
CN103605927A (zh) * | 2013-11-08 | 2014-02-26 | 深圳市道通科技有限公司 | 一种基于嵌入式Linux***实现加密和解密方法 |
CN103646206A (zh) * | 2013-12-24 | 2014-03-19 | 北京可信华泰信息技术有限公司 | 一种兼容不同密码设备的访问方法 |
CN104156672A (zh) * | 2014-08-06 | 2014-11-19 | 厦门天锐科技有限公司 | 基于linux的数据加密保护方法及*** |
CN104252605A (zh) * | 2014-09-17 | 2014-12-31 | 南京信息工程大学 | 一种Android平台的文件透明加解密***及方法 |
CN104331644A (zh) * | 2014-11-24 | 2015-02-04 | 北京邮电大学 | 一种智能终端文件的透明加解密方法 |
CN104866778A (zh) * | 2015-01-30 | 2015-08-26 | 武汉华工安鼎信息技术有限责任公司 | 一种基于Linux内核的文档安全访问控制方法和装置 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106355097A (zh) * | 2016-08-30 | 2017-01-25 | 北京壹人壹本信息科技有限公司 | 一种在Linux操作***中进行加解密的方法及*** |
WO2022000223A1 (zh) * | 2020-06-30 | 2022-01-06 | 浙江大学 | 一种基于定制硬件安全属性的内核敏感数据保护方法 |
CN112528269A (zh) * | 2021-02-08 | 2021-03-19 | 北京全息智信科技有限公司 | 一种实现内核密码机的方法、装置和电子设备 |
CN112528269B (zh) * | 2021-02-08 | 2021-06-01 | 北京全息智信科技有限公司 | 一种实现内核密码机的方法、装置和电子设备 |
CN113505377A (zh) * | 2021-05-25 | 2021-10-15 | 重庆沄析工业互联网有限公司 | 一种基于软件框架集成国密sm4数据加解密技术的方法 |
CN113536369A (zh) * | 2021-06-29 | 2021-10-22 | 上海浩霖汇信息科技有限公司 | 一种电子文件实时透明存储加解密方法、***以及相关产品 |
CN113722736A (zh) * | 2021-09-01 | 2021-11-30 | 斑马网络技术有限公司 | 应用文件的访问隔离方法、电子设备及可读存储介质 |
CN113468112A (zh) * | 2021-09-02 | 2021-10-01 | 武汉华工安鼎信息技术有限责任公司 | 文件管理方法、装置、存储介质及计算机设备 |
CN114943091A (zh) * | 2022-07-27 | 2022-08-26 | 成都中科合迅科技有限公司 | 基于linux内核块设备加密功能的Elasticsearch加密搜索方法 |
CN114943091B (zh) * | 2022-07-27 | 2022-10-11 | 成都中科合迅科技有限公司 | 基于linux内核块设备加密功能的Elasticsearch加密搜索方法 |
CN115146298A (zh) * | 2022-09-05 | 2022-10-04 | 三未信安科技股份有限公司 | 一种敏感文件保护方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
LU101903B1 (en) | System and method for storing and accessing private data of Hyperledger Fabric blockchain | |
CN105373744A (zh) | 基于Linux的扩展文件***加密方法 | |
JP6609010B2 (ja) | 複数許可データセキュリティ及びアクセス | |
CN102402664B (zh) | 数据访问控制装置和数据访问控制方法 | |
CN103106372B (zh) | 用于Android***的轻量级隐私数据加密方法及*** | |
EP2696305B1 (en) | Method and device for file protection | |
US20140281520A1 (en) | Secure cloud data sharing | |
US20030208686A1 (en) | Method of data protection | |
CN104951409A (zh) | 一种基于硬件的全盘加密***及加密方法 | |
US20140143553A1 (en) | Method and Apparatus for Encapsulating and Encrypting Files in Computer Device | |
US20150242332A1 (en) | Self-encrypting flash drive | |
CN102567688B (zh) | 一种安卓操作***上的文件保密***及其保密方法 | |
CN108133151B (zh) | 文件加密装置、文件处理方法及移动终端设备 | |
CN103294961A (zh) | 一种文件加/解密方法以及文件加/解密装置 | |
CN103530570A (zh) | 一种电子文档安全管理***及方法 | |
JP2005332399A5 (zh) | ||
CN103955654A (zh) | 基于虚拟文件***的u盘安全存储方法 | |
US11017110B1 (en) | Enhanced securing of data at rest | |
CN103559453A (zh) | 一种手机数据硬件加密保护方法和*** | |
KR20220039779A (ko) | 강화된 보안 암호화 및 복호화 시스템 | |
CN111079188A (zh) | mybatis字段加密解密装置及加密解密*** | |
CN103458101B (zh) | 一种手机私密联系人的硬件加密存储方法及*** | |
CN103379133A (zh) | 一种安全可信的云存储*** | |
US9697372B2 (en) | Methods and apparatuses for securing tethered data | |
CN103207976A (zh) | 移动存储文件防泄密方法及基于该方法的保密u盘 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160302 |