CN110568992A - 一种数据处理装置及方法 - Google Patents

一种数据处理装置及方法 Download PDF

Info

Publication number
CN110568992A
CN110568992A CN201810576152.4A CN201810576152A CN110568992A CN 110568992 A CN110568992 A CN 110568992A CN 201810576152 A CN201810576152 A CN 201810576152A CN 110568992 A CN110568992 A CN 110568992A
Authority
CN
China
Prior art keywords
data
processed
component
format
storage module
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
CN201810576152.4A
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201810576152.4A priority Critical patent/CN110568992A/zh
Priority to PCT/CN2019/075037 priority patent/WO2019233118A1/zh
Publication of CN110568992A publication Critical patent/CN110568992A/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/60Protecting data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • 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
    • 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • 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/0629Configuration or reconfiguration of storage systems
    • 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/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Storage Device Security (AREA)

Abstract

本申请实施例公开了一种数据处理装置及方法,用于提高压缩加密和解密解压的效率,降低系统带宽。本申请实施例提供的数据处理装置中,将压缩组件和加密组件进行桥接,使压缩组件和加密组件之间可以进行数据传输,压缩组件可以将压缩后的压缩数据传输至加密组件,通过加密组件实现对压缩数据的加密,因此在压缩加密过程中,处理器只需对存储模块进行一次读取和一次写入即可。相应的,将解密组件和解压组件进行桥接,使解密组件和解压组件之间可以进行数据传输,解密组件可以将经过解密的解密数据传输至解压组件,通过解压组件实现对解密数据的解压,因此在解密解压过程中,处理器只需对存储模块进行一次读取和一次写入即可。

Description

一种数据处理装置及方法
技术领域
本申请涉及数据处理领域,尤其涉及一种数据处理装置及方法。
背景技术
随着云计算和大数据的不断发展,全球信息的数据量逐年猛增,对数据进行压缩处理,以节约存储成本的需求越来越强烈。同时,对数据进行加密以实现对数据的安全性保护也是非常重要的课题。
在传统的数据处理过程中,一般对数据进行先压缩后加密,当需要使用该数据的时候,对该数据先解密后解压。在先压缩后加密的过程中,压缩和加密是两个独立的流程;在先解密后解压的过程中,解密和解压也是两个独立的流程。因此,这两个过程都需要从存储数据的存储模块中读取和写入多次才能实现,从而使得对数据进行压缩加密或解密解压的效率降低,增加了系统带宽。
发明内容
本申请实施例提供了一种数据处理装置及方法,提高了对数据进行压缩解密或解密解压的效率,降低了系统带宽。
本申请第一方面提供一种数据处理装置,该装置包括:数据输入逻辑、控制逻辑、压缩组件、加密组件和数据输出逻辑;控制逻辑分别与数据输入逻辑、压缩组件、加密组件和数据输出逻辑连接,数据输入逻辑与压缩组件连接,压缩组件与加密组件连接,加密组件与数据输出逻辑连接。其中,控制逻辑,用于响应压缩加密指令,压缩加密指令是用于指示对存储模块中存储的待处理数据进行压缩加密的指令。控制逻辑可以控制数据输入逻辑从存储模块中读取待处理数据,存储模块可以包括存储器和/或缓存池,其中存储器中存储有待处理数据和程序代码等,缓存池中可以存储有待处理数据、压缩数据和加密数据等。控制逻辑可以控制数据输入模块将读取的待处理数据输入到压缩组件。控制组件可以控制压缩组件对待处理数据进行压缩,得到压缩数据;控制模块可以控制加密组件对压缩数据进行加密,得到加密数据;控制模块可以控制数据输出逻辑将加密数据写入存储模块。
在此压缩加密的过程中,在对待处理数据进行压缩后,无需将压缩数据存储至存储器中,在对压缩数据进行加密前,无需从存储器中读取压缩数据,整个过程中只需对存储器执行一次读取和一次写入即可,即处理器只要与存储模块进行两次交互,相比于传统技术,处理器与存储模块的交互次数减少了一半,提高了压缩加密的效率,降低了一半的系统带宽。此外,由于压缩组件和加密组件是独立的组件,可以在压缩数据达到一定数据量后,开始进行压缩数据的加密,使压缩和加密可以并行处理,进一步提高压缩加密的效率,降低系统带宽。
在一些可能的设计中,压缩加密指令中携带有待处理数据的首位地址和数据长度;
从存储模块中读取待处理数据包括:
根据待处理数据的首位地址和数据长度从存储模块中读取待处理数据。
本申请实施例提供了一种从存储模块中读取待处理数据的方式,根据待处理数据的首位地址和数据长度从存储模块中,能使待处理数据更加有针对性,更加准确。
在一些可能的设计中,控制加密组件对压缩数据进行加密包括:
若压缩数据的数据量大于或等于第一阈值,则控制加密组件对压缩数据进行加密。
本申请实施例中,可以在有部分待处理数据完成压缩后,通过加密组件对形成的压缩数据进行加密,从而实现压缩组件的压缩操作和加密组件的加密操作的并行处理,而不必等到所有的待处理数据均完成压缩过程后再进行压缩数据的加密,进一步提高了压缩加密的效率。
在一些可能的设计中,该装置还包括密钥输入逻辑,与加密组件和控制逻辑连接;
控制加密组件对压缩数据进行加密包括:
控制密钥输入逻辑从存储模块中读取加密密钥,并控制加密组件利用加密密钥对压缩数据进行加密。
本申请实施例中,可以通过木有输入逻辑读取加密密钥,以便于加密组件利用加密密钥对压缩数据进行加密,从而使加密数据更加安全。
在一些可能的设计中,该装置还包括第一格式变换逻辑,第一格式变换逻辑连接在数据输入逻辑和压缩组件之间;
控制逻辑,还用于控制第一格式变换逻辑将待处理数据的格式由原格式变换为预设格式,并向压缩组件发送预设格式的待处理数据,预设格式为压缩组件匹配的格式。
本申请实施例中,第一格式变换逻辑用于对待处理数据进行格式处理,将待处理数据的格式由原格式变换为预设格式,例如可以通过对每个待处理数据加入保护信息来保护数据完整性,使数据处理过程更加安全。
在一些可能的设计中,该装置还包括第二格式变换逻辑,第二格式变换逻辑连接在数据输出逻辑和加密组件之间;
控制逻辑,还用于控制第二格式变换逻辑将加密数据的格式变换为原格式,并向数据输出逻辑发送原格式的加密数据。
本申请实施例中,第二格式变换逻辑用于对加密数据进行格式处理,将加密数据的格式变换为原格式,以便在需要该加密数据时能够方便使用。
在一些可能的设计中,存储模块包括:
存储器和/或缓存池。
本申请实施例中,存储器中存储有待处理数据和程序代码等,缓存池中可以存储有待处理数据、压缩数据和加密数据等,以提高数据读取速度和写入速度。
本申请第二方面提供另一种数据处理装置,该装置包括:数据输入逻辑、控制逻辑、解密组件、解压组件和数据输出逻辑;控制逻辑分别与数据输入逻辑、解密组件、解压组件和数据输出逻辑连接,数据输入逻辑与解密组件连接,解密组件与解压组件连接,解压组件与数据输出逻辑连接;其中,控制逻辑,用于响应解密解压指令,解密解压指令是用于指示对存储模块中存储的待处理数据进行解密解压的指令。控制逻辑可以控制数据输入逻辑从存储模块中读取待处理数据,存储模块可以包括存储器和/或缓存池,其中存储器中存储有待处理数据和程序代码等,缓存池中可以存储有待处理数据、压缩数据和加密数据等。控制逻辑可以控制数据输入模块将待处理数据输入到解密组件;控制逻辑可以控制解密组件对待处理数据进行解密,得到解密数据;控制逻辑可以控制解压组件对解密数据进行解压,得到解压数据;控制逻辑可以控制数据输出逻辑将解压数据写入存储模块。
在此解密解压的过程中,在对待处理数据进行解密后,无需将解密数据写入存储模块中,在对解密数据进行解压之前,也无需从存储模块中读取解密数据,整个过程只需对存储模块执行一次读取和一次写入即可,即处理器只要与存储模块进行两次交互,相比于传统技术,处理器与存储模块的交互次数减少了一半,提高了解密解压的效率,降低了一半的系统带宽。此外,由于解密和解压是独立的过程,可以在解密数据达到一定数据量后,开始进行解密数据的解压,使解密和解压可以并行处理,进一步提高解密解压的效率,降低系统带宽。
在一些可能的设计中,解密解压指令中携带有待处理数据的首位地址和数据长度;
从存储模块中读取待处理数据包括:
根据待处理数据的首位地址和数据长度从存储模块中读取待处理数据。
本申请实施例提供了一种从存储模块中读取待处理数据的方式,根据待处理数据的首位地址和数据长度从存储模块中,能使待处理数据更加有针对性,更加准确。
在一些可能的设计中,该装置还包括密钥输入逻辑,与解密组件和控制逻辑连接;
对待处理数据进行解密包括:
控制密钥输入逻辑从存储模块中读取解密密钥,并控制解密组件利用解密密钥对待处理数据进行解密。
本申请实施例中,可以在有部分待处理数据完成解密后,通过解压组件对形成的解密数据进行解压,从而可以实现解密组件的解密操作和解压组件的解压操作的并行处理,而不必等到所有的待处理数据均完成解密过程后再进行解密数据的解压,实现解密解压的效率的进一步提升。
在一些可能的设计中,该装置还包括第一格式变换逻辑,第一格式变换逻辑连接在数据输入逻辑和解密组件之间;
控制逻辑,还用于控制第一格式变换逻辑将待处理数据的格式由原格式变换为预设格式,并向解密组件发送预设格式的待处理数据,预设格式为与解密组件匹配的格式。
本申请实施例中,第一格式变换逻辑用于将待处理数据的格式由原格式变换为预设格式,具体的,可以对每个待处理数据加入保护信息来保护数据完整性。
在一些可能的设计中,该装置还包括第二格式变换逻辑,第二格式变换逻辑连接在数据输出逻辑和解压组件之间;
控制逻辑,还用于控制第二格式变换逻辑将解压数据的格式变换为原格式,并向数据输出逻辑发送原格式的解压数据。
本申请实施例中,第二格式变换逻辑用于将解压数据的格式变换为原格式,以便对该解压数据时能够方便使用、压缩或加密。
在一些可能的设计中,存储模块包括:
存储器和/或缓存池。
本申请实施例中,存储器中存储有待处理数据和程序代码等,缓存池中可以存储有待处理数据、压缩数据和加密数据等,以提高数据读取速度和写入速度。
本申请第三方面提供一种数据处理方法,该方法包括:
响应压缩加密指令,从存储模块中读取待处理数据;
对待处理数据进行压缩,得到压缩数据;
对压缩数据进行加密,得到加密数据;
将加密数据写入存储模块中。
在一些可能的设计中,压缩加密指令中携带有待处理数据的首位地址和数据长度;
从存储模块中读取待处理数据包括:
根据待处理数据的首位地址和数据长度从存储模块中读取待处理数据。
在一些可能的设计中,对压缩数据进行加密包括:
若压缩数据的数据量大于或等于第一阈值,则对压缩数据进行加密。
在一些可能的设计中,对压缩数据进行加密包括:
从存储模块中读取加密密钥,并利用加密密钥对压缩数据进行加密。
在一些可能的设计中,该方法还包括:
将待处理数据的格式由原格式变换为预设格式,预设格式为压缩组件匹配的格式。
在一些可能的设计中,该方法还包括:
将加密数据的格式变换为原格式。
在一些可能的设计中,存储模块包括:
存储器和/或缓存池。
本申请第四方面提供另一种数据处理方法,该方法包括:
响应解密解压指令,从存储模块中读取待处理数据;
对待处理数据进行解密,得到解密数据;
对解密数据进行解压,得到解压数据;
将解压数据写入存储模块中。
在一些可能的设计中,解密解压指令中携带有待处理数据的首位地址和数据长度;
从存储模块中读取待处理数据包括:
根据待处理数据的首位地址和数据长度从存储模块中读取待处理数据。
在一些可能的设计中,对待处理数据进行解密包括:
从存储模块中读取解密密钥,利用解密密钥对待处理数据进行解密。
在一些可能的设计中,该方法还包括:
将待处理数据的格式由原格式变换为预设格式,预设格式为与解密组件匹配的格式。
在一些可能的设计中,该方法还包括:
将解压数据的格式变换为原格式。
在一些可能的设计中,存储模块包括:
存储器和/或缓存池。
本申请第五方面提供一种数据处理设备,该设备包括:处理器和存储器;
存储器,用于存储指令;
处理器,用于执行存储器中的指令,执行本申请第三方面提供的数据处理方法。
本申请第六方面提供另一种数据处理设备,该设备包括:处理器和存储器;
存储器,用于存储指令;
处理器,用于执行存储器中的指令,执行本申请第四方面提供的数据处理方法。
本申请第七方面提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行本申请第三方面提供的数据处理方法。
本申请第八方面提供另一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行本申请第四方面提供的数据处理方法。
本申请第九方面提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行本申请第三方面提供的数据处理方法。
本申请第十方面提供另一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行本申请第四方面提供的数据处理方法。
从以上技术方案可以看出,本申请实施例具有以下优点:
本申请实施例提供的一种数据处理装置及方法中,数据处理装置包括:数据输入逻辑、控制逻辑、压缩组件、加密组件和数据输出逻辑,控制逻辑与数据输入逻辑、压缩组件、加密组件和数据输出逻辑连接,数据输入逻辑与压缩组件连接,压缩组件与加密组件连接,加密组件与数据输出逻辑连接,通过控制逻辑响应压缩加密指令,控制数据输入逻辑从存储模块中读取待处理数据,并将待处理数据输入到压缩组件,控制压缩组件对待处理数据进行压缩,得到压缩数据,控制加密组件对压缩数据进行加密,得到加密数据,控住数据输出逻辑将加密数据写入存储模块。基于以上数据处理装置,在压缩加密的过程中,在对待处理数据进行压缩后,无需将压缩数据存储至存储器中,在对压缩数据进行加密前,无需从存储器中读取压缩数据,整个过程中只需对存储器执行一次读取和一次写入即可,而不必进行多次读取和写入,相比于传统技术,提高了压缩加密的效率,降低了系统带宽。
本申请实施例提供的另一种数据处理装置及方法中,数据处理装置包括:数据输入逻辑、控制逻辑、解密组件、解压组件和数据输出逻辑;控制逻辑分别与数据输入逻辑、解密组件、解压组件和数据输出逻辑连接,数据输入逻辑与解密组件连接,解密组件与解压组件连接,解压组件与数据输出逻辑连接;其中,控制逻辑,用于响应解密解压指令,控制数据输入逻辑从存储模块中读取待处理数据,并将待处理数据输入到解密组件;控制解密组件对待处理数据进行解密,得到解密数据;控制解压组件对解密数据进行解压,得到解压数据;以及控制数据输出逻辑将解压数据写入存储模块。基于以上数据处理装置,在解密解压的过程中,在对待处理数据进行解密后,无需将解密数据写入存储模块中,在对解密数据进行解压之前,也无需从存储模块中读取解密数据,整个过程只需对存储模块执行一次读取和一次写入即可,而不必进行多次读取和写入,相比于传统技术,提高了解密解压的效率,降低了系统带宽。
附图说明
图1为现有技术提供的一种数据处理流程示意图;
图2为本申请实施例提供的一种数据处理流程示意图;
图3为本申请实施例提供的一种数据处理装置的结构框图;
图4为本申请实施例提供的一种数据处理示意图;
图5为本申请实施例提供的一种数据处理场景示意图;
图6为本申请实施例提供的另一种数据处理装置的结构框图;
图7为本申请实施例提供的另一种数据处理场景示意图;
图8为本申请实施例提供的一种数据处理方法的流程图;
图9为本申请实施例提供的另一种数据处理方法的流程图;
图10为本申请实施例提供的一种数据处理设备的结构框图。
具体实施方式
本申请实施例提供了一种数据处理装置及方法,用于提高压缩加密和解密解压的效率,降低系统带宽。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
当前对于数据的处理,一般通过处理器先对数据进行压缩加密,再将经过压缩加密的数据存储至存储模块;在需要使用数据时,对于数据的处理,通常是由处理器从存储模块中读取经过压缩加密的数据,并对经过压缩加密的数据进行解密解压,得到原数据。
其中,存储模块是用来保存数据的设备,在本申请实施例中,可以用来存储待处理的数据和/或处理后的数据。存储模块可以包括易失性存储器,例如非挥发性动态随机存取内存(nonvolatile random access memory,NVRAM)、相变化随机存取内存(phase changerandom access memory,PRAM)、磁阻式随机存取内存(magetoresistive random accessmemory,MRAM)等,例如双倍速率同步动态随机存储器(double data rate synchronousdynamic random access memory,DDR SDRAM),还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件,例如机械硬盘(hard disk drive,HDD)或固态硬盘(solid statedriver,SSD)、反或闪存(NOR flash memory)或是反及闪存(NAND flash memory)。
处理器是具有处理指令、执行操作、处理数据等功能的设备,在本申请实施例中,用于从存储模块中读取数据,并对数据进行处理,例如可以对数据进行压缩、解压、加密和解密等操作中的至少一种操作。处理器可以是中央处理器(central processing unit,CPU)、通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC),现场可编程门阵列(fieldprogrammable gate array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件,硬件部件或者其任意组合,也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
当前对数据进行处理的处理器,可以包括压缩组件和加密组件,通过压缩组件实现对数据的压缩,通过加密组件实现对数据的加密。然而,压缩组件和加密组件相互独立,彼此之间不能进行数据传输,因此,对于数据压缩和数据加密的两个流程,处理器需要分别针对每个流程,从存储模块中读取数据,并分别将经过两个流程处理后的数据写入存储模块。在图1中,参考图1(a)所示,图1(a)为当前实现压缩加密过程中处理器和存储模块的交互示意图。处理器在压缩加密过程中需要进行如下步骤:1)从存储模块中读取待处理数据,对待处理数据进行压缩;2)将压缩后的数据写入存储模块;3)从存储模块中读取压缩后的数据,对压缩后的数据进行加密;4)将加密后的数据写入存储模块中。这样,处理器需要对存储模块进行两次读取和两次写入,即处理器需要与存储模块进行四次交互,所以数据进行压缩加密的效率较低,且增加了系统带宽。
相应的,当前对数据进行处理的处理器,还可以包括解密组件和解压组件,通过解密组件实现对数据的解密,通过解压组件实现对数据的解压。然而,解密组件和解压组件相互独立,彼此之间不能进行数据传输,因此,对于数据解密和数据解压两个流程,处理器同样需要分别针对每个流程,从存储模块中读取数据,并分别将经过两个流程处理后的数据写入存储模块。在图1中,参考图1(b)所示,图1(b)为当前实现解密解压过程中处理器和存储模块的交互示意图。处理器在解密解压过程中需要进行如下步骤:1)从存储模块中读取待处理数据,对待处理数据进行解密;2)将解密后的数据写入存储模块;3)从存储模块中读取解密后的数据,对解密后的数据进行解压;4)将解压后的数据写入存储模块中。这样处理器需要对存储模块进行两次读取和两次写入,即处理器需要与存储模块进行四次交互,所以数据进行解密解压的效率较低,且增加了系统带宽。
为了解决上述问题,本申请实施例提供了一种数据处理装置,在该装置中,将压缩组件和加密组件进行桥接,使压缩组件和加密组件之间可以进行数据传输,压缩组件可以将压缩后的压缩数据传输至加密组件,通过加密组件实现对压缩数据的加密,因此在压缩加密过程中,处理器只需对存储模块进行一次读取和一次写入即可。在图2中,参考图2(a)所示,图2(a)为本申请实施例提供的数据处理方法中实现压缩加密时处理器和存储模块的交互示意图。处理器响应压缩加密指令,进行如下步骤:1)从存储模块中读取待处理数据,对待处理数据进行压缩,得到压缩数据,再对压缩数据进行加密,得到加密数据;2)将加密数据写入存储模块。本申请实施例中,实现压缩加密时,处理器只需要对存储模块进行一次读取和一次写入,即处理器只要与存储模块进行两次交互,相比于传统技术而言,处理器与存储模块的交互次数减少了一半,从而提高了压缩加密的效率,降低了一半的系统带宽。
相应的,本申请实施例提供的另一种数据处理装置中,将解密组件和解压组件进行桥接,使解密组件和解压组件之间可以进行数据传输,解密组件可以将经过解密的解密数据传输至解压组件,通过解压组件实现对解密数据的解压,因此在解密解压过程中,处理器只需对存储模块进行一次读取和一次写入即可。在图2中,参考图2(b)所示,图2(b)为本申请实施例提供的数据处理方法中实现解密解压时处理器和存储模块的交互示意图。处理器响应解密解压指令,进行如下步骤:1)从存储模块中读取待处理数据,对待处理数据进行解密,得到解密数据,再对解密数据进行解压,得到解压数据;2)将解压数据写入存储模块。本申请实施例中,实现解密解压时,处理器只需要进行一次读取和一次写入,即处理器只要与存储模块进行两次交互,相比于传统技术而言,处理器与存储模块的交互次数减少了一半,从而提高了解密解压的效率,降低了一半的系统带宽。
参考图3所示,为本申请实施例提供的一种数据处理装置的结构框图,该装置包括:数据输入逻辑120、控制逻辑110、压缩组件130、加密组件140和数据输出逻辑150。其中,控制逻辑110分别与数据输入逻辑120、压缩组件130、加密组件140和数据输出逻辑150连接,数据输入逻辑120与压缩组件130连接,压缩组件130与加密组件140连接,加密组件140与数据输出逻辑150连接。
控制逻辑110用于响应压缩加密指令,对数据输入逻辑120、压缩组件130、加密组件140和数据输出逻辑150进行控制。压缩加密指令是用于指示对存储模块100中存储的待处理数据进行压缩加密的指令。在操作系统层面,压缩加密指令可以通过APP发送,调用相关组件来执行压缩加密指令,例如驱动层的内核(Kernel)。
响应于压缩加密指令,控制逻辑110可以控制数据输入逻辑120从存储模块100中读取待处理数据,实际操作中,可以调用Zlib APP接口从存储模块100中读取待处理数据。
存储模块100可以包括存储器和/或缓存池,其中存储器中存储有待处理数据和程序代码等,缓存池中可以存储有待处理数据、压缩数据和加密数据等,以提高数据读取速度和写入速度。
该过程中,待处理数据可以是存储模块100中存储的未经压缩加密的原始数据,待处理数据可以是单个文件,也可以是多个文件,还可以是包括一个或多个文件的文件夹等。待处理数据的文件类型可以是文本、表格、邮件、数据库数据和应用程序等类型的至少一种。待处理数据的文件格式与待处理数据的文件类型相对应,例如文本数据的格式可以是文档(doc)、文本文件(txt)等,表格数据的格式可以是xls等,邮件数据的格式可以是eml、msg等,数据库数据的格式可以是db(database)等,应用程序数据的格式可以是可执行程序(executable program,EXE)等。
待处理数据也可以是存储模块100中存储的经过压缩和/或加密、且需要进一步压缩和加密的数据,例如待处理数据为音频文件时,可以为动态影像专家压缩标准音频层面3(moving picture experts group audio layer III,mp3)等经过压缩的数据的格式,待处理数据也可以是其他经过压缩或加密的数据,且具有其他数据格式。
在压缩加密指令中,可以携带有待处理数据的首位地址和数据长度,此时,数据输入逻辑120可以根据待处理数据的首位地址和数据长度从存储模块100中读取待处理数据。在待处理数据为多个文件时,压缩加密指令中还可以携带有多个首位地址和与首位地址对应的多个数据长度,以便数据输入逻辑120读取待处理数据。
在本申请实施例中,若读取的待处理数据的长度较大时,可选的,数据处理装置还可以包括分片逻辑,对待处理数据进行分片处理,即将待处理数据切分为多个数据段,每个数据段为一个分片数据。参考图4所示,在对待处理数据进行分片之后,可以得到多个分片数据,每个分片数据的长度均较小,这样就可以同时对多个分片数据进行压缩加密,提高压缩加密的效率。
在数据输入逻辑120读取待处理数据后,控制逻辑110可以控制数据输入逻辑120将读取的待处理数据输入至压缩组件130,以便压缩组件130对待处理数据进行压缩处理。
在本申请实施例提供的数据处理装置中,还可以包括第一格式变换逻辑,第一格式变换逻辑连接在数据输入逻辑120和压缩组件130之间,用于对数据输入逻辑120输出的待处理数据进行格式处理,将待处理数据的格式由原格式变换为预设格式,预设格式为与压缩组件130匹配的格式。例如可以通过对每个待处理数据加入保护信息来保护数据完整性。
控制逻辑110可以控制第一格式变换逻辑对待处理数据进行格式变换,并在格式变换后,将处理后的预设格式的待处理数据发送至压缩组件130。
在压缩组件130获取到待处理数据后,控制逻辑110控制压缩组件130对待处理数据按照压缩算法进行压缩处理,其中,数据压缩是按照压缩算法对数据进行处理,用比未经压缩的数据更少的比特来表示信息的过程。
常见的压缩算法例如LZ(Lempel-Ziv)77算法或哈尔曼(Huffman)算法等,具体的,压缩加密指令中可以携带压缩算法的标识,压缩组件130根据压缩算法的标识选择对应的解压算法。对待处理数据进行压缩处理,形成压缩数据,压缩数据的格式例如可以是ZIP、ZLIB等。例如对文本、表格、邮件、数据库数据、应用程序等数据进行压缩,可以得到ZIP格式的压缩数据。
在对待处理数据进行压缩后,参考图4所示,压缩组件130还可以为压缩后的数据增加压缩头,形成压缩数据,压缩头中可以包括对压缩数据校验的校验结果,以便通过压缩头的校验结果实现对压缩数据的错误检测,压缩头中还可以包括对数据的描述。
在对待处理数据进行压缩后,控制逻辑110可以控制压缩组件130将压缩后的压缩数据传输至加密组件140,以便加密组件140通过加密算法对压缩数据进行加密。
加密组件140在获取到压缩数据后,控制逻辑110可以控制加密组件140通过加密算法对压缩数据进行加密。其中数据加密就是对原来为明文的数据按照某种加密算法进行处理,使其成为不可读的密文,合法接收者之外的其他人或设备较难获取到加密前的为明文的数据,数据传输和存储的安全性随之提高。
常见的加密算法例如数据加密标准(data encryption standard,DES)、三重数据加密算法(triple DES,3DES)、信息-摘要算法5(message-digest algorithm 5,MD5)、RSA(Rivest-Shamir-Adleman)算法等。在压缩加密指令中,可以携带的加密算法的标识,加密组件140可以根据加密算法的标识选择对应的加密算法。
实际操作中,可以通过加密密钥的方式来对压缩数据进行加密,密钥可以是对称密钥,即可以使用同一个密钥进行加密和解密,密钥也可以是非对称密钥,即可以通过公开密钥进行加密,通过私用密钥去解密。加密密钥可以存储于存储模块100中,在压缩加密指令中还可以携带有加密密钥的存储位置。在本申请实施例中,数据处理装置还包括密钥输入逻辑,密钥输入逻辑与加密组件140和控制逻辑110连接,用于根据加密密钥的存储位置,从存储模块100中读取加密密钥。具体的,控制逻辑110控制密钥输入逻辑从存储模块100中读取加密密钥,以便加密组件140利用密钥输入逻辑读取的加密密钥对压缩数据进行加密。
在本申请实施例中,已经完成压缩的压缩数据可以不写入存储模块100中,压缩组件130可以向加密组件140发送压缩数据,以便加密组件140对压缩数据进行加密。在此基础上,为了进一步提高压缩加密的效率,在对读取的待处理数据中的部分待处理数据进行压缩后,控制逻辑110还可以判断已经完成压缩的压缩数据的数据量是否大于或等于第一阈值,第一阈值是可以进行加密的最低的数据量,例如可以是16字节(Byte)。若压缩数据的数据量大于或等于第一阈值,则控制逻辑110可以控制加密组件140对已经完成压缩的压缩数据进行加密,得到加密数据。
也就是说,本申请实施例中,可以在有部分待处理数据完成压缩后,通过加密组件140对形成的压缩数据进行加密,从而实现压缩组件130的压缩操作和加密组件140的加密操作的并行处理,而不必等到所有的待处理数据均完成压缩过程后再进行压缩数据的加密。举例来说,若当前已有第一部分的待处理数据完成压缩,形成第一部分的压缩数据,若第一部分的压缩数据的数据量为16Byte,达到了第一阈值16Byte,则可以对第一部分的压缩数据进行加密处理,在此同时,第二部分的待处理数据正在进行压缩处理,对第一部分的压缩数据进行加密和对第二部分的待处理数据进行压缩可以同步进行,实现压缩加密的效率的进一步提升。
在对压缩数据完成加密后,形成加密数据,加密组件140将加密数据传输至数据输出逻辑150。控制逻辑110控制数据输出逻辑150将形成的加密数据写入存储模块100,加密数据的写入位置可以是原来待处理数据的存储位置,也可以是其他未被使用的存储位置。实际操作中,可以通过调用开放式安全套接层协议(Open Secure Sockets Layer,OpenSLL)接口将加密后的数据写入存储模块100。
在本申请实施例提供的数据处理装置中,还可以包括第二格式变换逻辑,其中,第二格式变换逻辑连接在数据输出逻辑150和加密组件140之间,在对压缩数据完成加密后,控制逻辑110还可以控制加密组件140将加密数据传输至第二格式变换逻辑,通过控制逻辑110控制第二格式变换逻辑将加密数据的格式变换为原格式,以便在需要该加密数据时能够方便解密和解压,并将变换后的加密数据传输至数据输出模块,以便数据输出模块将原格式的加密数据写入存储模块100。
为了便于理解,参考图5所示,结合具体场景,对本申请实施例提供的数据处理装置进行说明。具体的,数据处理装置中的模块可以按照如下步骤执行:
501)APP向控制逻辑110下发压缩加密指令。
502)控制逻辑110响应压缩加密指令后,控制数据输入模块120从存储模块中读取待处理数据,并将读取的待处理数据发送给第一格式变换逻辑。
503)控制逻辑110控制第一格式变换逻辑对待处理数据进行格式变换,形成与压缩组件130对应的处理格式,并将变换格式后的待处理数据传输给压缩组件130。
504)控制逻辑110控制压缩组件130根据压缩算法对待处理数据进行压缩,形成压缩数据,并将压缩数据发送给加密组件140。
505)控制逻辑110控制密钥输入模块从存储模块100中读取加密密钥,并将读取的加密密钥发送给加密组件140。
506)控制逻辑110控制加密组件140根据加密算法,或加密算法和加密密钥对压缩数据进行加密,形成加密数据,将加密数据发送给第二格式交换逻辑。
507)控制逻辑110控制第二格式变换逻辑对加密数据进行格式变换,将经过格式变换后的加密数据发送给数据输出模块150。
508)控制逻辑110控制数据输出模块150将加密数据写入到存储模块100。
本申请实施例提供的一种数据处理装置中,数据处理装置包括:数据输入逻辑、控制逻辑、压缩组件、加密组件和数据输出逻辑,控制逻辑与数据输入逻辑、压缩组件、加密组件和数据输出逻辑连接,数据输入逻辑与压缩组件连接,压缩组件与加密组件连接,加密组件与数据输出逻辑连接,通过控制逻辑响应压缩加密指令,控制数据输入逻辑从存储模块中读取待处理数据,并将待处理数据输入到压缩组件,控制压缩组件对待处理数据进行压缩,得到压缩数据,控制加密组件对压缩数据进行加密,得到加密数据,控住数据输出逻辑将加密数据写入存储模块。在此压缩加密的过程中,在对待处理数据进行压缩后,无需将压缩数据存储至存储器中,在对压缩数据进行加密前,无需从存储器中读取压缩数据,整个过程中只需对存储器执行一次读取和一次写入即可,即处理器只要与存储模块进行两次交互,相比于传统技术,处理器与存储模块的交互次数减少了一半,提高了压缩加密的效率,降低了一半的系统带宽。此外,由于压缩组件和加密组件是独立的组件,可以在压缩数据达到一定数据量后,开始进行压缩数据的加密,使压缩和加密可以并行处理,进一步提高压缩加密的效率,降低系统带宽。
此外,在操作系统层面,传统的数据处理方式中,APP发送压缩指令,调用驱动层的Zlib APP接口从存储模块中读取待处理数据,对待处理数据进行压缩,再将压缩后的数据写入存储模块;然后APP发送加密指令,调用驱动层的OpenSLL接口从存储模块中读取压缩后的数据,对压缩后的数据进行加密,再将加密后的数据写入存储模块。也就是说,APP需要发送两次指令,即一次压缩指令和一次加密指令,分别调用Zlib APP接口和OpenSLL接口,在这个过程中需要对存储模块进行两次读取和两次写入。而本申请实施例提供的数据处理方法中,APP只需要向驱动层发送一次指令,即压缩加密指令,驱动层就可以实现对待处理数据的压缩加密过程。具体的,驱动层首先从存储模块中读取待处理数据并进行压缩,然后直接对压缩后的数据进行加密,在加密之后,将经过压缩加密后的数据写入存储模块中,在这个过程中驱动层只需要对存储模块进行一次读取和一次写入,相比于传统技术,减少了与存储模块的交互次数,提高了压缩加密的效率,降低了系统带宽。
参考图6所示,为本申请实施例提供的另一种数据处理装置的结构框图,该装置包括:数据输入逻辑220、控制逻辑210、解密组件230、解压组件240和数据输出逻辑250。其中,控制逻辑210分别与数据输入逻辑220、解密组件230、解压组件240和数据输出逻辑250连接,数据输入逻辑220与解密组件230连接,解密组件230与解压组件240连接,解压组件240与数据输出逻辑250连接。
控制逻辑210用于响应解密解压指令,对数据输入逻辑220、解密组件230、解压组件240和数据输出逻辑250进行控制。解密解压指令是用于指示对存储模块200中存储的经过压缩加密的待处理数据进行解密解压的指令。类比于压缩加密指令,解密解压指令可以通过APP发送,调用相关组件来执行解密解压指令,例如驱动层的内核(Kernel)。
控制逻辑210响应于解密解压指令,可以控制数据输入逻辑220从存储模块200中读取待处理数据,实际操作中,可以调用OpenSSL接口从存储模块200中读取待处理数据。
存储模块200可以包括存储器和/或缓存池,其中存储器中存储有待处理数据和程序代码等,缓存池中可以存储有待处理数据、压缩数据和加密数据等,以提高数据读取速度和写入速度。
该过程中,待处理数据是存储模块200中存储的经过压缩加密的数据,待处理数据可以是单个经过压缩加密的文件,也可以是多个经过压缩加密的文件,还可以是包括一个或多个经过压缩加密的文件的文件夹。待处理数据的文件格式例如可以是ZIP、ZLIB等。
在解密解压指令中,可以携带有待处理数据的首位地址和数据长度,以便数据输入逻辑220根据待处理数据的首位地址和数据长度从存储模块200中读取待处理数据。在待处理数据为多个经过压缩加密的文件时,解密解压指令中还可以携带有多个首位地址和与首位地址对应的多个数据长度。
在数据输入逻辑220读取待处理数据后,控制逻辑210控制数据输入逻辑220将读取的待处理数据传输至解密组件230,以便解密组件230对待处理数据进行解密处理。
在本申请实施例提供的数据处理装置中,还可以包括第一格式变换逻辑,第一格式变换逻辑连接在数据输入逻辑220和解密组件230之间,用于将待处理数据的格式由原格式变换为预设格式,预设格式为与解密组件230匹配的格式,具体的,可以对每个待处理数据加入保护信息来保护数据完整性。控制逻辑210控制数据输入逻辑220将读取的待处理数据传输至第一格式变换逻辑,控制第一格式变换逻辑对待处理数据进行格式变换,控制第一格式变换逻辑向解密组件230发送预设格式的待处理数据。
控制逻辑210可以控制解密组件230对待处理数据按照解密算法进行解密,形成解密数据。其中,数据解密就是对经过加密的数据通过解密算法进行处理,使其显示出本来内容的过程,解密算法是与加密算法相对应的逆算法。解密算法是与加密算法对应的,例如DES、3DES、MD5、RSA算法等,具体的,压缩加密指令中可以携带解密算法的标识,解密组件230根据解密算法的标识选择对应的解密算法。
实际操作中,若待处理数据数通过加密密钥的方式进行加密的数据,则可以通过与待处理数据的加密密钥对应的解密密钥的方式,对待处理数据进行解密,得到解密数据。具体的,密钥为对称密钥时,解密密钥与加密密钥相同,密钥为非对称密钥时,解密密钥为与公开密钥对应的私用密钥。
解密密钥可以存储在存储模块200中,在解密解压指令中还可以携带有解密密钥的存储位置。在本申请实施例中,数据控制装置还可以包括密钥输入逻辑,密钥输入逻辑与解密组件230和控制逻辑210连接,用于根据解密密钥的存储位置,从存储模块200中读取解密密钥。具体的,控制逻辑210可以控制密钥输入逻辑从存储模块200中读取解密密钥,以便解密组件230利用密钥输入逻辑读取的解密密钥对待处理数据进行解密。
在对待处理数据进行解密后,控制逻辑210控制解密组件230将解密后的解密数据传输至解压组件240,以便解压组件240通过解压算法对解密数据进行解压。
解压组件240在获取到解密数据后,控制逻辑210可以控制解压组件240通过解压算法对解密数据进行解压。其中数据解压是数据压缩的逆操作,可以恢复经过压缩的数据。例如通过对文本、表格、视频、图片、音频、应用程序等数据通过压缩可以得到ZIP格式的压缩数据,数据解压就是将ZIP格式的数据恢复到原来的格式,例如经过解压的文本数据的格式可以是doc、txt等,经过解压的表格数据的格式可以是xls等,经过解压的邮件数据格式可以是eml、msg等,经过解压的数据库数据的格式可以是db等,经过解压的应用程序数据的格式可以是EXE等。若待处理数据是对经过压缩的数据进行进一步压缩加密得到的,则相应的对待处理数据进行解密解压后的解压数据是经过压缩的数据,若待处理数据是对经过加密的数据进行进一步压缩加密得到的,则相应的对待处理数据进行解密解压后的解压数据是经过加密的数据。
解压算法例如可以是LZ77算法或Huffman算法等。具体的,解密解压指令中可以携带解压算法的标识,解压组件240可以根据解压算法的标识选择对应的解压算法。
在本申请实施例中,已经完成解密的解密数据可以不写入存储模块200中,解密组件230可以向解压组件240发送解密数据,以便解压组件240对解密数据进行解压。在此基础上,为了进一步提高解密解压的效率,在对读取的待处理数据中的部分待处理数据进行解密后,控制逻辑210还可以判断已经完成解密的解密数据的数据量是否大于或等于第二阈值,第二阈值是可以进行解压的最低的数据量,例如可以是16Byte。若解密数据的数据量大于或等于第二阈值,则控制逻辑210可以控制解压组件240对已经完成解密的解密数据进行解压,得到解压数据。
也就是说,本申请实施例中,可以在有部分待处理数据完成解密后,通过解压组件240对形成的解密数据进行解压,从而可以实现解密组件230的解密操作和解压组件240的解压操作的并行处理,而不必等到所有的待处理数据均完成解密过程后再进行解密数据的解压。举例来说,若当前已有第三部分的待处理数据完成解密,形成第三部分的解密数据,若第三部分的解密数据的数据量为16Byte,达到了第二阈值16Byte,则可以对第三部分的解密数据进行解压处理,在此同时,第四部分的待处理数据正在进行解密处理,对第三部分的解密数据进行解压和对第四部分的待处理数据进行解密可以同步进行,实现解密解压的效率的进一步提升。
在对解密数据完成解压后,形成解压数据,控制逻辑210可以控制其他组件对形成的解压数据进行处理使用,也可以控制解压组件240将解压数据传输至数据输出逻辑250,控制逻辑210控制数据输出逻辑250将形成的解压数据写入存储模块200,解压数据的写入位置可以是原来待处理数据的存储位置,也可以是其他未被使用的存储位置。
若解压数据为分片后的多个数据片段,还可以将解压数据进行合并,将合并后的数据写入存储模块200中。
在本申请实施例提供的数据处理装置中,还可以包括第二格式变换逻辑,其中,第二格式变换逻辑连接在数据输出逻辑250和解压组件240之间,在对解密数据完成解压后,控制逻辑210还可以控制解压组件240经解压数据传输至第二格式变换逻辑,通过控制逻辑210控制第二格式变换逻辑将解压数据的格式变换为原格式,以便对该解压数据时能够方便使用、压缩或加密。第二格式变换逻辑将变换格式后的解压数据传输至数据输出模块,以便数据输出模块将原格式的解压数据写入存储模块200。
为了便于理解,参考图7所示,结合具体场景,对本申请实施例提供的数据处理装置进行说明。具体的,数据处理装置中的模块可以按照以下步骤执行:
701)App向控制逻辑210下发解密解压指令。
702)控制逻辑210响应解密解压指令后,控制数据输入模块220从存储模块200中读取待处理数据,并将读取的待处理模块发送给第一格式变换逻辑。
703)控制逻辑210控制第一格式变换逻辑对待处理数据进行格式变换,形成与解密组件230对应的处理格式,并将变换格式后的待处理数据传输给解密组件240。
704)控制逻辑210控制密钥输入模块从存储模块200中读取解密密钥,并将读取的解密密钥发送给解密组件230。
705)控制逻辑210控制解密组件230根据解密算法,或解密算法和解密密钥对待处理数据进行解密,形成解密数据,并将解密数据发送给解压组件240。
706)控制逻辑210控制解压组件240根据解压算法对解密数据进行解压,形成解压数据,并将解压数据发送给第二格式变换逻辑。
707)控制逻辑210控制第二格式变换逻辑对解压数据进行格式变换,并将经过格式变换后的解压数据发给数据输出模块250。
708)控制逻辑210控制数据输出模块250将解压数据写入到存储模块200。
本申请实施例提供的另一种数据处理装置及方法中,数据处理装置包括:数据输入逻辑、控制逻辑、解密组件、解压组件和数据输出逻辑;控制逻辑分别与数据输入逻辑、解密组件、解压组件和数据输出逻辑连接,数据输入逻辑与解密组件连接,解密组件与解压组件连接,解压组件与数据输出逻辑连接;其中,控制逻辑,用于响应解密解压指令,控制数据输入逻辑从存储模块中读取待处理数据,并将待处理数据输入到解密组件;控制解密组件对待处理数据进行解密,得到解密数据;控制解压组件对解密数据进行解压,得到解压数据;以及控制数据输出逻辑将解压数据写入存储模块。在此解密解压的过程中,在对待处理数据进行解密后,无需将解密数据写入存储模块中,在对解密数据进行解压之前,也无需从存储模块中读取解密数据,整个过程只需对存储模块执行一次读取和一次写入即可,即处理器只要与存储模块进行两次交互,相比于传统技术,处理器与存储模块的交互次数减少了一半,提高了解密解压的效率,降低了一半的系统带宽。此外,由于解密和解压是独立的过程,可以在解密数据达到一定数据量后,开始进行解密数据的解压,使解密和解压可以并行处理,进一步提高解密解压的效率,降低系统带宽。
在操作系统层面,传统的数据处理方式中,APP发送解密指令,调用驱动层的OpenSLL接口从存储模块中读取待处理数据,对待处理数据进行解密,将解密后的数据写入存储模块;然后APP发送解压指令,调用驱动层的Zlib APP接口从存储模块中读取解密后的数据,对解密后的数据进行解压,再将解压后的数据写入存储模块。也就是说,APP需要发送两次指令,即一次解密指令和一次解压指令,分别调用OpenSLL接口和Zlib APP接口,在这个过程中需要对存储模块进行两次读取和两个写入。而本申请实施例提供的数据处理方法中,APP只需要向驱动层发送一次指令,即解密解压指令,驱动层就可以实现对待处理数据的解密解压过程。具体的,驱动层首先从存储模块中读取待处理数据并进行解密,然后直接对解密后的数据进行解压,在解压之后,将经过解密解压后的数据写入存储模块中,在这个过程中驱动层只需要对存储模块进行一次读取和一次写入,相比于传统技术,减少了与存储模块的交互次数,提高了解密解压的效率,降低了系统带宽。
参考图8所示,为本申请实施例提供的一种数据处理方法的流程图,该方法可以由处理器执行,具体包括以下步骤:
S101,响应压缩加密指令,从存储模块中读取待处理数据。
压缩加密指令是用于指示对存储模块中存储的待处理数据进行压缩加密的指令。在操作系统层面,压缩加密指令可以通过APP发送,调用相关组件来执行压缩加密指令,例如驱动层的内核(Kernel)。
存储模块100可以包括存储器和/或缓存池,其中存储器中存储有待处理数据和程序代码等,缓存池中可以存储有待处理数据、压缩数据和加密数据等。
该步骤中,待处理数据可以是存储模块100中存储的未经压缩加密的原始数据,也可以是存储模块100中存储的经过压缩和/或加密、且需要进一步压缩和加密的数据。待处理数据可以是单个文件,也可以是多个文件,还可以是包括一个或多个文件的文件夹等。
在压缩加密指令中,可以携带有待处理数据的首位地址和数据长度,以便根据待处理数据的首位地址和数据长度从存储模块100中读取待处理数据。在待处理数据为多个文件时,压缩加密指令中还可以携带有多个首位地址和与首位地址对应的多个数据长度。
在本申请实施例中,若读取的待处理数据的长度较大时,可选的,可以先对待处理数据进行分片处理,即将待处理数据切分为多个数据段,每个数据段为一个分片数据。
S102,对待处理数据进行压缩,得到压缩数据。
数据压缩是按照压缩算法对数据进行处理,用比未经压缩的数据更少的比特来表示信息的过程。常见的压缩算法例如LZ(Lempel-Ziv)77算法或哈尔曼(Huffman)算法等,具体的,压缩加密指令中可以携带压缩算法的标识,可以根据压缩算法的标识选择对应的解压算法。对待处理数据进行压缩处理,形成压缩数据,压缩数据的格式例如可以是ZIP、ZLIB等。例如对文本、表格、邮件、数据库数据、应用程序等数据进行压缩,可以得到ZIP格式的压缩数据。
在本申请实施例中,还可以对待处理数据进行格式处理,将待处理数据的格式由原格式变换为预设格式,预设格式为与进行压缩的组件匹配的格式。在对待处理数据进行压缩后,还可以为压缩后的数据增加压缩头。
S103,对压缩数据进行加密,得到加密数据。
数据加密就是对原来为明文的数据按照某种加密算法进行处理,使其成为不可读的密文,合法接收者之外的其他人或设备较难获取到加密前的为明文的数据,数据传输和存储的安全性随之提高。
常见的加密算法例如数据加密标准(data encryption standard,DES)、三重数据加密算法(triple DES,3DES)、信息-摘要算法5(message-digest algorithm 5,MD5)、RSA(Rivest-Shamir-Adleman)算法等。在压缩加密指令中,可以携带的加密算法的标识,以便根据加密算法的标识选择对应的加密算法。
实际操作中,可以通过加密密钥的方式来对压缩数据进行加密,密钥可以是对称密钥,即可以使用同一个密钥进行加密和解密,密钥也可以是非对称密钥,即可以通过公开密钥进行加密,通过私用密钥去解密。
加密密钥可以存储于存储模块中,在压缩加密指令中还可以携带有加密密钥的存储位置。在本申请实施例中,可以根据加密密钥的存储位置,从存储模块中读取加密密钥,以便利用密钥输入逻辑读取的加密密钥对压缩数据进行加密。
在本申请实施例中,已经完成压缩的压缩数据可以不写入存储模块中,而是对压缩数据进行加密。在此基础上,为了进一步提高压缩加密的效率,在对读取的待处理数据中的部分待处理数据进行压缩后,还可以判断已经完成压缩的压缩数据的数据量是否大于或等于第一阈值。若压缩数据的数据量大于或等于第一阈值,则对已经完成压缩的压缩数据进行加密,得到加密数据。也就是说,本申请实施例中,可以在有部分待处理数据完成压缩后,通过对形成的压缩数据进行加密,从而实现压缩操作和加密操作的并行处理,而不必等到所有的待处理数据均完成压缩过程后再进行压缩数据的加密,实现压缩加密的效率的进一步提升。
S104,将加密数据写入存储模块中。
在对压缩数据完成加密后,形成加密数据,将形成的加密数据写入存储模块,加密数据的写入位置可以是原来待处理数据的存储位置,也可以是其他未被使用的存储位置。实际操作中,可以通过调用开放式安全套接层协议(Open Secure Sockets Layer,OpenSLL)接口将加密后的数据写入存储模块。
在本申请实施例中,还可以将加密数据的格式变换为原格式,以便在需要该加密数据时能够方便解密和解压,并将变换后的加密数据写入存储模块。
本申请实施例提供的数据处理方法中,响应于压缩加密指令,从存储模块中读取待处理数据,先对读取的待处理数据进行压缩,得到压缩数据,对压缩数据进行加密,得到加密数据,将加密数据写入存储模块中。在此压缩加密的过程中,在对待处理数据进行压缩后,无需将压缩数据存储至存储模块中,在对压缩数据进行加密前,无需从存储模块中读取压缩数据,整个过程中只需对存储模块执行一次读取和一次写入即可,即处理器只要与存储模块进行两次交互,相比于传统技术,处理器与存储模块的交互次数减少了一半,提高了压缩加密的效率,降低了一半的系统带宽。此外,由于压缩和加密是独立的过程,可以在压缩数据达到一定数据量后,开始进行压缩数据的加密,使压缩和加密可以并行处理,进一步提高压缩加密的效率,降低系统带宽。
参考图9所示,为本申请实施例提供的另一种数据处理方法的流程图,该方法可以由处理器执行,具体包括以下步骤:
S201,响应解密解压指令,从存储模块中读取待处理数据。
解密解压指令是用于指示对存储模块中存储的经过压缩加密的待处理数据进行解密解压的指令。类比于压缩加密指令,解密解压指令可以通过APP发送,调用相关组件来执行解密解压指令,例如驱动层的内核(Kernel)。
存储模块200可以包括存储器和/或缓存池,其中存储器中存储有待处理数据和程序代码等,缓存池中可以存储有待处理数据、压缩数据和加密数据等。
该步骤中,待处理数据是存储模块中存储的经过压缩加密的数据,待处理数据可以是单个经过压缩加密的文件,也可以是多个经过压缩加密的文件,还可以是包括一个或多个经过压缩加密的文件的文件夹。
在解密解压指令中,可以携带有待处理数据的首位地址和数据长度,以便根据待处理数据的首位地址和数据长度从存储模块中读取待处理数据。在待处理数据为多个经过压缩加密的文件时,解密解压指令中还可以携带有多个首位地址和与首位地址对应的多个数据长度。
S202,对待处理数据进行解密,得到解密数据。
数据解密就是对经过加密的数据通过解密算法进行处理,使其显示出本来内容的过程,解密算法是与加密算法相对应的逆算法。
在获取到待处理数据后,可以通过解密算法对待处理数据进行解密。解密算法是与加密算法对应的,例如DES、3DES、MD5、RSA算法等,具体的,压缩加密指令中可以携带解密算法的标识,根据解密算法的标识选择对应的解密算法。
实际操作中,若待处理数据数通过加密密钥的方式进行加密的数据,则可以通过与待处理数据的加密密钥对应的解密密钥的方式,对待处理数据进行解密,得到解密数据。具体的,密钥为对称密钥时,解密密钥与加密密钥相同,密钥为非对称密钥时,解密密钥为与公开密钥对应的私用密钥。
解密密钥可以存储在存储模块中,在解密解压指令中还可以携带有解密密钥的存储位置,在本申请实施例中,从存储模块中读取解密密钥,以便利用密钥输入逻辑读取的解密密钥对待处理数据进行解密。
在对待处理数据进行解密之前,还可以对待处理数据的格式进行处理,将待处理数据的格式由原格式变换为预设格式,预设格式为与进行解密的组件相匹配的格式。例如通过对每个待处理数据加入保护信息来保护数据完整性。
S203,对解密数据进行解压,得到解压数据。
数据解压是数据压缩的逆操作,可以恢复经过压缩的数据。
在获取到解密数据后,可以对解密数据按照解压算法进行解压,例如可以是LZ77算法或Huffman算法等。具体的,解密解压指令中可以携带解压算法的标识,根据解压算法的标识选择对应的解压算法。
在本申请实施例中,已经完成解密的解密数据不写入存储模块中,而是发送至执行数据解压的模块中,对解密数据进行解压。在此基础上,为了进一步提高解密解压的效率,在对读取的待处理数据中的部分待处理数据进行解密后,还可以判断已经完成解密的解密数据的数据量是否大于或等于第二阈值,。若解密数据的数据量大于或等于第二阈值,则可以对已经完成解密的解密数据进行解压,得到解压数据。也就是说,本申请实施例中,可以在有部分待处理数据完成解密后,对形成的解密数据进行解压,从而可以实现解密操作和解压操作的并行处理,而不必等到所有的待处理数据均完成解密过程后再进行解密数据的解压,实现解密解压的效率的进一步提升。
S204,将解压数据写入存储模块中。
在对解密数据完成解压后,可以对形成的解压数据进行处理使用,也可以将形成的解压数据写入存储模块,解压数据的写入位置可以是原来待处理数据的存储位置,也可以是其他未被使用的存储位置。
若解压数据为分片后的多个数据片段,还可以将解压数据进行合并,将合并后的数据写入存储模块中。在将解压数据写入存储模块之前,还可以对解压数据的格式进行调整,若解压数据的格式为预设格式,则可以将解压数据的格式变换为原格式,以便对该解压数据时能够方便使用、压缩或加密。
本申请实施例提供的数据处理方法中,响应于解密解压指令,从存储模块中读取待处理数据,先对待处理数据进行解密,得到解密数据,再对解密数据进行解压,得到解压数据,将解压数据写入存储模块中。在此解密解压的过程中,在对待处理数据进行解密后,无需将解密数据写入存储模块中,在对解密数据进行解压之前,也无需从存储模块中读取解密数据,整个过程只需对存储模块执行一次读取和一次写入即可,即处理器只要与存储模块进行两次交互,相比于传统技术,处理器与存储模块的交互次数减少了一半,提高了解密解压的效率,降低了一半的系统带宽。此外,由于解密和解压是独立的过程,可以在解密数据达到一定数据量后,开始进行解密数据的解压,使解密和解压可以并行处理,进一步提高解密解压的效率,降低系统带宽。
接下来介绍本申请实施例中的数据处理设备。请参阅图10所示,数据处理设备1000包括:
接收器1001、发射器1002、处理器1003和存储器1004(其中数据处理设备1000中的处理器1003的数量可以一个或多个,图10中以一个处理器为例)。在本申请的一些实施例中,接收器1001、发射器1002、处理器1003和存储器1004可通过总线或其它方式连接,其中,图10中以通过总线连接为例。
存储器1004可以包括只读存储器和随机存取存储器,并向处理器1003提供指令和数据。存储器1004的一部分还可以包括NVRAM。存储器1004存储有操作系统和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,操作指令可包括各种操作指令,用于实现各种操作。操作系统可包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
处理器1003控制终端设备的操作,处理器1003还可以称为CPU。具体的应用中,数据处理设备的各个组件通过总线系统耦合在一起,其中总线系统除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都称为总线系统。
上述本申请实施例揭示的方法可以应用于处理器1003中,或者由处理器1003实现。处理器1003可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1003中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1003可以是通用处理器、DSP、ASIC、FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1004,处理器1003读取存储器1004中的信息,结合其硬件完成上述方法的步骤。
接收器1001可用于接收输入的数字或字符信息,以及产生与用户面装置的相关设置以及功能控制有关的信号输入,发射器1002可包括显示屏等显示设备,发射器1002可用于通过外接接口输出数字或字符信息。
本申请实施例中,接收器1001和发射器1002用于实现数据收发。处理器1003,用于通过接收器1001和发射器1002实现数据收发,完成前述数据处理设备所执行的一种数据处理方法的过程和另一种数据处理方法的过程。
本申请实施例还提供一种计算机可读存储介质,用于存储程序代码,该程序代码用于执行前述各个实施例的一种数据处理方法中的任意一种实施方式。
本申请实施例还提供另一种计算机可读存储介质,用于存储程序代码,该程序代码用于执行前述各个实施例的另一种数据处理方法中的任意一种实施方式。
本申请实施例还提供一种包括指令的计算机程序产品,当其在计算机上运行时,使得计算机执行前述各个实施例的一种数据处理方法中的任意一种实施方式。
本申请实施例还提供另一种包括指令的计算机程序产品,当其在计算机上运行时,使得计算机执行前述各个实施例的另一种数据处理方法中的任意一种实施方式。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (32)

1.一种数据处理装置,其特征在于,所述装置包括:数据输入逻辑、控制逻辑、压缩组件、加密组件和数据输出逻辑;所述控制逻辑分别与所述数据输入逻辑、所述压缩组件、所述加密组件和所述数据输出逻辑连接,所述数据输入逻辑与所述压缩组件连接,所述压缩组件与所述加密组件连接,所述加密组件与所述数据输出逻辑连接;
其中,所述控制逻辑,用于响应压缩加密指令,控制所述数据输入逻辑从存储模块中读取待处理数据,并将所述待处理数据输入到所述压缩组件;控制所述压缩组件对所述待处理数据进行压缩,得到压缩数据;控制所述加密组件对所述压缩数据进行加密,得到加密数据;以及控制所述数据输出逻辑将所述加密数据写入所述存储模块。
2.根据权利要求1所述的装置,其特征在于,所述压缩加密指令中携带有所述待处理数据的首位地址和数据长度;
所述从存储模块中读取待处理数据包括:
根据所述待处理数据的首位地址和数据长度从所述存储模块中读取所述待处理数据。
3.根据权利要求1所述的装置,其特征在于,所述控制所述加密组件对所述压缩数据进行加密包括:
若所述压缩数据的数据量大于或等于第一阈值,则控制所述加密组件对所述压缩数据进行加密。
4.根据权利要求1所述的装置,其特征在于,所述装置还包括密钥输入逻辑,与所述加密组件和所述控制逻辑连接;
所述控制所述加密组件对所述压缩数据进行加密包括:
控制所述密钥输入逻辑从所述存储模块中读取加密密钥,并控制所述加密组件利用所述加密密钥对所述压缩数据进行加密。
5.根据权利要求1-4任意一项所述的装置,其特征在于,所述装置还包括第一格式变换逻辑,所述第一格式变换逻辑连接在所述数据输入逻辑和所述压缩组件之间;
所述控制逻辑,还用于控制所述第一格式变换逻辑将所述待处理数据的格式由原格式变换为预设格式,并向所述压缩组件发送所述预设格式的待处理数据,所述预设格式为所述压缩组件匹配的格式。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括第二格式变换逻辑,所述第二格式变换逻辑连接在所述数据输出逻辑和所述加密组件之间;
所述控制逻辑,还用于控制所述第二格式变换逻辑将所述加密数据的格式变换为所述原格式,并向所述数据输出逻辑发送所述原格式的加密数据。
7.根据权利要求1所述的装置,其特征在于,所述存储模块包括:
存储器和/或缓存池。
8.一种数据处理装置,其特征在于,所述装置包括:数据输入逻辑、控制逻辑、解密组件、解压组件和数据输出逻辑;所述控制逻辑分别与所述数据输入逻辑、所述解密组件、所述解压组件和所述数据输出逻辑连接,所述数据输入逻辑与所述解密组件连接,所述解密组件与所述解压组件连接,所述解压组件与所述数据输出逻辑连接;
其中,所述控制逻辑,用于响应解密解压指令,控制所述数据输入逻辑从存储模块中读取待处理数据,并将所述待处理数据输入到所述解密组件;控制所述解密组件对所述待处理数据进行解密,得到解密数据;控制所述解压组件对所述解密数据进行解压,得到解压数据;以及控制所述数据输出逻辑将所述解压数据写入所述存储模块。
9.根据权利要求8所述的装置,其特征在于,所述解密解压指令中携带有所述待处理数据的首位地址和数据长度;
所述从存储模块中读取待处理数据包括:
根据所述待处理数据的首位地址和数据长度从所述存储模块中读取所述待处理数据。
10.根据权利要求8所述的装置,其特征在于,所述装置还包括密钥输入逻辑,与所述解密组件和所述控制逻辑连接;
所述对所述待处理数据进行解密包括:
控制所述密钥输入逻辑从所述存储模块中读取解密密钥,并控制所述解密组件利用所述解密密钥对所述待处理数据进行解密。
11.根据权利要求8-10任意一项所述的装置,其特征在于,所述装置还包括第一格式变换逻辑,所述第一格式变换逻辑连接在所述数据输入逻辑和所述解密组件之间;
所述控制逻辑,还用于控制所述第一格式变换逻辑将所述待处理数据的格式由原格式变换为预设格式,并向所述解密组件发送所述预设格式的待处理数据,所述预设格式为与所述解密组件匹配的格式。
12.根据权利要求11所述的装置,其特征在于,所述装置还包括第二格式变换逻辑,所述第二格式变换逻辑连接在所述数据输出逻辑和所述解压组件之间;
所述控制逻辑,还用于控制所述第二格式变换逻辑将所述解压数据的格式变换为所述原格式,并向所述数据输出逻辑发送所述原格式的解压数据。
13.根据权利要求8所述的装置,其特征在于,所述存储模块包括:
存储器和/或缓存池。
14.一种数据处理方法,其特征在于,所述方法包括:
响应压缩加密指令,从存储模块中读取待处理数据;
对所述待处理数据进行压缩,得到压缩数据;
对所述压缩数据进行加密,得到加密数据;
将所述加密数据写入所述存储模块中。
15.根据权利要求14所述的方法,其特征在于,所述压缩加密指令中携带有所述待处理数据的首位地址和数据长度;
所述从存储模块中读取待处理数据包括:
根据所述待处理数据的首位地址和数据长度从所述存储模块中读取所述待处理数据。
16.根据权利要求14所述的方法,其特征在于,所述对所述压缩数据进行加密包括:
若所述压缩数据的数据量大于或等于第一阈值,则对所述压缩数据进行加密。
17.根据权利要求14所述的方法,其特征在于,所述对所述压缩数据进行加密包括:
从所述存储模块中读取加密密钥,并利用所述加密密钥对所述压缩数据进行加密。
18.根据权利要求14至17任意一项所述的方法,其特征在于,所述方法还包括:
将所述待处理数据的格式由原格式变换为预设格式,所述预设格式为所述压缩组件匹配的格式。
19.根据权利要求18所述的方法,其特行在于,所述方法还包括:
将所述加密数据的格式变换为所述原格式。
20.根据权利要求14所述的方法,其特征在于,所述存储模块包括:
存储器和/或缓存池。
21.一种数据处理方法,其特征在于,所述方法包括:
响应解密解压指令,从存储模块中读取待处理数据;
对所述待处理数据进行解密,得到解密数据;
对所述解密数据进行解压,得到解压数据;
将所述解压数据写入所述存储模块中。
22.根据权利要求21所述的方法,其特征在于,所述解密解压指令中携带有所述待处理数据的首位地址和数据长度;
所述从存储模块中读取待处理数据包括:
根据所述待处理数据的首位地址和数据长度从所述存储模块中读取所述待处理数据。
23.根据权利要求21所述的方法,其特征在于,所述对所述待处理数据进行解密包括:
从所述存储模块中读取解密密钥,利用所述解密密钥对所述待处理数据进行解密。
24.根据权利要求21-23任意一项所述的方法,其特征在于,所述方法还包括:
将所述待处理数据的格式由原格式变换为预设格式,所述预设格式为与所述解密组件匹配的格式。
25.根据权利要求24所述的方法,其特征在于,所述方法还包括:
将所述解压数据的格式变换为所述原格式。
26.根据权利要求21所述的方法,其特征在于,所述存储模块包括:
存储器和/或缓存池。
27.一种数据处理设备,其特征在于,所述设备包括:处理器和存储器;
所述存储器,用于存储指令;
所述处理器,用于执行所述存储器中的所述指令,执行如权利要求14至20中任一项所述的方法。
28.一种数据处理设备,其特征在于,所述设备包括:处理器和存储器;
所述存储器,用于存储指令;
所述处理器,用于执行所述存储器中的所述指令,执行如权利要求21至26中任一项所述的方法。
29.一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如权利要求14-20任意一项所述的方法。
30.一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如权利要求21-26任意一项所述的方法。
31.一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如权利要求14-20任意一项所述的方法。
32.一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如权利要求21-26任意一项所述的方法。
CN201810576152.4A 2018-06-06 2018-06-06 一种数据处理装置及方法 Pending CN110568992A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201810576152.4A CN110568992A (zh) 2018-06-06 2018-06-06 一种数据处理装置及方法
PCT/CN2019/075037 WO2019233118A1 (zh) 2018-06-06 2019-02-14 一种数据处理装置及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810576152.4A CN110568992A (zh) 2018-06-06 2018-06-06 一种数据处理装置及方法

Publications (1)

Publication Number Publication Date
CN110568992A true CN110568992A (zh) 2019-12-13

Family

ID=68769503

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810576152.4A Pending CN110568992A (zh) 2018-06-06 2018-06-06 一种数据处理装置及方法

Country Status (2)

Country Link
CN (1) CN110568992A (zh)
WO (1) WO2019233118A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190342093A1 (en) * 2019-06-28 2019-11-07 Siddhartha Chhabra Converged cryptographic engine

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW561752B (en) * 2001-03-21 2003-11-11 Infineon Technologies Ag Processor assembly for security-relevant applications and method for performing security-relevant applications
CN101622606A (zh) * 2006-12-06 2010-01-06 弗森多系统公司(dba弗森-艾奥) 用于作为大容量、非易失性存储器的高速缓存的固态存储器的装置、系统和方法
CN101646168A (zh) * 2009-08-24 2010-02-10 深圳华为通信技术有限公司 数据加密方法、解密方法及移动终端
CN102306114A (zh) * 2010-09-25 2012-01-04 广东电子工业研究院有限公司 基于云存储的数据定时备份和恢复方法
US20120102455A1 (en) * 2010-10-26 2012-04-26 Lsi Corporation System and apparatus for hosting applications on a storage array via an application integration framework
CN103218572A (zh) * 2012-01-23 2013-07-24 国际商业机器公司 用于在数据处理系统中访问数据的方法和设备
CN103620690A (zh) * 2011-04-29 2014-03-05 Lsi公司 加密传输固态盘控制器
CN103902932A (zh) * 2014-03-27 2014-07-02 杭州师范大学 支持usb型存储设备的数据加解密的装置及方法
CN104410683A (zh) * 2014-11-21 2015-03-11 四川神琥科技有限公司 一种数据备份方法
CN104516834A (zh) * 2013-09-26 2015-04-15 英特尔公司 在永久存储器中的数据存储
CN106250783A (zh) * 2016-08-31 2016-12-21 天津南大通用数据技术股份有限公司 一种数据库数据加密、解密方法及装置
CN106506518A (zh) * 2016-11-25 2017-03-15 天津津航计算技术研究所 大数据安全传输的加解密模块
CN106533652A (zh) * 2015-09-15 2017-03-22 中兴通讯股份有限公司 一种基于xts-sm4的存储加解密方法及装置
CN106559427A (zh) * 2016-11-22 2017-04-05 台州库得软件有限公司 一种数据存储及数据传输系统
CN108073353A (zh) * 2016-11-15 2018-05-25 华为技术有限公司 一种数据处理的方法及装置

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW561752B (en) * 2001-03-21 2003-11-11 Infineon Technologies Ag Processor assembly for security-relevant applications and method for performing security-relevant applications
CN101622606A (zh) * 2006-12-06 2010-01-06 弗森多系统公司(dba弗森-艾奥) 用于作为大容量、非易失性存储器的高速缓存的固态存储器的装置、系统和方法
CN101646168A (zh) * 2009-08-24 2010-02-10 深圳华为通信技术有限公司 数据加密方法、解密方法及移动终端
CN102306114A (zh) * 2010-09-25 2012-01-04 广东电子工业研究院有限公司 基于云存储的数据定时备份和恢复方法
US20120102455A1 (en) * 2010-10-26 2012-04-26 Lsi Corporation System and apparatus for hosting applications on a storage array via an application integration framework
CN103620690A (zh) * 2011-04-29 2014-03-05 Lsi公司 加密传输固态盘控制器
CN103218572A (zh) * 2012-01-23 2013-07-24 国际商业机器公司 用于在数据处理系统中访问数据的方法和设备
CN104516834A (zh) * 2013-09-26 2015-04-15 英特尔公司 在永久存储器中的数据存储
CN103902932A (zh) * 2014-03-27 2014-07-02 杭州师范大学 支持usb型存储设备的数据加解密的装置及方法
CN104410683A (zh) * 2014-11-21 2015-03-11 四川神琥科技有限公司 一种数据备份方法
CN106533652A (zh) * 2015-09-15 2017-03-22 中兴通讯股份有限公司 一种基于xts-sm4的存储加解密方法及装置
CN106250783A (zh) * 2016-08-31 2016-12-21 天津南大通用数据技术股份有限公司 一种数据库数据加密、解密方法及装置
CN108073353A (zh) * 2016-11-15 2018-05-25 华为技术有限公司 一种数据处理的方法及装置
CN106559427A (zh) * 2016-11-22 2017-04-05 台州库得软件有限公司 一种数据存储及数据传输系统
CN106506518A (zh) * 2016-11-25 2017-03-15 天津津航计算技术研究所 大数据安全传输的加解密模块

Also Published As

Publication number Publication date
WO2019233118A1 (zh) 2019-12-12

Similar Documents

Publication Publication Date Title
US20200153604A1 (en) Data storage method, device, related equipment and cloud system for hybrid cloud
US10958416B2 (en) Encrypted and compressed data transmission with padding
US8645713B2 (en) Encrypting method, recording medium of encrypting program, decrypting method, and recording medium of decrypting program
US20170286213A1 (en) Protecting data stored on a solid state drive
US20130010949A1 (en) Method and system for compressing and encrypting data
KR20110025359A (ko) 블록 단위 데이터 압축 및 복원 방법 및 그 장치
CN108881454B (zh) 文件传输方法、移动终端及存储介质
US8402282B2 (en) Method and device for encrypting and decrypting digital data
CN102804800A (zh) 带有加密段的段去除重复系统
US8677123B1 (en) Method for accelerating security and management operations on data segments
CN108737353B (zh) 一种基于数据分析系统的数据加密方法及装置
CN110568992A (zh) 一种数据处理装置及方法
CN106817216B (zh) 一种基于Zlib库和AES算法的ZIP包解压方法
US10230391B2 (en) Compression and/or encryption of a file
US20070263876A1 (en) In-memory compression and encryption
CN113704206B (zh) 一种元数据的处理方法、装置、电子设备及存储介质
US20150169561A1 (en) Method and apparatus for storing a data file
JP3302086B2 (ja) 圧縮暗号化装置
KR20230023586A (ko) 데이터 분할 및 암호화를 위한 시스템, 방법 및 장치
CN114174978B (zh) 密钥可压缩加密的方法和系统
KR20150105405A (ko) 컴퓨팅 가능하고, 대형이며, 가변적이며 안전한 치환 박스를 위한 방법 및 장치
CN114521260A (zh) 在不可信存储系统中进行数据去重和压缩的方法和系统
CN116391185A (zh) 用于在不可信存储装置中进行差异去重的方法和系统
US10505713B2 (en) Compression and/or encryption of a file
JP5403708B2 (ja) 情報処理装置、データ処理方法およびプログラム

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20191213