CN116070295B - 数据处理系统 - Google Patents

数据处理系统 Download PDF

Info

Publication number
CN116070295B
CN116070295B CN202310194763.3A CN202310194763A CN116070295B CN 116070295 B CN116070295 B CN 116070295B CN 202310194763 A CN202310194763 A CN 202310194763A CN 116070295 B CN116070295 B CN 116070295B
Authority
CN
China
Prior art keywords
data
decrypted
encrypted
sector
data processing
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.)
Active
Application number
CN202310194763.3A
Other languages
English (en)
Other versions
CN116070295A (zh
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.)
Saixin Semiconductor Technology Beijing Co ltd
Original Assignee
Saixin Semiconductor Technology Beijing 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 Saixin Semiconductor Technology Beijing Co ltd filed Critical Saixin Semiconductor Technology Beijing Co ltd
Priority to CN202310194763.3A priority Critical patent/CN116070295B/zh
Publication of CN116070295A publication Critical patent/CN116070295A/zh
Application granted granted Critical
Publication of CN116070295B publication Critical patent/CN116070295B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0676Magnetic disk device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本申请提供了一种数据处理系统,该数据处理系统包括:主机,主机包括磁盘;数据处理装置,数据处理装置包括数据处理模块,数据处理模块与磁盘通信连接,数据处理模块用于将来自磁盘的待解密数据解密成明文数据,且用于将待加密数据加密成密文数据并将密文数据写入磁盘。该数据处理系统解决了现有技术中采用主机内的CPU加解密数据导致CPU负载过重的问题。

Description

数据处理系统
技术领域
本申请涉及计算机技术领域,具体而言,涉及一种数据处理系统。
背景技术
随着信息技术和大数据技术的发展,越来越多的敏感数据储存在诸如硬盘、网盘、数据中心网络存储系统中,这些敏感数据如果以明文数据形式存储,一旦丢失,对个人、公司和社会都会带来极大的损失,因此,目前这些敏感数据一般是以密文数据的形式存储。
磁盘加解密存储原理:计算机文件和分区表等信息是以扇区块为基本单位,存放在硬盘、U盘或其他各类存储设备中,利用有关数学加密算法,在数据写入磁盘前,先进行加密处理,然后再写入磁盘的对应扇区中,这样磁盘里的数据就以密文的形式存在,读取时,扇区块先做解密处理,再提供给主机的应用层的相关应用使用。
目前磁盘加解密存储技术的缺陷如下:
降低系统I/O性能(I/O Performance,输入输出性能):由于在数据写入和数据读出前增加了额外的加解密运算,所以会降低系统的I/O性能。
增加CPU(Central Processing Unit,中央处理器)处理负载:随着SSD(SolidState Disk,固态硬盘)等高速磁盘的应用,特别的在数据中心的应用场景下,多用户、多磁盘、高并发的使用情况下,CPU负载增加情况严重,当前加解密运算由软件实现,加解密运算主要由CPU完成,这会进一步给CPU带来额外的负载。
发明内容
本申请的主要目的在于提供一种数据处理系统,以至少解决现有技术中采用主机内的CPU加解密数据导致CPU负载过重的问题。
为了实现上述目的,根据本申请的一个方面,提供了一种数据处理系统,所述数据处理系统包括:主机,所述主机包括磁盘;数据处理装置,所述数据处理装置包括数据处理模块,所述数据处理模块与所述磁盘通信连接,所述数据处理模块用于将来自所述磁盘的待解密数据解密成明文数据,且用于将待加密数据加密成密文数据并将所述密文数据写入所述磁盘。
可选地,所述主机还包括:应用层,用于发出读数据请求,且用于发出写数据请求;驱动层,所述驱动层的第一接口与所述磁盘的第一接口通信连接;调度层,所述调度层的第一接口与所述应用层的第一接口通信连接,所述调度层的第二接口与所述驱动层的第二接口通信连接,所述调度层的第三接口与所述数据处理模块的第一接口通信连接,所述调度层用于在接收到所述读数据请求的情况下控制所述驱动层从所述磁盘读取所述待解密数据并将所述待解密数据打包成待解密数据包发送至所述数据处理模块,且用于在接收到所述写数据请求的情况下将所述待加密数据打包成待加密数据包并将所述待加密数据包发送至所述数据处理模块。
可选地,所述磁盘包括多个扇区,一个所述扇区用于存储一条所述待解密数据或者用于存储一条所述密文数据,一个所述扇区具有一个扇区号,所述扇区与所述扇区号一一对应,所述待解密数据与所述明文数据一一对应,所述待加密数据与所述加密数据一一对应,一个所述扇区号对应一条所述待解密数据或者对应一条所述密文数据,在接收到所述读数据请求的情况下控制所述驱动层从所述磁盘读取所述待解密数据并将所述待解密数据打包成待解密数据包发送至所述数据处理模块,包括:在接收到所述读数据请求的情况下控制所述驱动层从第一扇区信息对应的所述扇区读取所述待解密数据,所述第一扇区信息为所述待解密数据对应的所述扇区号;将各所述待解密数据、密钥和所述第一扇区信息打包成多个所述待解密数据包,所述待解密数据与所述待解密数据包一一对应;将各所述待解密数据包发送至所述数据处理模块。
可选地,在接收到所述写数据请求的情况下将所述待加密数据打包成待加密数据包并将所述待加密数据包发送至所述数据处理模块,包括:在接收到所述写数据请求的情况下,将各所述待加密数据、所述密钥和第二扇区信息打包成多个所述待加密数据包,所述第二扇区信息为所述待加密数据对应的所述扇区号,所述待加密数据与所述待加密数据包一一对应;将各所述待加密数据包发送至所述数据处理模块。
可选地,所述待解密数据的类型包括第一类型和第二类型,所述第一类型的所述待解密数据包含所述第二类型的所述待解密数据对应的所述扇区号,所述待加密数据的类型包括所述第一类型和所述第二类型,所述第一类型的所述待加密数据包含所述第二类型的所述待加密数据对应的所述扇区号,所述第一类型的所述待解密数据对应的所述扇区号的优先级为第一优先级,所述第二类型的所述待解密数据对应的所述扇区号的优先级为第二优先级,所述第一类型的所述待加密数据对应的所述扇区号的优先级为第一优先级,所述第二类型的所述待加密数据对应的所述扇区号的优先级为第二优先级,所述磁盘包括保留区,所述保留区由多个所述扇区组成,所述保留区用于存储优先级映射关系,所述优先级映射关系为所述扇区号与所述扇区号的优先级的映射关系,将各所述待解密数据包发送至所述数据处理模块,包括:根据各所述待解密数据包的所述第一扇区信息和所述优先级映射关系确定各所述待解密数据包的所述待解密数据对应的所述扇区号的优先级,得到多个第一目标优先级,所述第一目标优先级与所述待解密数据包一一对应;优先将对应的所述第一目标优先级为所述第一优先级的所述待解密数据包发送至所述数据处理模块。
可选地,将各所述待加密数据包发送至所述数据处理模块,包括:根据各所述待加密数据包的所述第二扇区信息和所述优先级映射关系确定各所述待加密数据包的所述待加密数据对应的所述扇区号的优先级,得到多个第二目标优先级,所述第二目标优先级与所述待加密数据包一一对应;优先发送对应的所述第二目标优先级为所述第一优先级的所述待加密数据包至所述数据处理模块。
可选地,一个所述读数据请求对应多条所述待解密数据,在接收到所述读数据请求的情况下控制所述驱动层从所述磁盘读取所述待解密数据并将所述待解密数据打包成待解密数据包发送至所述数据处理模块,包括:在接收到所述读数据请求的情况下,控制所述驱动层从所述磁盘读取多个所述待解密数据;将一组第一目标数据、各所述第一目标数据对应的所述第一扇区信息和所述密钥打包成一个所述待解密数据包,一组所述第一目标数据为一个所述读数据请求对应的所有所述待解密数据中的多条且存储所述第一目标数据的所述扇区的所述扇区号连续。
可选地,一个所述写数据请求对应多条所述待加密数据,在接收到所述写数据请求的情况下将所述待加密数据打包成待加密数据包并将所述待加密数据包发送至所述数据处理模块,包括:在接收到所述写数据请求的情况下,将一组第二目标数据、各所述第二目标数据对应的所述第二扇区信息和所述密钥打包成一个所述待加密数据包,一组所述第二目标数据为一个所述写数据请求对应的所有所述待加密数据中的多条且所述第二目标数据对应的所述扇区号连续。
可选地,所述数据处理模块还包括:解析单元,所述解析单元的第一接口为所述数据处理模块的第一接口,所述解析单元用于获取所述待解密数据包的所述待解密数据、所述密钥和所述第一扇区信息;生成单元,所述生成单元的第一接口与所述解析单元的第二接口通信连接,所述生成单元用于接收来自所述解析单元的所述第一扇区信息并根据所述第一扇区信息生成所述待解密数据的加密调整值;加解密单元,所述加解密单元的第一接口与所述解析单元的第三接口通信连接,所述加解密单元的第二接口与所述生成单元的第二接口通信连接,所述加解密单元的第三接口与所述应用层的第二接口通信连接,所述加解密单元用于接收来自所述解析单元的所述待解密数据和所述密钥且接收来自所述生成单元的所述待解密数据的所述加密调整值,且用于采用XTS-SM4加密算法根据所述密钥和所述待解密数据的所述加密调整值将所述待解密数据解密成所述明文数据,且用于将所述明文数据发送至所述应用层。
可选地,所述加解密单元的第四接口与所述驱动层的第三接口通信连接,所述解析单元还用于获取所述待加密数据包的所述待加密数据、所述密钥和所述第二扇区信息;所述生成单元用于接收来自所述解析单元的所述第二扇区信息并根据所述第二扇区信息生成所述待加密数据的所述加密调整值;所述加解密单元还用于接收来自所述解析单元的所述待加密数据和所述密钥且接收来自所述生成单元的所述待加密数据的所述加密调整值,且用于采用所述XTS-SM4加密算法根据所述密钥和所述待加密数据的所述加密调整值将所述待加密数据加密成所述密文数据,且用于控制所述驱动层将所述密文数据写入所述第二扇区信息对应的所述扇区。
可选地,所述数据处理模块有多个。
应用本申请的技术方案,采用数据处理装置的数据处理模块对从主机的磁盘中读取的待解密数据进行解密处理,且对准备写入主机的磁盘的待加密数据进行加密处理,从而解决了采用主机内的CPU加解密数据导致CPU负载过重的问题。
附图说明
构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1示出了根据本申请的实施例中提供的一种数据处理系统结构框图;
图2示出了根据本申请的实施例提供的一种磁盘格式化方法以及调度方法的流程示意图;
图3示出了根据本申请的实施例提供的一种待解密数据分组打包的示意图;
图4示出了根据本申请的实施例提供的一种待加密数据分组打包的示意图。
其中,上述附图包括以下附图标记:
10、主机;11、磁盘;12、应用层;13、驱动层;14、调度层;20、数据处理装置;30、数据处理模块;31、解析单元;32、生成单元;33、加解密单元。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为了便于描述,以下对本申请实施例涉及的部分名词或术语进行说明:
明文数据,原始的或未加密的数据;
密文数据,明文数据加密后的格式,是加密算法的输出信息;
密钥,是由数字、字母或特殊符号组成的字符串,用于控制数据加密和解密的过程;
I/O性能:单位时间内成功读写数据的数量。
XTS-SM4加密算法,定义了一种可调整的窄式块分组密码(tweakable narrow-block cipher), XTS 被定义为基于 XEX(Xor Encrypt Xor)的密文窃取算法的可调整的密码本模式(Tweakable Codebook mode),该算法主要用于以数据单元(包括扇区、逻辑磁盘块等)为基础结构的存储设备中静止状态数据的加密,XTS-SM4 的公布解决了一系列的安全威胁,并且允许在算法实现上应用并行化和流水线结构。
正如背景技术中所介绍的,现有技术中采用主机内的CPU加解密数据导致CPU负载过重,为解决采用主机内的CPU加解密数据导致CPU负载过重的问题,本申请的实施例提供了一种数据处理系统。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
本申请实施例提供了一种数据处理系统。
图1是根据本申请实施例的数据处理系统的示意图。如图1所示,该数据处理系统包括:
主机10,上述主机包括磁盘11;
数据处理装置20,上述数据处理装置20包括数据处理模块30,上述数据处理模块30与上述磁盘11通信连接,上述数据处理模块30用于将来自上述磁盘11的待解密数据解密成明文数据,且用于将待加密数据加密成密文数据并将上述密文数据写入上述磁盘11。
为了提高磁盘I/O性能,如图1所示,上述数据处理模块30有多个。
本实施例中,数据处理装置包括多处理核心(多数据处理模块),提高了数据加解密并行处理能力,从而提高单位时间内磁盘成功读写数据的数量,即提高磁盘I/O性能。
为了实现主机和数据处理模块之间的数据传输,在一种可选方案中,如图1所示,上述主机10还包括:
应用层12,用于发出读数据请求,且用于发出写数据请求;
驱动层13,上述驱动层13的第一接口与上述磁盘11的第一接口通信连接;
调度层14,上述调度层14的第一接口与上述应用层12的第一接口通信连接,上述调度层14的第二接口与上述驱动层13的第二接口通信连接,上述调度层14的第三接口与上述数据处理模块30的第一接口通信连接,上述调度层14用于在接收到上述读数据请求的情况下控制上述驱动层13从上述磁盘11读取上述待解密数据并将上述待解密数据打包成待解密数据包发送至上述数据处理模块30,且用于在接收到上述写数据请求的情况下将上述待加密数据打包成待加密数据包并将上述待加密数据包发送至上述数据处理模块30。
本实施例中,如图1实线所示,在调度层14接收到来自应用层12的读数据请求的情况下,调度层14控制驱动层13从磁盘11读待解密数据,并将待解密数据发送至数据处理模块30,然后,数据处理模块30对待解密数据进行解密处理,如图1虚线所示,在调度层14接收到来自应用层12的写数据请求的情况下,调度层14将待加密数据发送至数据处理模块30,然后,数据处理模块30对待加密数据进行加密处理。
其中,上述磁盘包括多个扇区,一个上述扇区用于存储一条上述待解密数据或者用于存储一条上述密文数据,一个上述扇区具有一个扇区号,上述扇区与上述扇区号一一对应,上述待解密数据与上述明文数据一一对应,上述待加密数据与上述加密数据一一对应,一个上述扇区号对应一条上述待解密数据或者对应一条上述密文数据,在接收到上述读数据请求的情况下控制上述驱动层从上述磁盘读取上述待解密数据并将上述待解密数据打包成待解密数据包发送至上述数据处理模块,可实现为:
在接收到上述读数据请求的情况下控制上述驱动层从第一扇区信息对应的上述扇区读取上述待解密数据,上述第一扇区信息为上述待解密数据对应的上述扇区号;
将各上述待解密数据、密钥和上述第一扇区信息打包成多个上述待解密数据包,上述待解密数据与上述待解密数据包一一对应;
将各上述待解密数据包发送至上述数据处理模块。
本实施例中,主机和数据处理装置通过通用总线通信连接,为了将来自主机的待解密数据传输给数据处理模块,在调度层接收到来自应用层的读数据请求的情况下,调度层控制驱动层从磁盘的第一扇区信息读待解密数据,并将待解密数据和给待解密数据解密需要的密钥和第一扇区信息发送至数据处理模块,然后,数据处理模块对待解密数据进行解密处理。
需要说明的是,通用总线可以是PCIE线(PCI -Express)。
为了提高对读数据请求的响应速率,上述待解密数据的类型包括第一类型和第二类型,上述第一类型的上述待解密数据包含上述第二类型的上述待解密数据对应的上述扇区号,上述待加密数据的类型包括上述第一类型和上述第二类型,上述第一类型的上述待加密数据包含上述第二类型的上述待加密数据对应的上述扇区号,上述第一类型的上述待解密数据对应的上述扇区号的优先级为第一优先级,上述第二类型的上述待解密数据对应的上述扇区号的优先级为第二优先级,上述第一类型的上述待加密数据对应的上述扇区号的优先级为第一优先级,上述第二类型的上述待加密数据对应的上述扇区号的优先级为第二优先级,上述磁盘包括保留区,上述保留区由多个上述扇区组成,上述保留区用于存储优先级映射关系,上述优先级映射关系为上述扇区号与上述扇区号的优先级的映射关系,将各上述待解密数据包发送至上述数据处理模块,可实现为:
根据各上述待解密数据包的上述第一扇区信息和上述优先级映射关系确定上述待解密数据包的上述待解密数据对应的上述扇区号的优先级,得到多个第一目标优先级,上述第一目标优先级与上述待解密数据包一一对应;
优先将对应的上述第一目标优先级为上述第一优先级的上述待解密数据包发送至上述数据处理模块。
本实施例中,一个读数据请求对应多个第一类型的待解密数据和第二类型的待解密数据,并且需要根据第一类型的待解密数据包含的扇区号读取第二类型的待解密数据,即第二类型的待解密数据的读取依赖于第一类型的待解密数据的读取,因此,本申请设置第一类型的待解密数据对应的扇区号的优先级高于第二类型的待解密数据的优先级,然后,优先将第一优先级的待解密数据发送至数据处理模块进行解密处理,得到该读数据请求对应的第二优先级的待解密数据的扇区号,之后,即可读取该读数据请求对应的各第二优先级的待解密数据,减小对第二优先级的待解密数据进行读取之前的等待时间,从而提高读数据请求响应速率。
需要说明的是,如图2所示,本申请在读写磁盘之前,需要打开磁盘,将保留区读入主机的内存,并从内存读取扇区优先级映射表(上述优先级映射关系),然后,在读磁盘时,即接收到读数据请求时,根据待解密数据对应的扇区号从扇区优先级映射表查找该扇区号的优先级,最后,优先将第一优先级的扇区号对应的待解密数据发送至数据处理模块。
还需要说明的是,读写磁盘之前,对磁盘进行格式化,本申请提供了一种磁盘格式化方法,如图2所示,
步骤1:由主机的操作系统运行磁盘格式化命令;
步骤2:根据磁盘参数规划数据区、索引区和保留区;
其中,数据区由多个扇区组成,索引区由多个扇区组成,保留区由多个扇区组成,其中,数据区存储的是待解密数据和加密数据,索引区存储的是待解密数据对应的扇区号和待加密数据对应的扇区号,具体的可以类比为一系列的指针,索引区存储的待解密数据对应的扇区号最终指向数据区的存储待解密数据的扇区,索引区存储的待加密数据对应的扇区号最终指向数据区的存储待加密数据的扇区;
步骤3:根据索引区和数据区所占用扇区,产生磁盘扇区优先级映射表;
其中,索引区的各扇区的扇区号的优先级为第一优先级,数据区的各扇区的扇区号的优先级为第二优先级。
步骤4:将产生的扇区优先级映射表(上述优先级映射关系)写入保留区;
步骤5:写入其他信息,完成磁盘格式化。
其中,在接收到上述写数据请求的情况下将上述待加密数据打包成待加密数据包并将上述待加密数据包发送至上述数据处理模块,可实现为:
在接收到上述写数据请求的情况下,将各上述待加密数据、上述密钥和第二扇区信息打包成多个上述待加密数据包,上述第二扇区信息为上述待加密数据对应的上述扇区号,上述待加密数据与上述待加密数据包一一对应;
将各上述待加密数据包发送至上述数据处理模块。
本实施例,在调度层接收到来自应用层的写数据请求的情况下,为了将来自主机的待加密数据传输给数据处理模块,调度层将待加密数据和给待加密数据解密需要的密钥和第二扇区信息发送至数据处理模块,使得数据处理模块对待加密数据进行加密处理。
为了提高对写数据请求的响应速率,在一种可选的方案中,将各上述待加密数据包发送至上述数据处理模块,包括:
根据各上述待加密数据包的上述第二扇区信息和上述优先级映射关系确定上述待加密数据包的上述待加密数据对应的上述扇区号的优先级,得到多个第二目标优先级,上述第二目标优先级与上述待加密数据包一一对应;
优先发送对应的上述第二目标优先级为上述第一优先级的上述待加密数据包至上述数据处理模块。
本实施例中,一个写数据请求对应多个第一类型的待加密数据和第二类型的待加密数据,并且第一类型的待加密数据包含的扇区号确定存储加密后的第二类型的待加密数据的扇区的位置,因此,第一类型的加密数据写入磁盘之后,才能写入第二类型的待解密数据,即加密后的第二类型的待加密数据的写入依赖于第一类型的待加密数据的写入,因此,本申请设置第一类型的待加密数据对应的扇区号的优先级高于第二类型的待加密数据的优先级,然后,优先将第一优先级的待加密数据发送至数据处理模块进行加密写入处理,确定该写数据请求对应的第二优先级的待加密数据的扇区号,之后,即可对该写数据请求对应的各第二优先级的待加密数据加密并写入磁盘,减小对第二优先级的待加密数据进行加密并写入磁盘之前的等待时间,从而提高写数据请求响应效率。
需要说明的是,如图2所示,本申请在读写磁盘之前,需要打开磁盘,将保留区读入主机的内存,并从内存读取扇区优先级映射表(上述优先级映射关系),然后,在读写盘时,即接收到写数据请求时,根据待加密数据对应的扇区号从扇区优先级映射表查找该扇区号的优先级,最后,优先将第一优先级的扇区号对应的待加密数据发送至数据处理模块。
为了对从磁盘读取的待解密数据进行解密,在一种可选方案中,如图1所示,
上述数据处理模块30还包括:
解析单元31,上述解析单元31的第一接口为上述数据处理模块30的第一接口,上述解析单元31用于获取上述待解密数据包的上述待解密数据、上述密钥和上述第一扇区信息;
生成单元32,上述生成单元32的第一接口与上述解析单元31的第二接口通信连接,上述生成单元32用于接收来自上述解析单元31的上述第一扇区信息并根据上述第一扇区信息生成上述待解密数据的加密调整值;
加解密单元33,上述加解密单元33的第一接口与上述解析单元31的第三接口通信连接,上述加解密单元33的第二接口与上述生成单元32的第二接口通信连接,上述加解密单元33的第三接口与上述应用层12的第二接口通信连接,上述加解密单元33用于接收来自上述解析单元31的上述待解密数据和上述密钥且接收来自上述生成单元32的上述待解密数据的上述加密调整值,且用于采用XTS-SM4加密算法根据上述密钥和上述待解密数据的上述加密调整值将上述待解密数据解密成上述明文数据,且用于将上述明文数据发送至上述应用层12。
本实施例中,如图1实线所示,在解析单元31接收到来自调度层14的待解密数据包的情况下,对待解密数据包进行解析,将待解密数据和密钥发送至加解密单元33,将第一扇区信息发送至生成单元32,生成单元32根据第一扇区信息生成待解密数据的加密调整值,然后,生成单元32将加密调整值发送至加解密单元33,加解密单元33采用XTS-SM4加密算法根据密钥和待解密数据的加密调整值将待解密数据解密成明文数据,从而实现了对磁盘读取的待解密数据进行解密,并在完成解密任务后将明文数据发送至主机10的应用层12使用,从而实现了采用数据处理装置的数据处理模块对从主机的磁盘中读取的待解密数据进行解密处理,从而解决了采用主机内的CPU加解密数据导致CPU负载过重的问题。
为了对待加密数据进行加密,在一种可选方案中,如图1所示,
上述加解密单元33的第四接口与上述驱动层13的第三接口通信连接,上述解析单元31还用于获取上述待加密数据包的上述待加密数据、上述密钥和上述第二扇区信息;上述生成单元32用于接收来自上述解析单元31的上述第二扇区信息并根据上述第二扇区信息生成上述待加密数据的上述加密调整值;上述加解密单元33还用于接收来自上述解析单元31的上述待加密数据和上述密钥且接收来自上述生成单元32的上述待加密数据的上述加密调整值,且用于采用上述XTS-SM4加密算法根据上述密钥和上述待加密数据的上述加密调整值将上述待加密数据加密成上述密文数据,且用于控制上述驱动层13将上述密文数据写入上述第二扇区信息对应的上述扇区。
本实施例中,如图1虚线所示,在解析单元31接收到来自调度层14的待加密数据包的情况下,对待加密数据包进行解析,将待加密数据和密钥发送至加解密单元33,将第一扇区信息发送至生成单元32,生成单元32根据第一扇区信息生成待加密数据的加密调整值,然后,生成单元32将加密调整值发送至加解密单元33,加解密单元33采用XTS-SM4加密算法根据密钥和待加密数据的加密调整值将待加密数据解密成明文数据,从而实现了对磁盘11读取的待加密数据进行加密,并在完成加密任务后,控制驱动层13将密文数据写入磁盘,从而实现了采用数据处理装置20的数据处理模块30对准备写入主机的磁盘的待加密数据进行加密处理,从而解决了采用主机内的CPU加解密数据导致CPU负载过重的问题。
为了提升待解密数据的解密速度,在一种可选方案中,一个上述读数据请求对应多条上述待解密数据,在接收到上述读数据请求的情况下控制上述驱动层从上述磁盘读取上述待解密数据并将上述待解密数据打包成待解密数据包发送至上述数据处理模块,还可实现为:
在接收到上述读数据请求的情况下,控制上述驱动层从上述磁盘读取多个上述待解密数据;
将一组第一目标数据、各上述第一目标数据对应的上述第一扇区信息和上述密钥打包成一个上述待解密数据包,一组上述第一目标数据为一个上述读数据请求对应的所有上述待解密数据中的多条且存储上述第一目标数据的上述扇区的上述扇区号连续。
本实施例中,对于一个读数据请求,若一组待解密数据被存储在扇区号连续的扇区中,则将该组待解密数据、解析该组待解密数据对应的第一扇区信息和密钥打包成一个待解密数据,如图3所示,相对于打包成三个待解密数据包,本申请将该待解密数据组(三个待解密数据)组包成一个待解密数据包,通过聚合处理,减少了解析单元解析待解密数据包包头的次数,减少了待解密数据从主机至数据处理模块传输(输入输出)的次数,减少了数据处理模块加解密待解密数据的次数,从而提升待解密数据的解密速度,同时能够增加硬件流水线优化机会。
为了提升待加密数据的加密速度,在一种可选方案中,一个上述写数据请求对应多条上述待加密数据在接收到上述写数据请求的情况下将上述待加密数据打包成待加密数据包并将上述待加密数据包发送至上述数据处理模块,可实现为:
在接收到上述写数据请求的情况下,将一组第二目标数据、各上述第二目标数据对应的上述第二扇区信息和上述密钥打包成一个上述待加密数据包,一组上述第二目标数据为一个上述写数据请求对应的所有上述待加密数据中的多条且上述第二目标数据对应的上述扇区号连续。
本实施例中,对于一个写数据请求,若一组待加密数据被存储在扇区号连续的扇区中,则将该组待加密数据、解析该组待加密数据对应的第一扇区信息和密钥打包成一个待加密数据,如图4所示,对于一个写数据请求,相对于打包成三个待加密数据包,本申请将该待加密数据组(三个待加密数据)组包成一个待加密数据包,通过聚合处理,减少了解析单元解析待加密数据包包头的次数,减少了待加密数据从主机至数据处理模块传输(输入输出)的次数,减少了数据处理模块加解密待加密数据的次数,从而提升待加密数据的加密速度,同时能够增加硬件流水线优化机会。
通过上述实施例,采用数据处理装置的数据处理模块对从主机的磁盘中读取的待解密数据进行解密处理,且对准备写入主机的磁盘的待加密数据进行加密处理,从而解决了采用主机内的CPU加解密数据导致CPU负载过重的问题。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
从以上的描述中,可以看出,本申请上述的实施例实现了如下技术效果:
1)、本申请的数据处理系统,该数据处理系统包括:主机,上述主机包括磁盘;数据处理装置,上述数据处理装置包括数据处理模块,上述数据处理模块与上述磁盘通信连接,上述数据处理模块用于将来自上述磁盘的待解密数据解密成明文数据,且用于将待加密数据加密成密文数据并将上述密文数据写入上述磁盘。该数据处理系统采用数据处理装置的数据处理模块对从主机的磁盘中读取的待解密数据进行解密处理,且对准备写入主机的磁盘的待加密数据进行加密处理,从而解决了采用主机内的CPU加解密数据导致CPU负载过重的问题。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.一种数据处理系统,其特征在于,所述数据处理系统包括:
主机,所述主机包括磁盘;
数据处理装置,所述数据处理装置包括数据处理模块,所述数据处理模块与所述磁盘通信连接,所述数据处理模块用于将来自所述磁盘的待解密数据解密成明文数据,且用于将待加密数据加密成密文数据并将所述密文数据写入所述磁盘;
其中,所述磁盘包括多个扇区,一个所述扇区用于存储一条所述待解密数据或者用于存储一条所述密文数据,一个所述扇区具有一个扇区号,所述扇区与所述扇区号一一对应,所述待解密数据与所述明文数据一一对应,所述待加密数据与所述加密数据一一对应,一个所述扇区号对应一条所述待解密数据或者对应一条所述密文数据;
所述主机还包括:
应用层,用于发出读数据请求;
驱动层,所述驱动层的第一接口与所述磁盘的第一接口通信连接;
调度层,所述调度层的第一接口与所述应用层的第一接口通信连接,所述调度层的第二接口与所述驱动层的第二接口通信连接,所述调度层的第三接口与所述数据处理模块的第一接口通信连接,所述调度层用于在接收到所述读数据请求的情况下控制所述驱动层从所述磁盘读取所述待解密数据并将所述待解密数据打包成待解密数据包发送至所述数据处理模块;
在接收到所述读数据请求的情况下控制所述驱动层从所述磁盘读取所述待解密数据并将所述待解密数据打包成待解密数据包发送至所述数据处理模块,包括:
将各所述待解密数据包发送至所述数据处理模块;
其中,所述待解密数据的类型包括第一类型和第二类型,所述第一类型的所述待解密数据包含所述第二类型的所述待解密数据对应的所述扇区号,所述待加密数据的类型包括所述第一类型和所述第二类型,所述第一类型的所述待加密数据包含所述第二类型的所述待加密数据对应的所述扇区号,所述第一类型的所述待解密数据对应的所述扇区号的优先级为第一优先级,所述第二类型的所述待解密数据对应的所述扇区号的优先级为第二优先级,所述第一类型的所述待加密数据对应的所述扇区号的优先级为第一优先级,所述第二类型的所述待加密数据对应的所述扇区号的优先级为第二优先级,所述磁盘包括保留区,所述保留区由多个所述扇区组成,所述保留区用于存储优先级映射关系,所述优先级映射关系为所述扇区号与所述扇区号的优先级的映射关系;
将各所述待解密数据包发送至所述数据处理模块,包括:
根据各所述待解密数据包的第一扇区信息和所述优先级映射关系确定各所述待解密数据包的所述待解密数据对应的所述扇区号的优先级,得到多个第一目标优先级,所述第一目标优先级与所述待解密数据包一一对应,所述第一扇区信息为所述待解密数据对应的所述扇区号;
优先将对应的所述第一目标优先级为所述第一优先级的所述待解密数据包发送至所述数据处理模块。
2.根据权利要求1所述的数据处理系统,其特征在于,所述应用层,用于发出写数据请求;所述调度层用于在接收到所述写数据请求的情况下将所述待加密数据打包成待加密数据包并将所述待加密数据包发送至所述数据处理模块。
3.根据权利要求1所述的数据处理系统,其特征在于,在接收到所述读数据请求的情况下控制所述驱动层从所述磁盘读取所述待解密数据并将所述待解密数据打包成待解密数据包发送至所述数据处理模块,包括:
在接收到所述读数据请求的情况下控制所述驱动层从所述第一扇区信息对应的所述扇区读取所述待解密数据;
将各所述待解密数据、密钥和所述第一扇区信息打包成多个所述待解密数据包,所述待解密数据与所述待解密数据包一一对应,所述密钥为用于给所述待解密数据进行解密的字符串。
4.根据权利要求2所述的数据处理系统,其特征在于,在接收到所述写数据请求的情况下将所述待加密数据打包成待加密数据包并将所述待加密数据包发送至所述数据处理模块,包括:
在接收到所述写数据请求的情况下,将各所述待加密数据、密钥和第二扇区信息打包成多个所述待加密数据包,所述第二扇区信息为所述待加密数据对应的所述扇区号,所述待加密数据与所述待加密数据包一一对应,所述密钥为用于给所述待加密数据进行加密的字符串;
将各所述待加密数据包发送至所述数据处理模块。
5.根据权利要求4所述的数据处理系统,其特征在于,将各所述待加密数据包发送至所述数据处理模块,包括:
根据各所述待加密数据包的所述第二扇区信息和所述优先级映射关系确定各所述待加密数据包的所述待加密数据对应的所述扇区号的优先级,得到多个第二目标优先级,所述第二目标优先级与所述待加密数据包一一对应;
优先发送对应的所述第二目标优先级为所述第一优先级的所述待加密数据包至所述数据处理模块。
6.根据权利要求1所述的数据处理系统,其特征在于,一个所述读数据请求对应多条所述待解密数据,在接收到所述读数据请求的情况下控制所述驱动层从所述磁盘读取所述待解密数据并将所述待解密数据打包成待解密数据包发送至所述数据处理模块,包括:
在接收到所述读数据请求的情况下,控制所述驱动层从所述磁盘读取多个所述待解密数据;
将一组第一目标数据、各所述第一目标数据对应的所述第一扇区信息和密钥打包成一个所述待解密数据包,一组所述第一目标数据为一个所述读数据请求对应的所有所述待解密数据中的多条且存储所述第一目标数据的所述扇区的所述扇区号连续,所述密钥为用于给所述待解密数据进行解密的字符串。
7.根据权利要求2所述的数据处理系统,其特征在于,一个所述写数据请求对应多条所述待加密数据,在接收到所述写数据请求的情况下将所述待加密数据打包成待加密数据包并将所述待加密数据包发送至所述数据处理模块,包括:
在接收到所述写数据请求的情况下,将一组第二目标数据、各所述第二目标数据对应的第二扇区信息和密钥打包成一个所述待加密数据包,一组所述第二目标数据为一个所述写数据请求对应的所有所述待加密数据中的多条且所述第二目标数据对应的所述扇区号连续,所述第二扇区信息为所述待加密数据对应的所述扇区号,所述密钥为用于给所述待加密数据进行加密的字符串。
8.根据权利要求3所述的数据处理系统,其特征在于,所述数据处理模块还包括:
解析单元,所述解析单元的第一接口为所述数据处理模块的第一接口,所述解析单元用于获取所述待解密数据包的所述待解密数据、所述密钥和所述第一扇区信息;
生成单元,所述生成单元的第一接口与所述解析单元的第二接口通信连接,所述生成单元用于接收来自所述解析单元的所述第一扇区信息并根据所述第一扇区信息生成所述待解密数据的加密调整值;
加解密单元,所述加解密单元的第一接口与所述解析单元的第三接口通信连接,所述加解密单元的第二接口与所述生成单元的第二接口通信连接,所述加解密单元的第三接口与所述应用层的第二接口通信连接,所述加解密单元用于接收来自所述解析单元的所述待解密数据和所述密钥且接收来自所述生成单元的所述待解密数据的所述加密调整值,且用于采用XTS-SM4加密算法根据所述密钥和所述待解密数据的所述加密调整值将所述待解密数据解密成所述明文数据,且用于将所述明文数据发送至所述应用层。
9.根据权利要求4所述的数据处理系统,其特征在于,所述数据处理模块还包括:
解析单元,生成单元,加解密单元,所述加解密单元的第四接口与所述驱动层的第三接口通信连接,所述解析单元还用于获取所述待加密数据包的所述待加密数据、所述密钥和所述第二扇区信息;所述生成单元用于接收来自所述解析单元的所述第二扇区信息并根据所述第二扇区信息生成所述待加密数据的加密调整值;所述加解密单元还用于接收来自所述解析单元的所述待加密数据和所述密钥且接收来自所述生成单元的所述待加密数据的所述加密调整值,且用于采用XTS-SM4加密算法根据所述密钥和所述待加密数据的所述加密调整值将所述待加密数据加密成所述密文数据,且用于控制所述驱动层将所述密文数据写入所述第二扇区信息对应的所述扇区。
10.根据权利要求1至9中任一项所述的数据处理系统,其特征在于,所述数据处理模块有多个。
CN202310194763.3A 2023-02-27 2023-02-27 数据处理系统 Active CN116070295B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310194763.3A CN116070295B (zh) 2023-02-27 2023-02-27 数据处理系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310194763.3A CN116070295B (zh) 2023-02-27 2023-02-27 数据处理系统

Publications (2)

Publication Number Publication Date
CN116070295A CN116070295A (zh) 2023-05-05
CN116070295B true CN116070295B (zh) 2023-08-01

Family

ID=86169888

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310194763.3A Active CN116070295B (zh) 2023-02-27 2023-02-27 数据处理系统

Country Status (1)

Country Link
CN (1) CN116070295B (zh)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101038568B (zh) * 2007-04-16 2010-05-19 丁万年 外置式计算机硬盘数据加密方法及其装置
CN102930224A (zh) * 2012-10-19 2013-02-13 华为技术有限公司 硬盘数据写入、读取方法及装置
CN104881613A (zh) * 2014-02-27 2015-09-02 中国科学院声学研究所 一种磁盘全局数据加密系统及方法
CN104951701B (zh) * 2015-06-10 2018-03-09 北京工业大学 一种基于usb控制器的终端设备操作系统引导的方法
CN108055268A (zh) * 2017-12-17 2018-05-18 天津津航计算技术研究所 一种基于PCIe链路数据透传加解密的方法
CN113221171A (zh) * 2021-05-21 2021-08-06 杭州弗兰科信息安全科技有限公司 一种加密文件读写方法、装置、电子设备和存储介质
CN115329351A (zh) * 2022-07-22 2022-11-11 安徽工程大学 一种面向Windows系统的文件保护系统及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于Windows2000的存储加密系统设计与实现;于江等;《计算机应用》(05);全文 *

Also Published As

Publication number Publication date
CN116070295A (zh) 2023-05-05

Similar Documents

Publication Publication Date Title
US8321659B2 (en) Data encryption apparatus, data decryption apparatus, data encryption method, data decryption method, and data transfer controlling apparatus
US8843768B2 (en) Security-enabled storage controller
CN109040090A (zh) 一种数据加密方法及装置
US8478984B2 (en) Data encryption apparatus, data decryption apparatus, data encryption method, data decryption method, and data relay apparatus
JPH07281596A (ja) 暗号化方法およびシステム
CN103345453B (zh) 基于支持sata接口的硬盘数据加密卡进行加密的方法
JPH03261987A (ja) ファイル暗号化方法およびファイル暗号システム
CN102073808B (zh) 一种通过sata接口加密存储的方法和加密卡
EP2722787A1 (en) Method and apparatus for writing and reading encrypted hard disk data
CN101196855A (zh) 移动加密存储设备及密文存储区数据加解密处理方法
CN104160407A (zh) 利用存储控制器总线接口以确保存储设备和主机之间的数据传输安全
CN110163011B (zh) 一种高速安全硬盘设计方法
CN104579646A (zh) 乱码本有限单向变换及其加解密应用
US7802102B2 (en) Method for efficient and secure data migration between data processing systems
CN102546156A (zh) 一种分组加密方法、系统和装置
CN107609428A (zh) 数据安全存储系统及方法
KR101117588B1 (ko) 암호화 표시정보를 갖는 기록매체
CN109840434A (zh) 一种基于国密芯片的安全存储方法
CN102158558B (zh) 一种san存储加密系统及方法
CN116070295B (zh) 数据处理系统
CN104202166B (zh) 一种erp系统数据加密方法
US8977841B2 (en) Sending messages by oblivious transfer
JPH04181282A (ja) ファイルの暗号方式
CN103369016A (zh) 实现基于iSCSI的网络存储协议栈的方法
CN114327255A (zh) 存储器接口控制器及存储器

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant