CN104268489A - 一种基于device mapper的加密卡性能优化的方法 - Google Patents

一种基于device mapper的加密卡性能优化的方法 Download PDF

Info

Publication number
CN104268489A
CN104268489A CN201410502219.1A CN201410502219A CN104268489A CN 104268489 A CN104268489 A CN 104268489A CN 201410502219 A CN201410502219 A CN 201410502219A CN 104268489 A CN104268489 A CN 104268489A
Authority
CN
China
Prior art keywords
encryption
encrypted card
block
performance optimization
card
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
Application number
CN201410502219.1A
Other languages
English (en)
Inventor
施培任
边泽明
张彦哲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Electronic Information Industry Co Ltd
Original Assignee
Inspur Electronic Information Industry Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Inspur Electronic Information Industry Co Ltd filed Critical Inspur Electronic Information Industry Co Ltd
Priority to CN201410502219.1A priority Critical patent/CN104268489A/zh
Publication of CN104268489A publication Critical patent/CN104268489A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/80Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in storage media based on magnetic or optical technology, e.g. disks with sectors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2107File encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供一种基于DEVICE MAPPER的加密卡性能优化的方法,加密卡的API整合到DeviceMapper这个通用块设备内核框架中,实现适用于加密卡的dm-crypt加密块设备模块,进而可以创建加密文件系统,在磁盘存储级别对机密数据进行保护;加密块设备模块为国产加密算法sm1的同步块加密和异步块加密两种方式,并提供了sm1算法注册到内核密码管理器的方法。本发明的一种基于DEVICE MAPPER的加密卡性能优化的方法和现有技术相比,通过多卡之间的并行来实现速度的提升;在系统的资源利用率方面主要是改变原有的加密卡工作方式,变死等方式为异步工作模式,大量节省cpu时间。

Description

一种基于DEVICE MAPPER的加密卡性能优化的方法
技术领域
本发明涉及计算机存储技术领域,具体地说是一种基于DEVICE MAPPER的加密卡性能优化的方法。
背景技术
透明加密技术是近年来针对企业文件保密需求应运而生的一种文件加密技术。所谓透明,是指对使用者来说是未知的。当使用者在打开或编辑指定文件时,系统将自动对未加密的文件进行加密,对已加密的文件自动解密。文件在硬盘上是密文,在内存中是明文。一旦离开使用环境,由于应用程序无法得到自动解密的服务而无法打开,从而起来保护文件内容的效果。
为了对磁盘上存储的数据进行加密,需要选定健壮而且安全的加密算法,加密算法是一些公式和法则,它规定了明文和密文之间的变换方法。传统的国际通用的一些加密算法包括DES,RSA,AES等等,但是我国出于安全性的考虑,自行开发商用国密算法,对具有敏感性的内部信息、行政事务信息、经济信息等进行加密保护。
但是,这些国密算法大都以IP核的形式存在于硬件加密卡的芯片中,对如何使用这些加密卡的API接口,在传统的块设备驱动的哪一个层次加入加密模块以及使用什么样的方式调用加密模块的接口提出了挑战。
除此之外,加密卡的性能和磁盘的性能之间的瓶颈问题也一直是开发安全的存储系统所需要面对的问题。如何在加密卡既定的性能极限基础上提高其处理速度成为了一个非常有意义的课题。
发明内容
本发明的目的是克服现有技术中存在的不足,提供一种基于DEVICE MAPPER的加密卡性能优化的方法。
本发明的技术方案是按以下方式实现的,其结构中加密卡的API整合到Device Mapper这个通用块设备内核框架中,实现适用于加密卡的dm-crypt加密块设备模块,进而可以创建加密文件系统,在磁盘存储级别对机密数据进行保护;
加密块设备模块为国产加密算法sm1的同步块加密和异步块加密两种方式,并提供了sm1算法注册到内核密码管理器的方法。
通过在Device Mapper内核体系结构中添加适用于加密卡驱动工作的模块解决块设备驱动架构调度加密卡加解密接口的问题,并提供了同步和异步的工作方式,提供了包括SSF33,SSF28,SCB2多种加密算法。
在加密卡的驱动代码中实现了添加密码算法到内核的密码管理器的方法。
本发明的优点是:
本发明的一种基于DEVICE MAPPER的加密卡性能优化的方法和现有技术相比,通过多卡之间的并行来实现速度的提升;在系统的资源利用率方面主要是改变原有的加密卡工作方式,变死等方式为异步工作模式,大量节省cpu时间,而且本发明具有设计合理、结构简单、使用方便等特点,因而,具有很好的使用价值。
附图说明
图1为总体架构说明图。
图2为加密模块说明类图。
图3为访问映射设备说明图。
图4为加密卡并行工作示意图。
具体实施方式
下面结合附图对本发明的一种基于DEVICE MAPPER的加密卡性能优化的方法作以下详细说明。
如图1-4所示,本发明的一种基于DEVICE MAPPER的加密卡性能优化的方法,其结构中加密卡的API整合到Device Mapper这个通用块设备内核框架中,实现适用于加密卡的dm-crypt加密块设备模块,进而可以创建加密文件系统,在磁盘存储级别对机密数据进行保护;
加密块设备模块为国产加密算法sm1的同步块加密和异步块加密两种方式,并提供了sm1算法注册到内核密码管理器的方法。
通过在Device Mapper内核体系结构中添加适用于加密卡驱动工作的模块解决块设备驱动架构调度加密卡加解密接口的问题,并提供了同步和异步的工作方式,提供了包括SSF33,SSF28,SCB2多种加密算法。
在加密卡的驱动代码中实现了添加密码算法到内核的密码管理器的方法。
如图1所示,IO数据加密架构图中包括了7个不同的分层模块,分别是SCSI-INITIATOR,SCSI-TARGET,ICM,DM,RAID,VDISK,DISK,分别负责了SCSI初始化,SCSI传输协议,IO缓存和镜像,逻辑卷管理(实现存储分区),磁盘阵列的冗余可靠信管理等等,我们主要是在DM设备映射层进行改造,实现sm1加密算法的调用。
我们在非加密卷IO流程中加入Device Mapper框架中的crypt类型的加密设备,并映射出来相应的哈希算法、加密算法。我们所需要的sm1算法就包含在其中。
我们采用的策略是:
(1)在块设备层间加一层块设备用于加密/解密,重新申请bio 及其page,以隔离上层明文数据;
(2)考虑到加密范围的粒度,且目前内核已有dm-crypt 模块支持加密,它使用内核数据加密框架,该框架支持多种加密算法并可按模块添加。
采用这种策略的特点是:
(1)上下层数据缓存不共享,避免明文和密文共用缓存区引起的潜在的重复加密/解密从而得到错误数据等缺陷;
(2)复制bio 需要申请相同数量的page,即需要更多内存;
(3)该层采用队列的方式接收异步bio 请求,可实现更大并发(若加密模块支持);
(4)该方式不能对LV,RAID 元数据进行加密;
(5)由于是增加虚拟块设备层使用通用make_request 接口提交请求,耦合度低。
Crypt设备接受上层ICM下发的bio请求,加入到工作队列中异步处理,工作队列通过复制和申请新的bio和bv_page,调用crypto模块的接口进行加密解密操作,将上层明文数据和下层密文数据相隔离
具体的调用关系类图如图2所示,其中dm-crypt 实现DM架构的target模型,提供crypt 设备的创建、读写请求处理、删除等操作,crypto则向应用者提供加密算法分配、设置、加密和解密接口和功能,后端则按照crypto_alg模型调用具体加密算法的设置密钥、加密、解密等接口。
经过改造的Device Mapper设备访问如图3所示,原有的bio经过映射块层,我们需要在这一层中调用加密卡的接口,所以需要把bio经过重定向到硬件中经过一定的加密/解密处理得到的结果再进一步向下或向上层传输(对应读/写操作)。
所有正常传输的数据经过重新定向经过硬件加密卡中进行处理,加密卡的性能必然对系统的性能造成一定的影响,如果加密卡的吞吐量小于系统的原有的吞吐量,那么单加密卡的限制必然会造成系统的性能瓶颈,针对这一问题我们可以更换性能更高的加密卡,但是单个加密卡的性能往往不够实际的需求,所以我们提出了一种多卡并行的模型,让多个加密卡协同并行的工作来达到一定的性能需求,从而不会影响原有的磁盘吞吐量。具体的方法可参照如图4所示。
在实际的加密卡性能测试的过程中,我们还发现在既有的驱动中采用了ndelay()函数原子等待DMA中断,该等待方式会大量消耗浪费CPU,造成计算资源的浪费,为此我们开发了适用于加密卡异步工作的加密算法调用的模式,在大量数据传输过程中,使得cpu的利用率从30~40%下降到10~20%。
本发明的一种基于DEVICE MAPPER的加密卡性能优化的方法其加工制作非常简单方便,按照说明书附图所示即可加工。
除说明书所述的技术特征外,均为本专业技术人员的已知技术。

Claims (3)

1.一种基于DEVICE MAPPER的加密卡性能优化的方法,其特征在于加密卡的API整合到Device Mapper这个通用块设备内核框架中,实现适用于加密卡的dm-crypt加密块设备模块,进而可以创建加密文件系统,在磁盘存储级别对机密数据进行保护;
加密块设备模块为国产加密算法sm1的同步块加密和异步块加密两种方式,并提供了sm1算法注册到内核密码管理器的方法。
2.根据权利要求1所述的一种基于DEVICE MAPPER的加密卡性能优化的方法,其特征在于通过在Device Mapper内核体系结构中添加适用于加密卡驱动工作的模块解决块设备驱动架构调度加密卡加解密接口的问题,并提供了同步和异步的工作方式,提供了包括SSF33,SSF28,SCB2多种加密算法。
3.根据权利要求1所述的一种基于DEVICE MAPPER的加密卡性能优化的方法,其特征在于在加密卡的驱动代码中实现了添加密码算法到内核的密码管理器的方法。
CN201410502219.1A 2014-09-26 2014-09-26 一种基于device mapper的加密卡性能优化的方法 Pending CN104268489A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410502219.1A CN104268489A (zh) 2014-09-26 2014-09-26 一种基于device mapper的加密卡性能优化的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410502219.1A CN104268489A (zh) 2014-09-26 2014-09-26 一种基于device mapper的加密卡性能优化的方法

Publications (1)

Publication Number Publication Date
CN104268489A true CN104268489A (zh) 2015-01-07

Family

ID=52160009

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410502219.1A Pending CN104268489A (zh) 2014-09-26 2014-09-26 一种基于device mapper的加密卡性能优化的方法

Country Status (1)

Country Link
CN (1) CN104268489A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104615941A (zh) * 2015-01-29 2015-05-13 华为技术有限公司 Android用户分区的快速加密方法、装置和终端设备
CN109190386A (zh) * 2018-04-04 2019-01-11 中国电子科技网络信息安全有限公司 基于Device Mapper的容器镜像分层加密存储方法
CN113468563A (zh) * 2021-06-24 2021-10-01 曙光信息产业股份有限公司 虚拟机数据加密方法、装置、计算机设备和存储介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104615941A (zh) * 2015-01-29 2015-05-13 华为技术有限公司 Android用户分区的快速加密方法、装置和终端设备
CN109190386A (zh) * 2018-04-04 2019-01-11 中国电子科技网络信息安全有限公司 基于Device Mapper的容器镜像分层加密存储方法
CN109190386B (zh) * 2018-04-04 2021-11-12 中国电子科技网络信息安全有限公司 基于Device Mapper的容器镜像分层加密存储方法
CN113468563A (zh) * 2021-06-24 2021-10-01 曙光信息产业股份有限公司 虚拟机数据加密方法、装置、计算机设备和存储介质

Similar Documents

Publication Publication Date Title
AU2013226133B2 (en) Using storage controller bus interfaces to secure data transfer between storage devices and hosts
CA2868766C (en) Systems and methods for secure third-party data storage
US7908476B2 (en) Virtualization of file system encryption
TWI620093B (zh) 用於保全電腦大容量儲存資料的方法和裝置
CN110618947A (zh) 用于利用存储器加密引擎的安全i/o的技术
US10372628B2 (en) Cross-domain security in cryptographically partitioned cloud
TW201723918A (zh) 安全子系統
WO2017206754A1 (zh) 分布式文件系统的存储方法和存储装置
CN101877246A (zh) 加密u盘实现方法
US11531626B2 (en) System and method to protect digital content on external storage
CN104268489A (zh) 一种基于device mapper的加密卡性能优化的方法
US8738935B1 (en) Verified erasure of data implemented on distributed systems
CN104123371A (zh) 基于分层文件系统的Windows内核文件透明过滤的方法
CN108563603B (zh) 一种基于uasp协议的高效数据加密设备
CN202041958U (zh) 一种支持sata接口的加密卡
CN102467625B (zh) 一种数据保护方法、装置及系统
CN104298473A (zh) 一种虚拟磁盘与虚拟机嵌套实现计算虚拟化的方法与设备
CN105844167A (zh) 一种虚拟加密卷与虚拟应用嵌套的虚拟化的方法与设备
US10277565B2 (en) Enterprise service bus logging
EP4350557A1 (en) Data storage method and apparatus, device, and readable storage medium
US11722299B1 (en) Spatially-bound cryptographic storage
Ma et al. Implementing efficient management and security of removable storage by FVM
Khashan et al. Dynamic Multimedia Encryption Using a Parallel File System Based on Multi-Core Processors. Cryptography 2023, 7, 12
Ningxia et al. Study on Trusted Vitual Machine Platform Based on Cipher Card
TW201418999A (zh) 資料存取的方法及雲端伺服器系統

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20150107

WD01 Invention patent application deemed withdrawn after publication