CN112906016B - 数据处理方法、装置及电子设备 - Google Patents
数据处理方法、装置及电子设备 Download PDFInfo
- Publication number
- CN112906016B CN112906016B CN202110122273.3A CN202110122273A CN112906016B CN 112906016 B CN112906016 B CN 112906016B CN 202110122273 A CN202110122273 A CN 202110122273A CN 112906016 B CN112906016 B CN 112906016B
- Authority
- CN
- China
- Prior art keywords
- model
- data
- block
- target
- base
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 46
- 238000012545 processing Methods 0.000 claims abstract description 69
- 238000004364 calculation method Methods 0.000 claims abstract description 68
- 238000000034 method Methods 0.000 claims abstract description 66
- 230000004931 aggregating effect Effects 0.000 claims abstract description 8
- 238000005520 cutting process Methods 0.000 claims description 74
- 238000003860 storage Methods 0.000 claims description 60
- 238000004422 calculation algorithm Methods 0.000 claims description 13
- 238000004891 communication Methods 0.000 claims description 10
- 238000004090 dissolution Methods 0.000 claims description 8
- 230000008878 coupling Effects 0.000 claims description 7
- 238000010168 coupling process Methods 0.000 claims description 7
- 238000005859 coupling reaction Methods 0.000 claims description 7
- 230000007246 mechanism Effects 0.000 claims description 6
- 238000012163 sequencing technique Methods 0.000 claims description 4
- 238000009826 distribution Methods 0.000 claims description 3
- 238000000638 solvent extraction Methods 0.000 claims 2
- 238000003491 array Methods 0.000 claims 1
- 230000008569 process Effects 0.000 abstract description 25
- 230000005540 biological transmission Effects 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 24
- 230000011218 segmentation Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 4
- 230000002776 aggregation Effects 0.000 description 3
- 238000004220 aggregation Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 238000013075 data extraction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
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
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6227—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种数据处理方法、装置及电子设备,包括如果接收到针对目标数据的处理请求,获取与该目标数据关联的数据块和模型块;对该数据块和该模型块进行组合,得到多个计算单元;将该多个计算单元分配到区块链的多个计算节点,以使每个该计算节点根据分配到的计算单元,计算得到对应的单元计算结果;根据该单元计算结果确定该目标数据的处理结果。本发明实施例通过将运算模型和目标数据都切割成多个小块,使得每个模型块可以处理对应的一个数据块,以完成一部分运算,再通过聚合各个运算结果得到最终处理结果;这种方式使得计算单元无法获得完整的目标数据和完整的运算模型,提升了目标数据和运算模型在传输及运算过程中的安全性和保密性。
Description
技术领域
本发明涉及数据处理技术领域,尤其是涉及一种数据处理方法、装置及电子设备。
背景技术
数据资产指的是个人或企业拥有或者控制的,能够为企业带来未来经济利益的,以物理或电子的方式记录的数据资源。由于数据资产具有可无损复制和无限次复制的特性,导致其在传输过程中的安全问题凸显。特别是近年来随着计算机技术的进一步发展,数据隐私保护、安全共享等问题正成为信息科技的焦点问题。
另外,由于数据一旦离开原有环境,其权属问题、附带的利益关系等很难进行界定,并可能由于所有权问题不清晰导致利益分配冲突和附带的法律风险出现,数据的溯源也正成为业界关注的重点。但是,综合现有技术来看,数据溯源并不容易做到。
由于上述及其他原因,现有数据资产的共享只能通过一些简单的共享机制进行,如通过数据加解密、数据加工成标签方式、分布式计算、联邦学习等方式进行。整体而言,现有数据传输及运算的过程中,数据的提供方、数据使用方(模型提供方)和分布式计算的方式,都存在容易泄露数据,隐私保护困难的问题。
发明内容
有鉴于此,本发明的目的在于提供一种数据处理方法、装置及电子设备,可以提高目标数据和运算模型在传输及运算过程中的安全性和保密性。
第一方面,本发明实施例提供了一种数据处理方法,应用于区块链节点,该方法包括:如果接收到针对目标数据的处理请求,获取与该目标数据关联的数据块和模型块;其中,该模型块是通过对预设的运算模型切割得到,该运算模型用于处理该目标数据;该数据块是通过对该目标数据进行切割得到,且该数据块与该模型块一一对应;对该数据块和该模型块进行组合,得到多个计算单元;其中,每个该计算单元包括一个模型块和一个与该模型块对应的数据块;将该多个计算单元分配到区块链的多个计算节点,以使每个该计算节点根据分配到的计算单元,计算得到对应的单元计算结果;根据该单元计算结果确定该目标数据的处理结果。
在本发明可选的实施例中,上述获取与该目标数据关联的数据块和模型块的步骤,包括:从区块链的存储节点中,确定与该目标数据关联的目标存储节点;其中,该目标存储节点中存储有与该目标数据关联的数据块或者模型块;从该目标存储节点中查找与该目标数据关联的数据块或者模型块。
在本发明可选的实施例中,上述运算模型存储在区块链的预设模型提供节点中,该模型块由该模型提供节点切割该运算模型得到;并且,该目标数据存储在区块链的预设数据提供节点中,该数据块由该数据提供节点切割该目标数据得到。
在本发明可选的实施例中,上述模型块通过下述方式切割得到:根据该运算模型的运算逻辑,将该运算模型切割为多个模型块;其中,每个该模型块用于执行至少一种逻辑运算。
在本发明可选的实施例中,在上述根据该运算模型的运算逻辑,将该运算模型切割为多个模型块的步骤之后,该方法还包括:根据该模型块的切割次序,为每个模型块设置对应的模型序号;根据该模型序号,构建该多个模型块对应的序号数组;将该序号数组加密后发给该数据提供节点。
在本发明可选的实施例中,上述将该序号数组加密后发给该数据提供节点的步骤,包括:对该序号数组进行对称加密,得到加密后的序号数组和密钥值;将加密后的该序号数组和该密钥值,发送给该数据提供节点。
在本发明可选的实施例中,上述将加密后的该序号数组和该密钥值,发送给该数据提供节点的步骤,包括:通过区块链通信机制,将加密后的该序号数组和该密钥值,发送给该数据提供节点。
在本发明可选的实施例中,上述数据块由该数据提供节点通过下述方式切割得到:根据该密钥值解密该加密后的序号数组,得到原始的序号数组;根据解密后的该序号数组,对该目标数据进行切割,得到与该模型块对应的数据块。
在本发明可选的实施例中,在上述根据该模型块的切割次序,为每个模型块设置对应的模型序号的步骤之后,该方法还包括:为每个该模型块随机配置碱基标识;按照该模型序号对该模型块配置的碱基标识进行排序,得到第一碱基链;将该模型块组装到该第一碱基链上,使该模型块与该第一碱基链上对应的碱基标识关联,得到第一组合链;分割该第一组合链,得到多个模型单元;其中,每个模型单元包括一个模型块和与该模型块对应的碱基标识。
在本发明可选的实施例中,在上述为每个该模型块随机配置碱基标识的步骤之后,该方法还包括:从该多个模型块中选择靶点模型块;为该靶点模型块设置第一靶点标识。
在本发明可选的实施例中,上述从该多个模型块中选择靶点模型块的步骤,包括:通过预设的随机算法,从该多个模型块中选择一个模型块;将选中的模型块确定为靶点模型块。
在本发明可选的实施例中,上述分割该第一组合链,得到多个模型单元的步骤,包括:通过预设的溶解算法分割该第一组合链,得到多个模型单元。
在本发明可选的实施例中,在上述按照该模型序号对该模型块配置的碱基标识进行排序,得到第一碱基链的步骤之后,该方法还包括:对该第一碱基链进行哈希运算,得到第一哈希值;将该第一哈希值配置为该模型单元的第一标识。
在本发明可选的实施例中,在将该第一哈希值配置为该模型单元的第一标识的步骤之后,该方法还包括:打乱该多个模型单元的顺序;将打乱顺序后的该多个模型单元,存储到区块链中的至少一个存储节点。
在本发明可选的实施例中,在该为该靶点模型块设置第一靶点标识的步骤之后,该方法还包括:将该第一碱基链和该第一靶点标识发送给该数据提供节点。
在本发明可选的实施例中,对该数据提供节点切割得到的该数据块还进行下述处理:按照碱基配对的原则,构建与该第一碱基链相匹配的碱基链,并将匹配得到的碱基链确定为第二碱基链;将该数据块组装到该第二碱基链上,得到第二组合链;分割该第二组合链,得到多个数据单元;其中,每个数据单元包括一个数据块和与该数据块对应的碱基标识。
在本发明可选的实施例中,在该按照碱基配对的原则,构建与该第一碱基链相匹配的碱基链,并将匹配得到的碱基链确定为第二碱基链的步骤之后,该方法还包括:根据该第一靶点标识,确定该第二碱基链中的靶点数据块;为该靶点数据块设置第二靶点标识。
在本发明可选的实施例中,在该分割该第二组合链,得到多个数据单元的步骤之后,该方法还包括:对该第二碱基链进行哈希运算,得到第二哈希值;将该第二哈希值配置为该数据单元的第二标识。
在本发明可选的实施例中,在该将该第二哈希值配置为该数据单元的第二标识的步骤之后,该方法还包括:将该多个数据单元存储到区块链中的至少一个存储节点。
在本发明可选的实施例中,上述获取与该目标数据关联的数据块和模型块的步骤,包括:通过第一标识,从区块链的存储节点中确定与该第一标识关联的数据单元,以及,通过该第二标识,从区块链的存储节点中确定与该第二标识关联的模型单元;根据确定出的数据单元和模型单元,得到与该目标数据关联的数据块和模型块。
在本发明可选的实施例中,在上述通过该第一标识,从区块链的存储节点中确定与该第一标识关联的数据单元,以及,通过该第二标识,从区块链的存储节点中确定与该第二标识关联的模型单元的步骤之后,该方法还包括:通过该第一标识对确定出的模型单元进行组装,得到该第一组合链;并通过该第二标识对确定出的数据单元进行组装,得到该第二组合链;根据该第一靶点标识和该第二靶点标识,将该第一组合链和该第二组合链配对耦合,得到双碱基链;其中,该双碱基链中的数据块和模型块一一对应;分割该双碱基链,得到多个计算单元。
在本发明可选的实施例中,上述将该多个计算单元分配到区块链的多个计算节点的步骤,包括:从区块链的计算节点中随机选取多个计算节点,将该多个计算单元分配到选取出的该多个计算节点。
在本发明可选的实施例中,上述根据该单元计算结果得到该目标数据的处理结果的步骤,包括:接收该多个计算节点返回的多个单元计算结果;根据该模型块的切割次序,对该多个单元计算结果进行聚合,得到该目标数据的处理结果。
第二方面,本发明实施例还提供了一种数据处理装置,应用于区块链节点,该装置包括:数据块和模型块获取模块,用于如果接收到针对目标数据的处理请求,获取与该目标数据关联的数据块和模型块;其中,该模型块是通过对预设的运算模型切割得到,该运算模型用于处理该目标数据;该数据块是通过对该目标数据进行切割得到,且该数据块与该模型块一一对应;计算单元组合模块,用于对该数据块和该模型块进行组合,得到多个计算单元;其中,每个该计算单元包括一个模型块和一个与该模型块对应的数据块;计算单元分配模块,用于将该多个计算单元分配到区块链的多个计算节点,以使每个该计算节点根据分配到的计算单元,计算得到对应的单元计算结果;处理结果模块,用于根据该单元计算结果确地该目标数据的处理结果。
第三方面,本发明实施例还提供了一种电子设备,该电子设备包括处理器和存储器,该存储器存储有能够被该处理器执行的计算机可执行指令,该处理器执行该计算机可执行指令以实现上述数据处理方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现上述数据处理方法。
本发明实施例带来了以下有益效果:
本发明实施例提供的一种数据处理方法、装置及电子设备,如果接收到针对目标数据的处理请求,获取与该目标数据关联的数据块和模型块;其中,该模型块是通过对预设的运算模型切割得到,该运算模型用于处理该目标数据;该数据块是通过对该目标数据进行切割得到,且该数据块与该模型块一一对应;对该数据块和该模型块进行组合,得到多个计算单元;其中,每个该计算单元包括一个模型块和一个与该模型块对应的数据块;将该多个计算单元分配到区块链的多个计算节点,以使每个该计算节点根据分配到的计算单元,计算得到对应的单元计算结果;根据该单元计算结果确定该目标数据的处理结果。该方式中,通过将运算模型切割成多个模型块,将目标数据切割成与模型块对应的多个数据块,每个模型块可以处理对应的一个数据块,以完成一部分运算,再通过聚合各个运算结果得到最终处理结果;由于模型块和对应的数据块构成计算单元,并被分配到多个计算节点中进行分布式计算,参与计算的各个计算节点只能获得加密的一部分数据和加密的一部分运算模型,而无法获得完整的目标数据和完整的运算模型,因而提升了目标数据和运算模型在传输及运算过程中的安全性和保密性。
本公开的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本公开的上述技术即可得知。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种数据处理方法的流程示意图;
图2为本发明实施例提供的一种对运算模型进行切割的示意图;
图3为本发明实施例提供的一种对模型块与碱基进行组装的示意图;
图4为本发明实施例提供的一种模型块的序号与碱基链的对应关系示意图;
图5为本发明实施例提供的一种根据第一组合链溶解得到模型单元的示意图;
图6为本发明实施例提供的一种带有识别标识的模型单元的示意图;
图7为本发明实施例提供的一种对目标数据进行切割的示意图;
图8为本发明实施例提供的一种数据块与碱基进行组装的示意图;
图9为本发明实施例提供的一种带有识别标识的数据单元的示意图;
图10为本发明实施例提供的一种靶点配对的示意图;
图11为本发明实施例提供的一种对第一组合碱基链与第二组合碱基链进行双链耦合的示意图;
图12为本发明实施例提供的一种对双链进行溶解的示意图;
图13为本发明实施例提供的一种数据处理装置的结构示意图;
图14为本发明实施例提供的一种电子设备的结构示意图。
图标:131-数据块和模型块获取模块;132-计算单元组合模块;133-计算单元分配模块;134-处理结果模块;141-处理器;142-存储器;143-总线;144-通信接口。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,现有对数据资产的使用通常包括下述几个部分:
(1)数据资产的授权使用。通常由数据提供方通过加密方式将数据资产传递给数据使用者,数据使用者根据协议对数据解密后再使用数据,其行为受到数据提供方的审计,如数据使用的范围和深度等。
(2)原始数据不出体系,数据使用方将运算模型部署在数据资产提供者本地。此种机制下,数据使用者必须在数据提供方的数据环境中进行运算模型的加工和生产,并通过本地化部署解决数据不能输出的问题,待模型运算结束后,数据提供方将运算结果传递给数据使用方。在此种情形下,运算模型输出的可以是最终结果,也可以是模型所需的一部分标签。
(3)分布式计算。由于运算模型的运算逻辑也属于数据,也存在数据安全共享的问题,很多时候,运算模型提供方也不愿将原始模型曝露处理。模型提供方根据数据安全使用的需求出发,将运算模型分割为不同部分,交由不同的数据提供者进行计算,这一方面能保护模型逻辑不容易被逆向推导出,又能保证不同数据提供者的数据输出的只是一部分基于本地数据的标签,这些标签同样不能通过逆向推导得出原始数据,同时就保证了数据共享的安全性水平。
对于上述对数据资产的使用方式,其只能解决数据安全共享中的一部分问题,但各种方案之间还不能互通成为一个体系。另外,每种技术场景在使用中均存在一定问题,如下:
(1)数据资产授权使用的问题。
目前,数据资产安全共享的基本场景,其前提是共享的数据资产权属关系明确,数据提供方给出的数据资产保密性、敏感性不是特别强。
但派生的问题是,在加解密过程中,数据提供方仍然对数据使用方不能完全信任,一是基于对加解密技术的担心,二是基于对原始数据出库的合规性考虑等问题。同时,保密性、敏感性不强的数据资产,对应的价值也并不大,对数据使用者来说,能给出的对价也有限。因此,并不能真正成为盘活数据资产的有力途径。
(2)运算模型本地化部署在数据提供方的问题。
如果数据资产的使用者将运算模型本地化部署在数据提供方,需要在数据提供方给出的环境中建模,整个过程对数据提供方来说可见,从数据抽取到模型训练,还不能做到真正的保密。由此导致模型提供方对数据提供方未来可能泄露运算模型机密的产生担忧,况且,二者本来在很多场景中就存在竞争关系,如果数据提供方也提供建模服务的话,数据使用方将对在其环境中搭建模型较为抵触。
同时,如果运算模型本地化部署,并不利于模型运行监测和优化迭代,因此导致的额外开销(时间和经济成本增加),对数据共享产业来说并不是容易忽视的因素。
(3)分布式计算存在的问题。
分布式计算能有效解决模型分割、数据分割、数据聚合、模型聚合的问题。但究其根本来说,其主要是解决大规模计算中数据分布式存储和计算问题,并不是要解决数据安全共享问题。
如果将分布式计算技术应用于数据安全共享场景中,首先会限制了分布式计算技术的大规模运算能力发挥,造成算法资源浪费,其实其对数据资产的安全共享并没有做出针对性安排,反而容易在分布式环境中更容易出现数据泄露和隐私保护困难等问题。
综上所述,现有数据传输及运算的过程中,数据的提供方、数据使用方(模型提供方)和分布式计算的方式,都存在容易泄露数据,隐私保护困难的问题。基于此,本发明实施例提供的一种数据处理方法、装置及电子设备,该技术可以应用于对数据资产进行运算处理的各种场景中。为便于对本实施例进行理解,首先对本发明实施例所公开的一种数据处理方法进行详细介绍。
参见图1,所示为一种数据处理方法的流程示意图,其中,该方法应用于区块链节点,其中,该区块链节点可以是区块链中的调度节点,也可以是运算模型的提供节点,并且,该区块链可以是联盟链或公有链。
由图1可见,该方法包括下述步骤:
步骤S102:如果接收到针对目标数据的处理请求,获取与该目标数据关联的数据块和模型块;其中,该模型块是通过对预设的运算模型切割得到,该运算模型用于处理该目标数据;该数据块是通过对该目标数据进行切割得到,且该数据块与该模型块一一对应。
在本实施例中,上述运算模型存储在区块链的预设模型提供节点中,该模型块由该模型提供节点切割该运算模型得到;并且,该目标数据存储在区块链的预设数据提供节点中,该数据块由该数据提供节点切割该目标数据得到。
在其中一种可能的实施方式中,该模型提供节点可以根据预设的运算规则对运算模型进行逻辑运算分割,从而得到模型块。例如,预设的运算规则可以是:括号优先运算,乘除先于加减运算等。其中,对于分割得到的每一个模型块,其用于执行至少一种逻辑运算,例如,假设运算模型M最终分割得到10个模型块,则每一个模型块可以处理加、减、乘、除四种运算中的一种或多种。并且,在对运算模型进行切割后,相应地,通过数据提供节点对目标数据进行切割,得到与每个模型块对应的数据块。例如,如果对运算模型分割得到10个模型块,则相应地,对目标数据分割得到10个数据块。
在实际操作中,在分割得到模型块和数据块之后,还将模型块、数据块分布式存储到区块链中的多个存储节点,为了提升目标数据和运算模型的保密性,还可以对各个数据块和模型块加密后再进行存储。这样,在接收到针对目标数据的处理请求时,可以首先从区块链的存储节点中,确定与该目标数据关联的目标存储节点;其中,该目标存储节点中存储有与该目标数据关联的数据块或者模型块;然后,从该目标存储节点中查找与该目标数据关联的数据块或者模型块。
步骤S104:对该数据块和该模型块进行组合,得到多个计算单元;其中,每个该计算单元包括一个模型块和一个与该模型块对应的数据块。
每一个模型块都唯一对应有一个数据块,在实际操作中,可以通过为模型块和数据块设置标识,并基于各自的标识进行匹配的方式,实现对获取到的数据块和模型块进行组合,得到对应的计算单元。
步骤S106:将该多个计算单元分配到区块链的多个计算节点,以使每个该计算节点根据分配到的计算单元,计算得到对应的单元计算结果。
在其中一种可能的实施方式中,从区块链的计算节点中随机选取多个计算节点,然后将上述多个计算单元分配到选取出的该多个计算节点,由计算节点提供算力资源,通过计算单元中的模型块运算对应的数据块,得到对应的单元计算结果。
在上述方式中,由于对计算单元进行运算的计算节点是随机选取的,对于每个计算节点而言,其事先并不知道哪些数据块和模型块会进入本地的运算环境,且整个计算过程均通过加密形式进行,计算节点不能获得具体的数据和模型解密信息,即使是通过破解等方法获取相关信息,也仅仅是掌握了目标数据和/或运算模型的“片段”而已,不能“拼凑”出目标数据和运算模型的全貌。
步骤S108:根据该单元计算结果确定该目标数据的处理结果。
这里,通过下述步骤11-12确定该目标数据的处理结果:
(11)接收该多个计算节点返回的多个单元计算结果;
(12)根据该模型块的切割次序,对该多个单元计算结果进行聚合,得到该目标数据的处理结果。
例如,假设按照模型块的切割次序依次对对应的多个单元计算结果进行排序后,按序依次进行聚合,得到目标数据的处理结果。
这样,通过上述步骤S102至S108,实现了通过运算模型对目标数据的处理,与现有技术中的分布式计算方式相比,该处理过程中对目标数据和运算模型的分割、以及对单元计算结果的聚合都是依赖客观的算法法则,而不是通过中心化调度完成,从而保证了该计算过程的保密性水平比普通的分布式计算更高。
本发明实施例提供的一种数据处理方法,如果接收到针对目标数据的处理请求,获取与该目标数据关联的数据块和模型块;其中,该模型块是通过对预设的运算模型切割得到,该运算模型用于处理该目标数据;该数据块是通过对该目标数据进行切割得到,且该数据块与该模型块一一对应;对该数据块和该模型块进行组合,得到多个计算单元;其中,每个该计算单元包括一个模型块和一个与该模型块对应的数据块;将该多个计算单元分配到区块链的多个计算节点,以使每个该计算节点根据分配到的计算单元,计算得到对应的单元计算结果;根据该单元计算结果确定该目标数据的处理结果。该方式中,通过将运算模型切割成多个模型块,将目标数据切割成与模型块对应的多个数据块,每个模型块可以处理对应的一个数据块,以完成一部分运算,再通过聚合各个运算结果得到最终处理结果;由于模型块和对应的数据块构成计算单元,并被分配到多个计算节点中进行分布式计算,参与计算的各个计算节点只能获得加密的一部分数据和加密的一部分运算模型,而无法获得完整的目标数据和完整的运算模型,因而提升了目标数据和运算模型在传输及运算过程中的安全性和保密性。
在图1所示数据处理方法的基础上,本实施例进一步介绍了如何对分割得到的模型块和数据块进行存储,以及如何将存储的模型块和数据块提取出来,并根据数据块和模型块组合得到计算单元的具体实现过程。
参见图2,所示为一种对运算模型进行切割的示意图,在图2示出的实施方式中,根据该运算模型的运算逻辑将该运算模型切割为多个模型块,其中,每个模型块用于执行至少一种逻辑运算。这里,在将模型块进行存储之前,还对模型块进行下述步骤21-23的预备操作:
(21)根据该模型块的切割次序,为每个模型块设置对应的模型序号。
例如,在图2中,运算模型M经过切割得到m1、m2…mn等共n个模型块,其中,对于每个模型块的下标1、2、3…n为按照切割次序对应设置的该模型块的模型序号。在本实施例中,通过DApp(去中心化应用)实现对运算模型的切割。
(22)根据该模型序号,构建该多个模型块对应的序号数组。
由这些序号构成序号数组为N=[1、2、3、...n],其中,以“N”指代该数组,该数组N中包含了运算模型M切分和组合的信息,其顺序不能打乱。
(23)将该序号数组加密后发给该数据提供节点。
这里,可以首先对该序号数组进行对称加密,得到加密后的序号数组和密钥值(key);然后将加密后的该序号数组和该密钥值,发送给该数据提供节点。在本实施例中,通过区块链通信机制,将加密后的该序号数组和该密钥值,发送给该数据提供节点。其中,数据提供节点在接收到该序号数组和秘钥值之后,首先根据该密钥值解密该加密后的序号数组,得到原始的序号数组;然后根据解密后的该序号数组,对该目标数据进行切割,得到与该模型块对应的数据块。
进一步地,在前述步骤21-23的基础上,为提升模型块在传输和存储过程中的保密性,还对模型块进行了下述步骤31-34的处理:
(31)为每个该模型块随机配置碱基标识。
这里,碱基标识可以是A、T、G、C等,用于标识各个模型块,在其他可能的实施例中,还可以用数字、字母或其他形式标识各个模型块,在此不作限制。
(32)按照该模型序号对该模型块配置的碱基标识进行排序,得到第一碱基链。
例如,按照随机分配原则,将4种碱基“A、T、C、G”配置给每个模型块,然后按照该模型序号对各个模型块对应的碱基标识进行排序,形成一条碱基序列的链,即第一碱基链,举例n=10时,形成的第一碱基链为:mchain=A-A-T-C-C-C-G-G-G-A。
(33)将该模型块组装到该第一碱基链上,使该模型块与该第一碱基链上对应的碱基标识关联,得到第一组合链。
参见图3,所示为一种对模型块与碱基进行组装的示意图,通过组装算法将各个模型块与对应的碱基标识进行组装,得到第一组合链。显然,上述第一碱基链以及该第一组合链中均蕴含该运算模型的切割信息,包括切割顺序,以及切割得到的模型块的数目。在该实施例中,从1到10的数字n的顺序信息,完整的复制到第一碱基链中,形成一个碱基与数字的对应关系,如图4所示。
(34)分割该第一组合链,得到多个模型单元;其中,每个模型单元包括一个模型块和与该模型块对应的碱基标识。
在其中一种可能的实施方式中,可以通过预设的溶解算法分割该第一组合链,得到多个模型单元。以图3为例,启动溶解算法后,将图3中所示结构中的虚线部分溶解,使得整个结构成为一个个独立的模型块和碱基标识组合成的模型单元。如图5所示,其为根据第一组合链溶解得到模型单元的示意图,在该实施例中,分割得到10个模型单元,分别为:“1-A”、“2-A”、“3-T”、...“10-A”,并且各个模型单元相互独立。
为了提高后续对数据块和模型块重新进行组合得到计算单元时的准确性,在上述为每个该模型块随机配置碱基标识的步骤之后,还从该多个模型块中选择靶点模型块;并为该靶点模型块设置第一靶点标识。其中,在选择靶点模型块时,通过预设的随机算法,从该多个模型块中选择一个模型块;然后将选中的模型块确定为靶点模型块。在本实施例中,选择“m1-A”这个模型单元对应的模型块为靶点模型块,将其标记为“Pm:m1-A”。
进一步地,为了区别该运算模型的各个模型单元与其他运算模型的模型单元,在将各个模型单元存储到存储节点之前,还对上述第一碱基链进行哈希运算,得到第一哈希值;再将该第一哈希值配置为该模型单元的第一标识。这里,计算上述mchain的哈希值,得到hashm。如图6所示,其为一种带有识别标识的模型单元的示意图,这样,上述运算模型M对应的各个模型单元均带有相同且唯一的标识hashm。
这里,还打乱该多个模型单元的顺序;并将打乱顺序后的该多个模型单元,存储到区块链中的至少一个存储节点。通常,将该运算模型M的多个模型单元分布式存储到随机选取的多个存储节点,从而各个存储节点无法仅能获得部分模型单元,并且,即使获得了所有的模型单元,因为运算模型的切割顺序(即各个模型单元的运算顺序)通过碱基进行了加密,其无法获得,因而也无法倒推得到完整的运算模型。
下面进一步对目标数据的切割,以及对数据块的存储进行介绍。
在按照前述步骤将运算模型分割得到多个模型块,并通过为各个模型块设置模型序号,并基于模型序号和碱基对运算模型的各个模型块的运算顺序进行加密,并分布式存储到随机选取的存储节点中后,模型提供节点还将加密后的序号数组和秘钥值,以及第一碱基链和第一靶点标识发送给数据提供节点。其中,数据提供节点在接收到该序号数组和秘钥值之后,根据该密钥值解密该加密后的序号数组,得到原始的序号数组;并根据解密后的该序号数组,对该目标数据进行切割,得到与该模型块对应的数据块。这里,参见图7,所示为一种对目标数据进行切割的示意图,在图7示出的实施方式中,目标数据D被分割成d1、d2…dn共n个数据块,其中,数据块d1与模型块m1相对应,依次类推。需要指出的是,在实际的数据分割过程中,因为数据的分割不仅仅涉及到数据块的顺序问题,还要考虑数据的量纲、统计口径等问题,这些信息都需要包含在数组N中传递,因此,在实际中,N可能是一个数组,或者一个矩阵,或者一个大的信息集。
其中,数据提供节点在接收到模型提供节点发送的第一碱基链和第一靶点标识之后,按照下述步骤41-43对各个数据块进行处理:
(41)按照碱基配对的原则,构建与该第一碱基链相匹配的碱基链,并将匹配得到的碱基链确定为第二碱基链。
这里,碱基配对的原则可以根据实际需要进行设定,例如,假设碱基配对的原则为“A-T”、“C-G”,那么,基于第一碱基链,相应可得到与其配对的第二碱基链,这里为dchain=T-T-A-G-G-G-C-C-C-T。
(42)将该数据块组装到该第二碱基链上,得到第二组合链。
(43)分割该第二组合链,得到多个数据单元;其中,每个数据单元包括一个数据块和与该数据块对应的碱基标识。
参见图8,其为一种数据块与碱基进行组装的示意图,具体地,将数据块组装到第二碱基链的过程可以参考前述实施例中将模型块组装到第一碱基链的相应过程,并且,对第二组合链进行分割的过程也可以参照前述对第一组合链进行分割溶解的过程,在此不再赘述。
相应地,根据该第一靶点标识,确定该第二碱基链中的靶点数据块;并为该靶点数据块设置第二靶点标识。例如,上述第一靶点标识对应的靶点模型块为“m1-A”这个模型单元对应的模型块,则与“m1-A”对应的数据块为“d1-T”,因此,确定该数据块“d1-T”为靶点数据块,为其设置第二靶点标识为“Pd:d1-T”。
同理,为了区别该目标数据的各个数据单元与其他数据的数据单元,在将各个数据单元存储到存储节点之前,还对该第二碱基链进行哈希运算,得到第二哈希值;将该第二哈希值配置为该数据单元的第二标识。这里,计算上述dchain的哈希值,得到hashd。如图9所示为一种带有识别标识的数据单元的示意图,这样,上述目标数据D对应的各个数据单元均带有相同且唯一的标识hashd。
此外,对于数据单元的存储,也可参照模型单元的存储过程,可以将上述多个数据单元的顺序打乱后存储到区块链中随机选取的至少一个存储节点中。自此,各个存储节点仅能获得部分数量的数据单元,且因为数据切割顺序通过数组N和碱基标识进行了加密,即使存储节点获得了所有的数据单元,也无法倒推得到完整的目标数据。
进一步地,当需要通过上述运算模型对该目标数据进行处理时,可以由区块链中的调度节点,通过下述步骤51-52从存储节点中获取与该目标数据关联的数据块和模型块:
(51)通过第一标识,从区块链的存储节点中确定与该第一标识关联的数据单元,以及,通过该第二标识,从区块链的存储节点中确定与该第二标识关联的模型单元;
(52)根据确定出的数据单元和模型单元,得到与该目标数据关联的数据块和模型块。
在本实施例中,利用识别标志hashm和hashd,将分别存储与不同空间的数据单元和模型单元拎出来,形成数据单元集合和模型单元集合。
然后,通过该第一标识对确定出的模型单元进行组装,得到该第一组合链;并通过该第二标识对确定出的数据单元进行组装,得到该第二组合链。这里,根据第一标识hashm和数组序列N可以倒推得到第一碱基链,进而根据第一碱基链对各个模型单元进行组装,得到第一组合链;同理,根据第二标识hashd和数组序列N可以倒推得到第二碱基链,进而基于第二碱基链得到第二组合链。然后,根据该第一靶点标识和该第二靶点标识,将该第一组合链和该第二组合链配对耦合,得到双碱基链;其中,该双碱基链中的数据块和模型块一一对应。如图10所示即为一种靶点配对的示意图,基于靶点标识的匹配,可以提升第一组合链与第二组合链之间耦合配对的准确性。并且,参见图11,其为对第一组合碱基链与第二组合碱基链进行双链耦合的示意图,具体地,通过将识别标志脱钩(从数据单元和模型单元中擦除识别标志),以靶点为基准进行耦合(将两条链从图中三角标处进行“折叠”),将第一组合链和第二组合链上面的数据块、模型块一一对应起来,其中,每个模型块和数据块的碱基序列由预设的配对原则决定,只要靶点完成配对,组合链中的其他部分将不会出现配对错误现象。
最后,分割该双碱基链,得到多个计算单元。具体地,将双碱基链中的靶点标识去除,并启动溶解算法,将双碱基链溶解成如图12示意的结构。这样,基于上述步骤,每个数据块均与唯一的数据块对应,且每个计算单元中的模型块都能独立完成该计算单元中对应数据块的处理和运算,得到对应的计算结果。
这里,对于各个计算单元如何分配到计算节点,以及进一步根据各个计算节点计算得到的单元计算结果确定该目标数据的处理结果,可以参照前述实施例中步骤S106和步骤S108的相应描述,在此不再赘述。
本实施例介绍的数据处理方法,其通过碱基配对的方式对模型块和数据块分别进行了加密,保证了数据资产和运算模型分割后蕴含的原有信息不变,并通过随机分配运算环境增强了计算过程的保密性。
对应于图1中所示的数据处理方法,本发明实施例还提供了一种数据处理装置,参见图13,所示为本发明实施例提供的一种数据处理装置的结构示意图,其中,该装置应用于区块链节点。由图13可见,该装置包括依次连接的数据块和模型块获取模块131、计算单元组合模块132、计算单元分配模块133和处理结果模块134,其中,各个模块的功能如下:
数据块和模型块获取模块131,用于如果接收到针对目标数据的处理请求,获取与该目标数据关联的数据块和模型块;其中,该模型块是通过对预设的运算模型切割得到,该运算模型用于处理该目标数据;该数据块是通过对该目标数据进行切割得到,且该数据块与该模型块一一对应;
计算单元组合模块132,用于对该数据块和该模型块进行组合,得到多个计算单元;其中,每个该计算单元包括一个模型块和一个与该模型块对应的数据块;
计算单元分配模块133,用于将该多个计算单元分配到区块链的多个计算节点,以使每个该计算节点根据分配到的计算单元,计算得到对应的单元计算结果;
处理结果模块134,用于根据该单元计算结果确地该目标数据的处理结果。
在其中一种可能的实施方式中,上述数据块和模型块获取模块131还用于:从区块链的存储节点中,确定与该目标数据关联的目标存储节点;其中,该目标存储节点中存储有与该目标数据关联的数据块或者模型块;从该目标存储节点中查找与该目标数据关联的数据块或者模型块。
在另一种可能的实施方式中,上述运算模型存储在区块链的预设模型提供节点中,该模型块由该模型提供节点切割该运算模型得到;并且,该目标数据存储在区块链的预设数据提供节点中,该数据块由该数据提供节点切割该目标数据得到。
在另一种可能的实施方式中,上述装置还包括模型切割模块,用于:根据该运算模型的运算逻辑,将该运算模型切割为多个模型块;其中,每个该模型块用于执行至少一种逻辑运算。
在另一种可能的实施方式中,上述模型切割模块还用于:根据该模型块的切割次序,为每个模型块设置对应的模型序号;根据该模型序号,构建该多个模型块对应的序号数组;将该序号数组加密后发给该数据提供节点。
在另一种可能的实施方式中,上述模型切割模块还用于:对该序号数组进行对称加密,得到加密后的序号数组和密钥值;将加密后的该序号数组和该密钥值,发送给该数据提供节点。
在另一种可能的实施方式中,上述模型切割模块还用于:通过区块链通信机制,将加密后的该序号数组和该密钥值,发送给该数据提供节点。
在另一种可能的实施方式中,上述装置还包括数据切割模块,用于:根据该密钥值解密该加密后的序号数组,得到原始的序号数组;根据解密后的该序号数组,对该目标数据进行切割,得到与该模型块对应的数据块。
在另一种可能的实施方式中,上述模型切割模块还用于:为每个该模型块随机配置碱基标识;按照该模型序号对该模型块配置的碱基标识进行排序,得到第一碱基链;将该模型块组装到该第一碱基链上,使该模型块与该第一碱基链上对应的碱基标识关联,得到第一组合链;分割该第一组合链,得到多个模型单元;其中,每个模型单元包括一个模型块和与该模型块对应的碱基标识。
在另一种可能的实施方式中,上述模型切割模块还用于:从该多个模型块中选择靶点模型块;为该靶点模型块设置第一靶点标识。
在另一种可能的实施方式中,上述模型切割模块还用于:通过预设的随机算法,从该多个模型块中选择一个模型块;将选中的模型块确定为靶点模型块。
在另一种可能的实施方式中,上述模型切割模块还用于:通过预设的溶解算法分割该第一组合链,得到多个模型单元。
在另一种可能的实施方式中,上述模型切割模块还用于:对该第一碱基链进行哈希运算,得到第一哈希值;将该第一哈希值配置为该模型单元的第一标识。
在另一种可能的实施方式中,上述装置还包括第一存储模块,用于:打乱该多个模型单元的顺序;将打乱顺序后的该多个模型单元,存储到区块链中的至少一个存储节点。
在另一种可能的实施方式中,上述模型切割模块还用于:将该第一碱基链和该第一靶点标识发送给该数据提供节点。
在另一种可能的实施方式中,上述数据切割模块还用于:按照碱基配对的原则,构建与该第一碱基链相匹配的碱基链,并将匹配得到的碱基链确定为第二碱基链;将该数据块组装到该第二碱基链上,得到第二组合链;分割该第二组合链,得到多个数据单元;其中,每个数据单元包括一个数据块和与该数据块对应的碱基标识。
在另一种可能的实施方式中,上述数据切割模块还用于:根据该第一靶点标识,确定该第二碱基链中的靶点数据块;为该靶点数据块设置第二靶点标识。
在另一种可能的实施方式中,上述数据切割模块还用于:对该第二碱基链进行哈希运算,得到第二哈希值;将该第二哈希值配置为该数据单元的第二标识。
在另一种可能的实施方式中,上述装置还包括第二存储模块,用于:将该多个数据单元存储到区块链中的至少一个存储节点。
在另一种可能的实施方式中,上述数据块和模型块获取模块131还用于:通过第一标识,从区块链的存储节点中确定与该第一标识关联的数据单元,以及,通过该第二标识,从区块链的存储节点中确定与该第二标识关联的模型单元;根据确定出的数据单元和模型单元,得到与该目标数据关联的数据块和模型块。
在另一种可能的实施方式中,上述计算单元组合模块132还用于:通过该第一标识对确定出的模型单元进行组装,得到该第一组合链;并通过该第二标识对确定出的数据单元进行组装,得到该第二组合链;根据该第一靶点标识和该第二靶点标识,将该第一组合链和该第二组合链配对耦合,得到双碱基链;其中,该双碱基链中的数据块和模型块一一对应;分割该双碱基链,得到多个计算单元。
在另一种可能的实施方式中,上述计算单元分配模块133还用于:从区块链的计算节点中随机选取多个计算节点,将该多个计算单元分配到选取出的该多个计算节点。
在另一种可能的实施方式中,上述处理结果模块134还用于:接收该多个计算节点返回的多个单元计算结果;根据该模型块的切割次序,对该多个单元计算结果进行聚合,得到该目标数据的处理结果。
本发明实施例提供的数据处理装置,其实现原理及产生的技术效果和前述数据处理方法实施例相同,为简要描述,数据处理装置的实施例部分未提及之处,可参考前述数据处理方法实施例中相应内容。
本发明实施例还提供了一种电子设备,如图14所示,为该电子设备的结构示意图,其中,该电子设备包括处理器141和存储器142,该存储器142存储有能够被该处理器141执行的机器可执行指令,该处理器141执行该机器可执行指令以实现上述数据处理方法。
在图14示出的实施方式中,该电子设备还包括总线143和通信接口144,其中,处理器141、通信接口144和存储器142通过总线连接。
其中,存储器142可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口144(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图14中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
处理器141可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器141中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器141可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DigitalSignal Processing,简称DSP)、专用集成电路(Application Specific IntegratedCircuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器141读取存储器142中的信息,结合其硬件完成前述实施例的数据处理方法的步骤。
本发明实施例还提供了一种机器可读存储介质,该机器可读存储介质存储有机器可执行指令,该机器可执行指令在被处理器调用和执行时,该机器可执行指令促使处理器实现上述数据处理方法,具体实现可参见前述方法实施例,在此不再赘述。
本发明实施例所提供的数据处理方法、数据处理装置和电子设备的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的数据处理方法,具体实现可参见方法实施例,在此不再赘述。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (26)
1.一种数据处理方法,其特征在于,应用于区块链节点,所述方法包括:
如果接收到针对目标数据的处理请求,获取与所述目标数据关联的数据块和模型块;其中,所述模型块是通过对预设的运算模型切割得到,所述运算模型用于处理所述目标数据;所述数据块是通过对所述目标数据进行切割得到,且所述数据块与所述模型块一一对应;
对所述数据块和所述模型块进行组合,得到多个计算单元;其中,每个所述计算单元包括一个模型块和一个与所述模型块对应的数据块;
将所述多个计算单元分配到区块链的多个计算节点,以使每个所述计算节点根据分配到的计算单元,计算得到对应的单元计算结果;
根据所述单元计算结果确定所述目标数据的处理结果。
2.根据权利要求1所述的数据处理方法,其特征在于,所述获取与所述目标数据关联的数据块和模型块的步骤,包括:
从区块链的存储节点中,确定与所述目标数据关联的目标存储节点;其中,所述目标存储节点中存储有与所述目标数据关联的数据块或者模型块;
从所述目标存储节点中查找与所述目标数据关联的数据块或者模型块。
3.根据权利要求1所述的数据处理方法,其特征在于,所述运算模型存储在区块链的预设模型提供节点中,所述模型块由所述模型提供节点切割所述运算模型得到;
并且,所述目标数据存储在区块链的预设数据提供节点中,所述数据块由所述数据提供节点切割所述目标数据得到。
4.根据权利要求3所述的数据处理方法,其特征在于,所述模型块通过下述方式切割得到:
根据所述运算模型的运算逻辑,将所述运算模型切割为多个模型块;其中,每个所述模型块用于执行至少一种逻辑运算。
5.根据权利要求4所述的数据处理方法,其特征在于,在所述根据所述运算模型的运算逻辑,将所述运算模型切割为多个模型块的步骤之后,所述方法还包括:
根据所述模型块的切割次序,为每个模型块设置对应的模型序号;
根据所述模型序号,构建所述多个模型块对应的序号数组;
将所述序号数组加密后发给所述数据提供节点。
6.根据权利要求5所述的数据处理方法,其特征在于,所述将所述序号数组加密后发给所述数据提供节点的步骤,包括:
对所述序号数组进行对称加密,得到加密后的序号数组和密钥值;
将加密后的所述序号数组和所述密钥值,发送给所述数据提供节点。
7.根据权利要求6所述的数据处理方法,其特征在于,所述将加密后的所述序号数组和所述密钥值,发送给所述数据提供节点的步骤,包括:
通过区块链通信机制,将加密后的所述序号数组和所述密钥值,发送给所述数据提供节点。
8.根据权利要求6所述的数据处理方法,其特征在于,所述数据块由所述数据提供节点通过下述方式切割得到:
根据所述密钥值解密所述加密后的序号数组,得到原始的序号数组;
根据解密后的所述序号数组,对所述目标数据进行切割,得到与所述模型块对应的数据块。
9.根据权利要求5所述的数据处理方法,其特征在于,在所述根据所述模型块的切割次序,为每个模型块设置对应的模型序号的步骤之后,所述方法还包括:
为每个所述模型块随机配置碱基标识;
按照所述模型序号对所述模型块配置的碱基标识进行排序,得到第一碱基链;
将所述模型块组装到所述第一碱基链上,使所述模型块与所述第一碱基链上对应的碱基标识关联,得到第一组合链;
分割所述第一组合链,得到多个模型单元;其中,每个模型单元包括一个模型块和与所述模型块对应的碱基标识。
10.根据权利要求9所述的数据处理方法,其特征在于,在所述为每个所述模型块随机配置碱基标识的步骤之后,所述方法还包括:
从所述多个模型块中选择靶点模型块;
为所述靶点模型块设置第一靶点标识。
11.根据权利要求10所述的数据处理方法,其特征在于,所述从所述多个模型块中选择靶点模型块的步骤,包括:
通过预设的随机算法,从所述多个模型块中选择一个模型块;
将选中的模型块确定为靶点模型块。
12.根据权利要求9所述的数据处理方法,其特征在于,所述分割所述第一组合链,得到多个模型单元的步骤,包括:
通过预设的溶解算法分割所述第一组合链,得到多个模型单元。
13.根据权利要求9所述的数据处理方法,其特征在于,在所述按照所述模型序号对所述模型块配置的碱基标识进行排序,得到第一碱基链的步骤之后,所述方法还包括:
对所述第一碱基链进行哈希运算,得到第一哈希值;
将所述第一哈希值配置为所述模型单元的第一标识。
14.根据权利要求13所述的数据处理方法,其特征在于,在将所述第一哈希值配置为所述模型单元的第一标识的步骤之后,所述方法还包括:
打乱所述多个模型单元的顺序;
将打乱顺序后的所述多个模型单元,存储到区块链中的至少一个存储节点。
15.根据权利要求10所述的数据处理方法,其特征在于,在所述为所述靶点模型块设置第一靶点标识的步骤之后,所述方法还包括:
将所述第一碱基链和所述第一靶点标识发送给所述数据提供节点。
16.根据权利要求15所述的数据处理方法,其特征在于,对所述数据提供节点切割得到的所述数据块还进行下述处理:
按照碱基配对的原则,构建与所述第一碱基链相匹配的碱基链,并将匹配得到的碱基链确定为第二碱基链;
将所述数据块组装到所述第二碱基链上,得到第二组合链;
分割所述第二组合链,得到多个数据单元;其中,每个数据单元包括一个数据块和与所述数据块对应的碱基标识。
17.根据权利要求16所述的数据处理方法,其特征在于,在所述按照碱基配对的原则,构建与所述第一碱基链相匹配的碱基链,并将匹配得到的碱基链确定为第二碱基链的步骤之后,所述方法还包括:
根据所述第一靶点标识,确定所述第二碱基链中的靶点数据块;
为所述靶点数据块设置第二靶点标识。
18.根据权利要求17所述的数据处理方法,其特征在于,在所述分割所述第二组合链,得到多个数据单元的步骤之后,所述方法还包括:
对所述第二碱基链进行哈希运算,得到第二哈希值;
将所述第二哈希值配置为所述数据单元的第二标识。
19.根据权利要求18所述的数据处理方法,其特征在于,在所述将所述第二哈希值配置为所述数据单元的第二标识的步骤之后,所述方法还包括:
将所述多个数据单元存储到区块链中的至少一个存储节点。
20.根据权利要求19所述的数据处理方法,其特征在于,所述获取与所述目标数据关联的数据块和模型块的步骤,包括:
通过第一标识,从区块链的存储节点中确定与所述第一标识关联的数据单元,以及,通过所述第二标识,从区块链的存储节点中确定与所述第二标识关联的模型单元;
根据确定出的数据单元和模型单元,得到与所述目标数据关联的数据块和模型块。
21.根据权利要求20所述的数据处理方法,其特征在于,在所述通过所述第一标识,从区块链的存储节点中确定与所述第一标识关联的数据单元,以及,通过所述第二标识,从区块链的存储节点中确定与所述第二标识关联的模型单元的步骤之后,所述方法还包括:
通过所述第一标识对确定出的模型单元进行组装,得到所述第一组合链;并通过所述第二标识对确定出的数据单元进行组装,得到所述第二组合链;
根据所述第一靶点标识和所述第二靶点标识,将所述第一组合链和所述第二组合链配对耦合,得到双碱基链;其中,所述双碱基链中的数据块和模型块一一对应;
分割所述双碱基链,得到多个计算单元。
22.根据权利要求1所述的数据处理方法,其特征在于,所述将所述多个计算单元分配到区块链的多个计算节点的步骤,包括:
从区块链的计算节点中随机选取多个计算节点,将所述多个计算单元分配到选取出的所述多个计算节点。
23.根据权利要求1所述的数据处理方法,其特征在于,所述根据所述单元计算结果得到所述目标数据的处理结果的步骤,包括:
接收所述多个计算节点返回的多个单元计算结果;
根据所述模型块的切割次序,对所述多个单元计算结果进行聚合,得到所述目标数据的处理结果。
24.一种数据处理装置,其特征在于,应用于区块链节点,所述装置包括:
数据块和模型块获取模块,用于如果接收到针对目标数据的处理请求,获取与所述目标数据关联的数据块和模型块;其中,所述模型块是通过对预设的运算模型切割得到,所述运算模型用于处理所述目标数据;所述数据块是通过对所述目标数据进行切割得到,且所述数据块与所述模型块一一对应;
计算单元组合模块,用于对所述数据块和所述模型块进行组合,得到多个计算单元;其中,每个所述计算单元包括一个模型块和一个与所述模型块对应的数据块;
计算单元分配模块,用于将所述多个计算单元分配到区块链的多个计算节点,以使每个所述计算节点根据分配到的计算单元,计算得到对应的单元计算结果;
处理结果模块,用于根据所述单元计算结果确地所述目标数据的处理结果。
25.一种电子设备,其特征在于,所述电子设备包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机可执行指令,所述处理器执行所述计算机可执行指令以实现权利要求1至23任一项所述的数据处理方法。
26.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令在被处理器调用和执行时,计算机可执行指令促使处理器实现权利要求1至23任一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110122273.3A CN112906016B (zh) | 2021-01-28 | 2021-01-28 | 数据处理方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110122273.3A CN112906016B (zh) | 2021-01-28 | 2021-01-28 | 数据处理方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112906016A CN112906016A (zh) | 2021-06-04 |
CN112906016B true CN112906016B (zh) | 2023-10-27 |
Family
ID=76120097
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110122273.3A Active CN112906016B (zh) | 2021-01-28 | 2021-01-28 | 数据处理方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112906016B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111478764A (zh) * | 2019-01-24 | 2020-07-31 | 北京京东尚科信息技术有限公司 | 区块链网络中的数据处理方法、节点及存储介质 |
CN111695337A (zh) * | 2020-04-29 | 2020-09-22 | 平安科技(深圳)有限公司 | 智能面试中专业术语的提取方法、装置、设备及介质 |
WO2020220641A1 (zh) * | 2019-04-28 | 2020-11-05 | 平安科技(深圳)有限公司 | 基于点对点网络的数据存储方法、装置、介质及服务器 |
-
2021
- 2021-01-28 CN CN202110122273.3A patent/CN112906016B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111478764A (zh) * | 2019-01-24 | 2020-07-31 | 北京京东尚科信息技术有限公司 | 区块链网络中的数据处理方法、节点及存储介质 |
WO2020220641A1 (zh) * | 2019-04-28 | 2020-11-05 | 平安科技(深圳)有限公司 | 基于点对点网络的数据存储方法、装置、介质及服务器 |
CN111695337A (zh) * | 2020-04-29 | 2020-09-22 | 平安科技(深圳)有限公司 | 智能面试中专业术语的提取方法、装置、设备及介质 |
Non-Patent Citations (1)
Title |
---|
一种可扩展的区块链专用协处理器架构;马占刚;李春雷;曹喜信;;微纳电子与智能制造(第01期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112906016A (zh) | 2021-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108734028B (zh) | 基于区块链的数据管理方法、区块链节点及存储介质 | |
CN108197505B (zh) | 区块链业务数据处理方法、装置及电子设备 | |
CN103281340B (zh) | 二维码验证方法、系统、客户端、发布及云端服务器 | |
CN111797430B (zh) | 数据校验方法、装置、服务器及存储介质 | |
CN110177088B (zh) | 一种临时身份认证方法、装置及系统 | |
CN105490711A (zh) | 蓝牙自动连接方法以及主设备、从设备和系统 | |
CN110457945A (zh) | 名单查询的方法、查询方设备、服务方设备及存储介质 | |
CN111753324B (zh) | 私有数据的处理方法、计算方法及所适用的设备 | |
CN1322431C (zh) | 基于对称密钥加密保存和检索数据 | |
CN112948851A (zh) | 用户认证方法、装置、服务器及存储介质 | |
CN105871805A (zh) | 防盗链的方法及装置 | |
CN110958253A (zh) | 基于区块链的电子投票方法、设备及存储介质 | |
US9906953B2 (en) | Method and user equipment for discovering device user | |
CN105227380B (zh) | 用户数据处理的方法、装置及系统 | |
CN115694949A (zh) | 一种基于区块链的隐私数据共享方法及系统 | |
CN110266653B (zh) | 一种鉴权方法、系统及终端设备 | |
CN105187399A (zh) | 资源处理方法及装置 | |
CN116583833A (zh) | 自审计区块链 | |
CN113395271A (zh) | 一种云计算平台中数据安全访问方法及云计算平台 | |
CN112906016B (zh) | 数据处理方法、装置及电子设备 | |
EP2286610B1 (en) | Techniques for peforming symmetric cryptography | |
CN107005558A (zh) | 基于位置的用户歧义消除 | |
CN108090371B (zh) | 一种数据的处理方法、追踪方法、处理装置及追踪装置 | |
CN111090616B (zh) | 一种文件管理方法、对应装置、设备及存储介质 | |
CN112039876A (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 |