CN112464263A - 一种数据加密方法、系统、设备及介质 - Google Patents
一种数据加密方法、系统、设备及介质 Download PDFInfo
- Publication number
- CN112464263A CN112464263A CN202011406927.7A CN202011406927A CN112464263A CN 112464263 A CN112464263 A CN 112464263A CN 202011406927 A CN202011406927 A CN 202011406927A CN 112464263 A CN112464263 A CN 112464263A
- Authority
- CN
- China
- Prior art keywords
- data
- target data
- data block
- calculation
- block
- 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
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000004364 calculation method Methods 0.000 claims abstract description 86
- 238000005520 cutting process Methods 0.000 claims abstract description 19
- 238000004422 calculation algorithm Methods 0.000 claims description 11
- 238000003860 storage Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 4
- 238000009826 distribution Methods 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 5
- 239000000284 extract Substances 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000005336 cracking Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Images
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/602—Providing cryptographic facilities or services
-
- 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/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Storage Device Security (AREA)
Abstract
本申请公开了一种数据加密方法、系统、设备及介质,包括:对数据大小大于预设阈值的目标数据进行切割,得到多个目标数据块;针对每个所述目标数据块生成对应的第一计算请求,得到多个第一计算请求;将多个所述第一计算请求放置于消息队列中,以便计算集群中的每个计算节点当自身空闲时,则从所述消息队列中获取一个所述第一计算请求,并基于该第一计算请求对相应的所述目标数据块进行加密计算,得到对应的加密数据块;对所述目标数据的全部所述加密数据块进行拼接,得到所述目标数据的加密数据。能够避免数据量分配不均,造成部分节点闲置的问题,从而提升数据加密效率。
Description
技术领域
本申请涉及大数据技术领域,特别涉及一种数据加密方法、系统、设备及介质。
背景技术
近年来云计算和大数据技术呈现飞速发展的状态,越来越多的服务以云的形式提供,越来越多的数据也从本地机房迁移到云服务器上。在享受云服务便捷的同时,更要保证数据的安全性,通常采取的方法是将数据加密存储。
加密是一个非常耗时的过程,对于如此庞大的数据量,通常采取分布式加密,将待加密的数据分发给不同的加密节点进行加密计算,这种方式对于数据粒度(单个数据或文件)较小的场景效率提升较为明显。而对于一些数据粒度较大,或者数据粒度不均匀的情况效率提升幅度有限,因为每个加密节点加密的数据大小不同,数据大的节点计算时间长,数据小的节点计算完后处于闲置状态,计算资源未得到充分利用。
发明内容
有鉴于此,本申请的目的在于提供一种数据加密方法、系统、设备及介质,能够避免数据量分配不均,造成部分节点闲置的问题,从而提升数据加密效率。其具体方案如下:
第一方面,本申请公开了一种数据加密方法,包括:
对数据大小大于预设阈值的目标数据进行切割,得到多个目标数据块;
针对每个所述目标数据块生成对应的第一计算请求,得到多个第一计算请求;
将多个所述第一计算请求放置于消息队列中,以便计算集群中的每个计算节点当自身空闲时,则从所述消息队列中获取一个所述第一计算请求,并基于该第一计算请求对相应的所述目标数据块进行加密计算,得到对应的加密数据块;
对所述目标数据的全部所述加密数据块进行拼接,得到所述目标数据的加密数据。
可选的,所述对数据大小大于预设阈值的目标数据进行切割,得到多个目标数据块,包括:
对数据大小大于预设阈值的目标数据块以预设长度进行顺序切割,得到多个数据子块;
在每个所述数据子块头部拼接该数据子块的序号以及第一长度信息,得到对应的所述目标数据块。
可选的,所述在每个所述数据子块头部拼接该数据子块的序号以及第一长度信息,得到对应的所述目标数据块之后,还包括:
将所述目标数据块保存至预设数据库的预设数据表中;
其中,所述预设数据表包括目标数据块的唯一标识字段,用于保存所述目标数据块的唯一标识。
可选的,所述针对每个所述目标数据块生成对应的第一计算请求,包括:
针对每个所述目标数据块生成对应的第一计算请求;其中,所述第一计算请求中包括对应的所述目标数据块的所述唯一标识,以便所述计算节点根据所述唯一标识从所述预设数据库中取出所述目标数据块,然后对所述目标数据块进行加密计算。
可选的,所述第一计算请求中还包括秘钥算法、秘钥,以便所述计算节点利用所述秘钥算法、所述秘钥对所述目标数据块进行加密计算。
可选的,所述预设数据表中还包括数据块状态字段以及秘钥字段,所述数据块状态字段用于保存所述目标数据块的状态,所述秘钥字段用于保存所述目标数据块的秘钥。
可选的,所述从所述消息队列中获取一个所述第一计算请求,并基于该第一计算请求对相应的所述目标数据块进行加密计算,得到对应的加密数据块,包括:
从所述消息队列中获取一个所述第一计算请求,并基于该第一计算请求从目标数据块提取出所述数据子块,对所述数据子块进行加密计算,得到加密子块;
计算所述加密子块的数据长度,得到第二长度信息;
将所述目标数据块中的所述数据子块替换为所述加密子块、所述第一长度信息替换为所述第二长度信息,得到对应的所述加密数据块。
可选的,所述方法,还包括:
对所述加密数据进行切割,得到多个待解密数据块;
针对每个所述待解密数据块生成对应的第二计算请求,得到多个第二计算请求;
将多个所述第二计算请求放置于消息队列中,以便计算集群中的每个计算节点当自身空闲时,则从所述消息队列中获取一个所述第二计算请求,并基于该第二计算请求对相应的所述待解密数据块进行解密计算,得到对应的解密数据块;
对所述加密数据的全部所述解密数据块进行拼接,得到所述的加密数据的明文数据。
第二方面,本申请公开了一种数据加密系统,包括:
数据处理中心,用于数据对数据大小大于预设阈值的目标数据进行切割,得到多个目标数据块;针对每个所述目标数据块生成对应的第一计算请求,得到多个第一计算请求;将多个所述第一计算请求放置于消息队列中;
计算集群,集群中的每个计算节点当自身空闲时,则从所述消息队列中获取一个所述第一计算请求,并基于该第一计算请求对相应的所述目标数据块进行加密计算,得到对应的加密数据块;
所述数据处理中心还用于对所述目标数据的全部所述加密数据块进行拼接,得到所述目标数据的加密数据。
第三方面,本申请公开了一种计算机可读存储介质,用于保存计算机程序,所述计算机程序被处理器执行时实现前述的数据加密方法。
可见,本申请先对数据大小大于预设阈值的目标数据进行切割,得到多个目标数据块,然后针对每个所述目标数据块生成对应的第一计算请求,得到多个第一计算请求,之后将多个所述第一计算请求放置于消息队列中,以便计算集群中的每个计算节点当自身空闲时,则从所述消息队列中获取一个所述第一计算请求,并基于该第一计算请求对相应的所述目标数据块进行加密计算,得到对应的加密数据块,最后对所述目标数据的全部所述加密数据块进行拼接,得到所述目标数据的加密数据。也即,本申请将粒度较大的数据进行切割,使大粒度数据通过计算集群的多个节点进行计算,能够避免数据量分配不均,造成部分节点闲置的问题,从而提升数据加密效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种数据加密方法流程图;
图2为本申请公开的一种具体的数据切割流程图;
图3为本申请公开的一种具体的数据块加密流程图;
图4为本申请公开的一种具体的加密数据块拼接示意图;
图5为本申请公开的一种数据解密方法流程图;
图6为本申请公开的一种具体的加密数据切割流程图;
图7为本申请公开的一种具体的加密数据解密流程图;
图8为本申请公开的一种具体的解密后数据块拼接流程图;
图9为本申请公开的一种数据加密系统结构示意图;
图10为本申请公开的一种具体的加密系统结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
加密是一个非常耗时的过程,对于庞大的数据量,通常采取分布式加密,将待加密的数据分发给不同的加密节点进行加密计算,这种方式对于数据粒度(单个数据或文件)较小的场景效率提升较为明显。而对于一些数据粒度较大,或者数据粒度不均匀的情况效率提升幅度有限,因为每个加密节点加密的数据大小不同,数据大的节点计算时间长,数据小的节点计算完后处于闲置状态,计算资源未得到充分利用。为此,本申请提供了一种数据加密方案,能够避免数据量分配不均,造成部分节点闲置的问题,从而提升数据加密效率。
参见图1所示,本申请实施例公开了一种数据加密方法,包括:
步骤S11:对数据大小大于预设阈值的目标数据进行切割,得到多个目标数据块。
在具体的实施方式中,可以对数据大小大于预设阈值的目标数据块以预设长度进行顺序切割,得到多个数据子块;在每个所述数据子块头部拼接该数据子块的序号以及第一长度信息,得到对应的所述目标数据块。
进一步的,所述在每个所述数据子块头部拼接该数据子块的序号以及第一长度信息,得到对应的所述目标数据块之后,还包括:将所述目标数据块保存至预设数据库的预设数据表中;其中,所述预设数据表包括目标数据块的唯一标识字段,用于保存所述目标数据块的唯一标识。
并且,所述预设数据表中还包括数据块状态字段以及秘钥字段,所述数据块状态字段用于保存所述目标数据块的状态,所述秘钥字段用于保存所述目标数据块的秘钥。
另外,所述预设数据表中还可以包括大粒度数据标识字段,用于存储所述目标数据块所属的所述目标数据的唯一标识。
可以理解的是,所述预设数据表包括数据字段,用于存储所述目标数据块。
例如,参见图2所示,图2为本申请实施例公开的一种具体的数据切割流程图。
步骤101:将大粒度数据即大小大于预设预设值的数据,按指定长度(Size)切割,除了最后一块长度小于等于Size,其他数据块大小都是Size。
步骤102:在每个数据块前拼接次序(Num)即序号和长度(Size)信息,其中,Num和Size占用字节长度固定,例如Num占用5个字节,那么第一块的Num值为N0001,Size占用5个字节,单位为兆(MB),设定切割长度为10MB,那么第一块的Size值为S0010,拼接起来就是N0001S0010+data。
步骤103:将拼接好的数据块存入数据库,其数据库表中至少包含以下5个字段,uuid、parentuuid、status、data、key。其中,uuid为该数据块的唯一标识;parentuuid为该数据块所属的原大粒度数据唯一标识;status表示该数据块的状态,例如0代表刚切割未计算的状态,1代表加密完成的状态,2代表解密完成的状态;data为数据块的内容;key为加密数据块的密钥。
步骤S12:针对每个所述目标数据块生成对应的第一计算请求,得到多个第一计算请求。
在具体的实施方式中,可以针对每个所述目标数据块生成对应的第一计算请求;其中,所述第一计算请求中包括对应的所述目标数据块的所述唯一标识,以便所述计算节点根据所述唯一标识从所述预设数据库中取出所述目标数据块,然后对所述目标数据块进行加密计算。
并且,所述第一计算请求中还包括秘钥算法、秘钥,以便所述计算节点利用所述秘钥算法、所述秘钥对所述目标数据块进行加密计算。其中,秘钥从前述数据表中获取。
进一步的,在具体的实施方式中,所述第一计算请求还可以包括数据类型,具体为切割的数据块或未切割的完整数据,也即,本申请实施例不切割数据大小小于等于预设阈值的数据,直接生成对应的第一计算请求。
并且,所述第一计算请求还可以包括计算类型,具体为加密。
在具体的实施方式中,第一计算请求的消息格式可以如下所示:
其中,action表示计算的类型:加密(encrypt)、解密(decrypt);key为加解密密钥;algorithm为密钥算法;datatype为数据类型:切割的数据块(block)、未切割的完整数据(null);datauuid为数据块/完整数据在数据库中存储的唯一标识,计算节点根据该值从数据库中取数据进行加解密计算。
步骤S13:将多个所述第一计算请求放置于消息队列中,以便计算集群中的每个计算节点当自身空闲时,则从所述消息队列中获取一个所述第一计算请求,并基于该第一计算请求对相应的所述目标数据块进行加密计算,得到对应的加密数据块。
在具体的实施方式中,每个计算节点从所述消息队列中获取一个所述第一计算请求,并基于该第一计算请求从目标数据块提取出所述数据子块,对所述数据子块进行加密计算,得到加密子块;计算所述加密子块的数据长度,得到第二长度信息;将所述目标数据块中的所述数据子块替换为所述加密子块、所述第一长度信息替换为所述第二长度信息,得到对应的所述加密数据块。
其中,所述消息队列可以通过ActiveMQ、RabbitMQ、ZeroMQ等较为流行的消息中间件来实现。并且,所述消息队列可以的部署于独立于计算集群预设服务器中,
需要指出的是,本实施例的数据块结构,在数据块前拼接次序、长度信息,增加了密文复杂度,一定程度上提高了密文的破解难度提高了加密系统的安全性。
例如,参见图3所示,图3为本申请实施例公开的一种具体的数据块加密流程图。
步骤201:从数据块中提取待加密数据Datanum。
步骤202:对提取的数据Datanum进行加密计算,得到密文encDatanum。
步骤203:计算密文encDatanum的长度eSize,然后更新数据块中的Size、Datanum为eSize、encDatanum。
步骤S14:对所述目标数据的全部所述加密数据块进行拼接,得到所述目标数据的加密数据。
例如,参见图4所示,图4为本申请实施例公开的一种具体的加密数据块拼接示意图。
将加密计算完成后的数据块按照次序从小到大进行拼接,组成最终的加密数据。
进一步的,在得到所述目标数据的加密数据之后,为了节省存储空间,还可以将所述加密数据块从所述预设数据库中删除。从预设数据库中读取出加密数据块完成拼接后,数据库中已不需要存储加密数据块。
可见,本申请实施例先对数据大小大于预设阈值的目标数据进行切割,得到多个目标数据块,然后针对每个所述目标数据块生成对应的第一计算请求,得到多个第一计算请求,之后将多个所述第一计算请求放置于消息队列中,以便计算集群中的每个计算节点当自身空闲时,则从所述消息队列中获取一个所述第一计算请求,并基于该第一计算请求对相应的所述目标数据块进行加密计算,得到对应的加密数据块,最后对所述目标数据的全部所述加密数据块进行拼接,得到所述目标数据的加密数据。也即,本申请将粒度较大的数据进行切割,使大粒度数据通过计算集群的多个节点进行计算,能够避免数据量分配不均,造成部分节点闲置的问题,从而提升数据加密效率。
进一步的,参见图5所示,本申请公开了一种数据解密方法,包括:
步骤S21:对所述加密数据进行切割,得到多个待解密数据块。
例如,参见图6所示,本申请实施例公开了一种具体的加密数据切割流程图。从头到尾顺序读取加密数据,依次读取次序(Num)、长度(Size),然后向后读取Size长度的密文,组成一个数据块,依次类推切割整个加密数据,得到多个待解密数据块。
步骤S22:针对每个所述待解密数据块生成对应的第二计算请求,得到多个第二计算请求。
在具体的实施方式中,第二计算请求的消息格式可以如下所示:
步骤S23:将多个所述第二计算请求放置于消息队列中,以便计算集群中的每个计算节点当自身空闲时,则从所述消息队列中获取一个所述第二计算请求,并基于该第二计算请求对相应的所述待解密数据块进行解密计算,得到对应的解密数据块。
例如,参见图7所示,图7为本申请实施例公开的一种具体的加密数据解密流程图。
步骤301:从数据块中提取待解密数据encDatanum。
步骤302:对提取的数据encDatanum进行解密计算,得到明文数据Datanum。
步骤303:计算明文Datanum的长度Size,然后更新数据块中的eSize、encDatanum为Size、Datanum。
步骤S24:对所述加密数据的全部所述解密数据块进行拼接,得到所述的加密数据的明文数据。
也即,得到前述目标数据。
例如,参见图8所示,图8为本申请实施例公开的一种具体的解密后数据块拼接流程图。
从解密后的数据块中提取明文数据块Data,按序号从小到大将明文数据块拼接起来,组成解密后的整个数据内容。
也即,本实施可以先对加密数据切割,从头到尾顺序读取加密数据,依次读取次序(Num)、长度(Size),然后向后读取Size长度的密文,组成一个数据块,依次类推切割整个加密数据,得到多个待解密数据块。然后将对应的第二计算请求投递到消息队列中,等待计算集群去接收处理。集群中各节点从消息队列中接收第二计算请求,根据datauuid值从数据中获取待解密数据块,然后从待解密数据块中提取待解密数据即前述加密子块进行解密,之后计算解密后明文长度,将解密前数据块中的长度、数据替换为解密后的明文长度和明文,覆盖数据库中解密前的数据块内容。然后从解密数据块中提取到明文数据,将明文数据按次序从小到大拼接起来,组成整个明文数据,然后将解密过程中在数据库中保存的切割数据块删除,避免无用数据占用存储空间。
参见图9所示,本申请实施例公开了一种数据加密系统,包括:
数据处理中心11,用于数据对数据大小大于预设阈值的目标数据进行切割,得到多个目标数据块;针对每个所述目标数据块生成对应的第一计算请求,得到多个第一计算请求;将多个所述第一计算请求放置于消息队列中;
计算集群12,集群中的每个计算节点当自身空闲时,则从所述消息队列中获取一个所述第一计算请求,并基于该第一计算请求对相应的所述目标数据块进行加密计算,得到对应的加密数据块;
所述数据处理中心11还用于对所述目标数据的全部所述加密数据块进行拼接,得到所述目标数据的加密数据。
可见,本申请实施例先对数据大小大于预设阈值的目标数据进行切割,得到多个目标数据块,然后针对每个所述目标数据块生成对应的第一计算请求,得到多个第一计算请求,之后将多个所述第一计算请求放置于消息队列中,以便计算集群中的每个计算节点当自身空闲时,则从所述消息队列中获取一个所述第一计算请求,并基于该第一计算请求对相应的所述目标数据块进行加密计算,得到对应的加密数据块,最后对所述目标数据的全部所述加密数据块进行拼接,得到所述目标数据的加密数据。也即,本申请实施例将粒度较大的数据进行切割,使大粒度数据通过计算集群的多个节点进行计算,能够避免数据量分配不均,造成部分节点闲置的问题,从而提升数据加密效率。
其中,所述数据处理中心11,具体用于对数据大小大于预设阈值的目标数据块以预设长度进行顺序切割,得到多个数据子块;在每个所述数据子块头部拼接该数据子块的序号以及第一长度信息,得到对应的所述目标数据块。
所述数据处理中心11,还用于将所述目标数据块保存至预设数据库的预设数据表中;其中,所述预设数据表包括目标数据块的唯一标识字段,用于保存所述目标数据块的唯一标识。
所述数据处理中心11,具体用于针对每个所述目标数据块生成对应的第一计算请求;其中,所述第一计算请求中包括对应的所述目标数据块的所述唯一标识,以便所述计算节点根据所述唯一标识从所述预设数据库中取出所述目标数据块,然后对所述目标数据块进行加密计算。
其中,所述第一计算请求中还包括秘钥算法、秘钥,以便所述计算节点利用所述秘钥算法、所述秘钥对所述目标数据块进行加密计算。
并且,所述预设数据表中还包括数据块状态字段以及秘钥字段,所述数据块状态字段用于保存所述目标数据块的状态,所述秘钥字段用于保存所述目标数据块的秘钥。
所述计算节点具体用于从所述消息队列中获取一个所述第一计算请求,并基于该第一计算请求从目标数据块提取出所述数据子块,对所述数据子块进行加密计算,得到加密子块;计算所述加密子块的数据长度,得到第二长度信息;将所述目标数据块中的所述数据子块替换为所述加密子块、所述第一长度信息替换为所述第二长度信息,得到对应的所述加密数据块。
进一步的,所示数据处理中心11,还用于对所述加密数据进行切割,得到多个待解密数据块;针对每个所述待解密数据块生成对应的第二计算请求,得到多个第二计算请求;将多个所述第二计算请求放置于消息队列中;相应的,计算集群中每个计算节点还用于当自身空闲时,则从所述消息队列中获取一个所述第二计算请求,并基于该第二计算请求对相应的所述待解密数据块进行解密计算,得到对应的解密数据块。相应的,所述数据处理中心11还用于对所述加密数据的全部所述解密数据块进行拼接,得到所述的加密数据的明文数据。
例如,参见图10所示,本申请公开了一种具体的加密系统结构示意图。其中,计算集群中包括多个work计算节点。通过数据处理中心将大数据中粒度较大的数据切割成多个小粒度数据,之后进行封装后生成多个计算请求投递到消息队列中,计算集群从消息队列中接收计算请求,对切割后的小粒度数据进行加解密计算,之后数据中心将计算得到的数据按顺序拼接起来,实现了充分利用集群算力,提高大数据加密集群计算效率的目的。
并且,加密系统具有可配性。通过调整切割块长度Size大小和分布式计算节点的数量,实现加密系统性能的灵活配置。
进一步的,本申请实施例还公开了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述实施例公开的数据加密方法。
关于上述数据加密方法的具体过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的一种数据加密方法、系统、设备及介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种数据加密方法,其特征在于,包括:
对数据大小大于预设阈值的目标数据进行切割,得到多个目标数据块;
针对每个所述目标数据块生成对应的第一计算请求,得到多个第一计算请求;
将多个所述第一计算请求放置于消息队列中,以便计算集群中的每个计算节点当自身空闲时,则从所述消息队列中获取一个所述第一计算请求,并基于该第一计算请求对相应的所述目标数据块进行加密计算,得到对应的加密数据块;
对所述目标数据的全部所述加密数据块进行拼接,得到所述目标数据的加密数据。
2.根据权利要求1所述的数据加密方法,其特征在于,所述对数据大小大于预设阈值的目标数据进行切割,得到多个目标数据块,包括:
对数据大小大于预设阈值的目标数据块以预设长度进行顺序切割,得到多个数据子块;
在每个所述数据子块头部拼接该数据子块的序号以及第一长度信息,得到对应的所述目标数据块。
3.根据权利要求2所述的数据加密方法,其特征在于,所述在每个所述数据子块头部拼接该数据子块的序号以及第一长度信息,得到对应的所述目标数据块之后,还包括:
将所述目标数据块保存至预设数据库的预设数据表中;
其中,所述预设数据表包括目标数据块的唯一标识字段,用于保存所述目标数据块的唯一标识。
4.根据权利要求3所述的数据加密方法,其特征在于,所述针对每个所述目标数据块生成对应的第一计算请求,包括:
针对每个所述目标数据块生成对应的第一计算请求;其中,所述第一计算请求中包括对应的所述目标数据块的所述唯一标识,以便所述计算节点根据所述唯一标识从所述预设数据库中取出所述目标数据块,然后对所述目标数据块进行加密计算。
5.根据权利要求4所述的数据加密方法,其特征在于,所述第一计算请求中还包括秘钥算法、秘钥,以便所述计算节点利用所述秘钥算法、所述秘钥对所述目标数据块进行加密计算。
6.根据权利要求3所述的数据加密方法,其特征在于,所述预设数据表中还包括数据块状态字段以及秘钥字段,所述数据块状态字段用于保存所述目标数据块的状态,所述秘钥字段用于保存所述目标数据块的秘钥。
7.根据权利要求2所述的数据加密方法,其特征在于,所述从所述消息队列中获取一个所述第一计算请求,并基于该第一计算请求对相应的所述目标数据块进行加密计算,得到对应的加密数据块,包括:
从所述消息队列中获取一个所述第一计算请求,并基于该第一计算请求从目标数据块提取出所述数据子块,对所述数据子块进行加密计算,得到加密子块;
计算所述加密子块的数据长度,得到第二长度信息;
将所述目标数据块中的所述数据子块替换为所述加密子块、所述第一长度信息替换为所述第二长度信息,得到对应的所述加密数据块。
8.根据权利要求1所述的数据加密方法,其特征在于,还包括:
对所述加密数据进行切割,得到多个待解密数据块;
针对每个所述待解密数据块生成对应的第二计算请求,得到多个第二计算请求;
将多个所述第二计算请求放置于消息队列中,以便计算集群中的每个计算节点当自身空闲时,则从所述消息队列中获取一个所述第二计算请求,并基于该第二计算请求对相应的所述待解密数据块进行解密计算,得到对应的解密数据块;
对所述加密数据的全部所述解密数据块进行拼接,得到所述的加密数据的明文数据。
9.一种数据加密系统,其特征在于,包括:
数据处理中心,用于数据对数据大小大于预设阈值的目标数据进行切割,得到多个目标数据块;针对每个所述目标数据块生成对应的第一计算请求,得到多个第一计算请求;将多个所述第一计算请求放置于消息队列中;
计算集群,集群中的每个计算节点当自身空闲时,则从所述消息队列中获取一个所述第一计算请求,并基于该第一计算请求对相应的所述目标数据块进行加密计算,得到对应的加密数据块;
所述数据处理中心还用于对所述目标数据的全部所述加密数据块进行拼接,得到所述目标数据的加密数据。
10.一种计算机可读存储介质,其特征在于,用于保存计算机程序,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述的数据加密方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011406927.7A CN112464263A (zh) | 2020-12-04 | 2020-12-04 | 一种数据加密方法、系统、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011406927.7A CN112464263A (zh) | 2020-12-04 | 2020-12-04 | 一种数据加密方法、系统、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112464263A true CN112464263A (zh) | 2021-03-09 |
Family
ID=74805488
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011406927.7A Pending CN112464263A (zh) | 2020-12-04 | 2020-12-04 | 一种数据加密方法、系统、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112464263A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102025650A (zh) * | 2010-06-04 | 2011-04-20 | 西本新干线股份有限公司 | 企业服务总线的消息处理系统和消息处理方法 |
CN103942107A (zh) * | 2014-04-23 | 2014-07-23 | 杭州电子科技大学 | 一种分布式加密系统 |
CN111241088A (zh) * | 2018-11-09 | 2020-06-05 | 北京京东尚科信息技术有限公司 | 数据写入方法、数据查询方法、装置及设备 |
CN111310222A (zh) * | 2019-11-20 | 2020-06-19 | 金现代信息产业股份有限公司 | 文件加密方法 |
CN111782404A (zh) * | 2020-07-21 | 2020-10-16 | 深圳市金蝶天燕云计算股份有限公司 | 一种数据处理方法及相关设备 |
-
2020
- 2020-12-04 CN CN202011406927.7A patent/CN112464263A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102025650A (zh) * | 2010-06-04 | 2011-04-20 | 西本新干线股份有限公司 | 企业服务总线的消息处理系统和消息处理方法 |
CN103942107A (zh) * | 2014-04-23 | 2014-07-23 | 杭州电子科技大学 | 一种分布式加密系统 |
CN111241088A (zh) * | 2018-11-09 | 2020-06-05 | 北京京东尚科信息技术有限公司 | 数据写入方法、数据查询方法、装置及设备 |
CN111310222A (zh) * | 2019-11-20 | 2020-06-19 | 金现代信息产业股份有限公司 | 文件加密方法 |
CN111782404A (zh) * | 2020-07-21 | 2020-10-16 | 深圳市金蝶天燕云计算股份有限公司 | 一种数据处理方法及相关设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019218717A1 (zh) | 一种分布式存储方法、装置、计算机设备及存储介质 | |
US9253164B2 (en) | Distribution of portions of content | |
US10764261B2 (en) | System and method for enabling a scalable public-key infrastructure on a smart grid network | |
CN109120998B (zh) | 媒体数据传输方法、装置及存储介质 | |
CN110661748B (zh) | 一种日志的加密方法、解密方法及装置 | |
CN112182630B (zh) | 一种对称可搜索加密方法、装置、设备及介质 | |
CN113032357A (zh) | 文件的存储方法、装置和服务器 | |
CN112615899A (zh) | 一种大文件传输方法、装置及系统 | |
CN115499249B (zh) | 一种基于区块链分布式加密的文件存储方法及系统 | |
CN111800257A (zh) | 一种3d模型加密传输方法、解密方法 | |
US20110154015A1 (en) | Method For Segmenting A Data File, Storing The File In A Separate Location, And Recreating The File | |
CN114584278A (zh) | 数据同态加密方法及装置、数据传输方法及装置 | |
CN112866299B (zh) | 移动边缘计算网络的加密数据去重与分享装置及方法 | |
KR102418090B1 (ko) | 원본 파일을 여러개로 분할하고 분할된 파일들을 암호화하고 암호화된 파일들을 복호화하여 원본 파일을 복원하는 컴퓨터 프로그램과 그 방법 | |
CN111931204A (zh) | 用于分布式系统的加密去重存储方法、终端设备 | |
US20230289345A1 (en) | Searchable encryption system | |
CN112464263A (zh) | 一种数据加密方法、系统、设备及介质 | |
CN108768994B (zh) | 数据匹配方法、装置及计算机可读存储介质 | |
CN115997212A (zh) | 加密信息检索 | |
CN115085983A (zh) | 数据处理方法、装置、计算机可读存储介质和电子设备 | |
CN111061682B (zh) | 一种数据缓存方法、读取方法、电子设备及存储介质 | |
CN115459967A (zh) | 一种基于可搜索加密的密文数据库查询方法及系统 | |
CN111506913B (zh) | 音频加密方法和装置、存储介质及电子装置 | |
CN113014956B (zh) | 视频播放方法以及装置 | |
CN110765147B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210309 |
|
RJ01 | Rejection of invention patent application after publication |