CN111538792B - 一种联盟链数据处理方法、装置和电子设备 - Google Patents
一种联盟链数据处理方法、装置和电子设备 Download PDFInfo
- Publication number
- CN111538792B CN111538792B CN202010664170.5A CN202010664170A CN111538792B CN 111538792 B CN111538792 B CN 111538792B CN 202010664170 A CN202010664170 A CN 202010664170A CN 111538792 B CN111538792 B CN 111538792B
- Authority
- CN
- China
- Prior art keywords
- node
- resource information
- transfer
- information
- double
- 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
Images
Classifications
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供了一种联盟链数据处理方法、装置和电子设备,其中,公证人节点先从联盟链的各子链中确定出双花交易判断节点,当接收到所述双花交易判断节点发送的待确定双花交易节点的转移信息时,只需对所述双花交易判断节点发送的待确定双花交易节点的转移信息进行处理,就可以确定出双花交易节点,大大减少了公证人节点的工作量,提高了公证人节点的效率。
Description
技术领域
本发明涉及计算机技术领域,具体而言,涉及一种联盟链数据处理方法、装置和电子设备。
背景技术
目前,在联盟链的应用中,为了保证联盟链中各子链之间的数据保持一致,可以通过公证人节点对各子链之间的数据进行同步。公证人节点对各子链之间的数据进行同步的过程中,公证人节点会先从各子链中的一个子链中读取到需要同步的数据,然后将数据同步写入到联盟链的其他子链中的所有节点中。
有些节点会恶意的多次对节点自身拥有的资源信息进行重复转移,造成该节点资源信息转移的数量大于该节点拥有的资源信息数量,导致双花现象的发生。
为了避免双花现象,需要公证人节点对联盟链所有节点获取到的同步数据进行分别处理后,才可以确定是否出现双花现象,整个确定双花现象的过程公证人节点的工作量较大,效率低。
发明内容
为解决上述问题,本发明实施例的目的在于提供一种联盟链数据处理方法、装置和电子设备。
第一方面,本发明实施例提供了一种联盟链数据处理方法,包括:
公证人节点获取资源信息的转移信息;所述资源信息的转移信息,包括:资源信息发送节点向资源信息接收节点转移的资源信息转移数量和资源信息发送节点的第一标识;
在联盟链上广播所述转移信息,确定出所述联盟链中各子链上的双花交易判断节点;
当接收到所述双花交易判断节点发送的待确定双花交易节点的转移信息时,获取上一次资源信息转移后存储数据的区块中记载的资源信息的状态;其中,所述资源信息的状态,记录有各节点的标识以及各节点拥有的资源信息数量的对应关系;
根据所述第一标识查询出所述第一标识与所述第一标识对应的节点拥有的资源信息数量的对应关系;
利用所述第一标识对应的节点拥有的资源信息数量的对应关系中的资源信息数量减去所述资源信息转移数量,计算得到资源信息转移后所述资源信息发送节点具有的资源信息数量;
当计算得到的资源信息转移后所述资源信息发送节点具有的资源信息数量满足一定条件时,将所述资源信息发送节点确定为双花交易节点。
第二方面,本发明实施例还提供了一种联盟链数据处理装置,包括:
获取模块,用于获取资源信息的转移信息;所述资源信息的转移信息,包括:资源信息发送节点向资源信息接收节点转移的资源信息转移数量和资源信息发送节点的第一标识;
确定模块,用于在联盟链上广播所述转移信息,确定出所述联盟链中各子链上的双花交易判断节点;
第一处理模块,用于当接收到所述双花交易判断节点发送的待确定双花交易节点的转移信息时,获取上一次资源信息转移后存储数据的区块中记载的资源信息的状态;其中,所述资源信息的状态,记录有各节点的标识以及各节点拥有的资源信息数量的对应关系;
第二处理模块,用于根据所述第一标识查询出所述第一标识与所述第一标识对应的节点拥有的资源信息数量的对应关系;
计算模块,用于利用所述第一标识对应的节点拥有的资源信息数量的对应关系中的资源信息数量减去所述资源信息转移数量,计算得到资源信息转移后所述资源信息发送节点具有的资源信息数量;
第三处理模块,用于当计算得到的资源信息转移后所述资源信息发送节点具有的资源信息数量满足一定条件时,将所述资源信息发送节点确定为双花交易节点。
第三方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述第一方面所述的方法的步骤。
第四方面,本发明实施例还提供了一种电子设备,所述电子设备包括有存储器,处理器以及一个或者一个以上的程序,其中所述一个或者一个以上程序存储于所述存储器中,且经配置以由所述处理器执行上述第一方面所述的方法的步骤。
本发明实施例上述第一方面至第四方面提供的方案中,公证人节点先从联盟链的各子链中确定出双花交易判断节点,当接收到所述双花交易判断节点发送的待确定双花交易节点的转移信息时,对所述双花交易判断节点发送的待确定双花交易节点的转移信息进行处理,就可以确定出双花交易节点,与相关技术中需要公证人节点对联盟链所有节点获取到的同步数据进行分别处理后,才可以确定是否出现双花现象的方式相比,只需对待确定双花交易节点的转移信息进行处理,就能够确定出双花交易节点,大大减少了公证人节点的工作量,提高了公证人节点的效率,达到了去中心化的目的。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本发明实施例1所提供的一种联盟链数据处理方法的流程图;
图2示出了本发明实施例2所提供的一种联盟链数据处理装置的结构示意图;
图3示出了本发明实施例3所提供的一种电子设备的结构示意图。
具体实施方式
目前,在联盟链的应用中,为了保证联盟链中各子链之间的数据保持一致,可以通过公证人节点对各子链之间的数据进行同步。公证人节点对各子链之间的数据进行同步的过程中,公证人节点会先从各子链中的一个子链中读取到需要同步的数据,然后将数据同步写入到联盟链的其他子链中的所有节点中。
所述公证人节点,通常可以选取联盟链中各子链都信任的第三方,主要是起到数据交互中的信任第三方作用;在一个实施方式中,所述公证人节点可以选取监管机构或相关部门。
有些节点会恶意的多次对节点自身拥有的资源信息进行重复转移,造成该节点资源信息转移的数量大于该节点拥有的资源信息数量,导致双花现象的发生。
这里,通过以下内容对所述双花现象的产生进行描述:
联盟链的一个子链上具有节点A、节点B以及节点C三个节点,其中,节点A具有20个资源信息,节点B具有10个资源信息,节点C具有10个资源信息。
所述节点A首先向节点B转移了15个资源信息后,继续向节点C转移15个资源信息,但节点A向节点B转移了15个资源信息后只有5个资源信息了,这时节点A中的资源信息数量不足以完成向节点C转移15个资源信息的任务,但节点A仍然执行了向节点C转移15个资源信息的任务,说明节点A将具有的资源信息进行重复转移,导致双花现象的出现。
为了避免双花现象,需要公证人节点对联盟链所有节点获取到的同步数据进行分别处理后,才可以确定是否出现双花现象,整个确定双花现象的过程公证人节点的工作量较大,效率低。
基于此,本申请实施例提出的一种联盟链数据处理方法、装置和电子设备,公证人节点先从联盟链的各子链中确定出双花交易判断节点,当接收到所述双花交易判断节点发送的待确定双花交易节点的转移信息时,对所述双花交易判断节点发送的待确定双花交易节点的转移信息进行处理,就可以确定出双花交易节点。大大减少了公证人节点的工作量。
其中,所述双花交易判断节点,用于表示联盟链各子链中对公证人节点广播的资源信息的转移信息进行处理,以确定出待确定双花交易节点的转移信息的节点。
所述双花交易节点,用于表示资源信息转移过程中出现双花现象的资源信息发送节点。
为了对本申请实施例进行更好的说明,首先对本申请实施例提出的联盟链数据处理方法、装置和电子设备的应用场景进行以下描述:
本申请实施例提出的联盟链数据处理方法、装置以及电子设备的应用场景,包括:公证人节点以及联盟链中的各子链。
各子链之间可以通过跨链节点进行数据交互。
所述跨链节点,用于表示一个子链中成为该子链的异构链的节点的节点。
所述异构链,可以是但不限于:中继链和侧链。
所述资源信息,可以是但不限于:数字货币、虚拟货币或者积分。
所述资源信息,通过转移的方式从子链的一个节点转移到另一个节点时,子链上资源信息转移出的节点,被称作资源信息发送节点;子链上资源信息转移入的节点,被称作资源信息接收节点。
在转移过程中,仅存在资源信息数量上的转移,资源信息的类型在转移过程中不发生变化。
所述公证人节点、所述资源信息发送节点、所述资源信息接收节点以及联盟链上的其他节点,均可以使用服务器。
所述服务器,可以采用现有技术中任何能够对联盟链数据进行处理,对联盟链中进行双花交易的节点进行判断的计算设备,这里不再一一赘述。
公证人节点以及联盟链中的各子链中的节点分别使用不同的区块对资源信息的状态进行存储。具体存储技术是区块链的现有技术,这里不再赘述。
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请做进一步详细的说明。
实施例1
参见图1所示的一种联盟链数据处理方法的流程图,本实施例提出的联盟链数据处理方法,包括以下具体步骤:
步骤100、公证人节点获取资源信息的转移信息;所述资源信息的转移信息,包括:资源信息发送节点向资源信息接收节点转移的资源信息转移数量和资源信息发送节点的第一标识。
在上述步骤100中,公证人节点获取到的资源信息的转移信息是资源信息接收节点向公证人节点发送的。
所述第一标识,是所述资源信息发送节点的标识。
资源信息接收节点发送的资源信息的转移信息,是资源信息发送节点生成的。
为了生成资源信息的转移信息,所述资源信息发送节点可以执行以下步骤(1)至步骤(4):
(1)获取资源信息转移命令,所述资源信息转移命令,包括:资源信息接收节点的第二标识和资源信息转移数量;
(2)获取所述第一标识和数据更新时长,利用所述第一标识、数据更新时长、所述第二标识和资源信息转移数量生成资源信息的转移信息;并利用所述资源信息发送节点的私钥对所述资源信息的转移信息进行签名操作,得到具有资源信息发送节点签名的资源信息的转移信息;
(3)根据所述第一标识、所述第二标识和资源信息转移数量对资源信息转移后资源信息的状态进行更新,得到更新后的资源信息的状态,将更新后的资源信息的状态存储在所述资源信息发送节点所在子链的区块中;
(4)将所述资源信息的转移信息发送到资源信息接收节点,所述资源信息接收节点利用所述资源信息接收节点的私钥对所述资源信息的转移信息进行签名操作,得到具有资源信息发送节点签名和资源信息接收节点签名的资源信息的转移信息,并将所述资源信息的状态信息和签名后的资源信息的转移信息发送到公证人节点。
在上述步骤(1)中,资源信息转移命令是资源信息发送节点的工作人员触发的,工作人员会向资源信息发送节点输入资源信息接收节点的第二标识、资源信息转移数量以及资源信息接收节点的地址。
在上述步骤(2)中,所述第一标识和数据更新时长,缓存在所述资源信息发送节点中。
所述数据更新时长,是缓存在资源信息发送节点中的数据说明的一条信息。
所述数据更新时长,用于指示联盟链中各子链上的节点进行数据同步时的时间段长度。该数据更新时长的起始时刻是公证人节点广播资源信息的转移信息的时间点,终止时刻是设定的更新时长,终止后数据未达到一致,该交易将被认定为无效。
所述数据更新时长,可以设置为30秒到100秒之间的任意时间长度,在一个实现方式中,所述数据更新时长可以设置为60秒。
在一个实施方式中,所述第一标识是Ws;所述第二标识是Wd;资源信息转移数量是20;数据更新时长是60秒。那么生成的资源信息的转移信息应该包括以上四个参数。
所述资源信息发送节点的私钥,缓存在所述资源信息发送节点中,是联盟链的主节点分配给所述资源信息发送节点的。
利用所述资源信息发送节点的私钥对资源信息进行签名操作,得到具有资源信息发送节点签名的资源信息的转移信息的具体过程是现有技术,这里不再赘述。
在一个实施方式中,所述资源信息发送节点签名可以是0xAA。
在上述步骤(3)中,为了根据所述第一标识、所述第二标识和资源信息转移数量对资源信息转移后资源信息的状态进行更新,得到更新后的资源信息的状态,资源信息发送节点可以执行以下步骤(31)至步骤(33):
(31)获取上一次资源信息转移后存储数据的区块中记载的资源信息的状态;其中,所述资源信息的状态,记录有各节点的标识以及各节点拥有的资源信息数量的对应关系;
(32)根据所述第一标识查询出所述第一标识与所述第一标识对应的节点拥有的资源信息数量的对应关系,根据所述第二标识查询出所述第二标识与所述第二标识对应的节点拥有的资源信息数量的对应关系;
(33)利用查询出的所述第一标识对应的节点拥有的资源信息数量减去资源信息转移数量,并利用查询出的所述第二标识对应的节点拥有的资源信息数量增加资源信息转移数量,得到更新后的资源信息的状态。
在上述步骤(33)中,更新后的资源信息的状态,记录有减去资源信息转移数量后的所述第一标识对应的节点拥有的资源信息数量,以及增加资源信息转移数量后的所述第二标识对应的节点拥有的资源信息数量。
在上述步骤(4)中,所述资源信息接收节点利用所述资源信息接收节点的私钥对所述资源信息的转移信息进行签名操作的过程是现有技术,这里不再赘述。
所述资源信息接收节点的私钥,是所述资源信息接收节点上链时主节点分配给所述资源信息接收节点的。
在一个实施方式中,所述资源信息接收节点签名可以是0xBB。
那么,得到的具有资源信息发送节点签名和资源信息接收节点签名的资源信息的转移信息,可以如下表示:
[Ws → 20 Wd, 1, 61, 0xAA]0xBB
其中,根据前述的数据更新时长是60秒来说,数字1表示联盟链上节点在接收到该转移信息后的第1秒开始进行数据更新,数字61表示联盟链上节点在接收到该转移信息后的第61秒结束数据的更新,从而保证数据更新时长是60秒。
步骤102、在联盟链上广播所述转移信息,确定出所述联盟链中各子链上的双花交易判断节点。
为了确定出所述联盟链中各子链上的双花交易判断节点,上述步骤102可以执行以下步骤(1)至步骤(2):
(1)在联盟链上广播所述转移信息,所述联盟链上各子链的节点获取到转移信息后,利用所述节点自身存储的公钥对所述转移信息进行解密操作,并在解密成功后向所述公证人节点反馈解密成功信息;
(2)将联盟链上各子链中第一个发送解密成功信息的节点确定为各子链上的双花交易判断节点。
在上述步骤(1)中,公证人节点在广播所述转移信息之前,会先利用公证人节点自身存储的公钥对所述转移信息进行解密操作,得到转移信息中记载的数据更新时长,并从在联盟链上广播所述转移信息的时刻开始计时,以在广播所述转移信息的时刻开始的数据更新时长内,对联盟链中各子链上节点存储的资源信息的状态进行更新。
联盟链上各子链的节点自身存储的公钥,是联盟链中的节主节点分配给节点使用的。
所述节点利用节点自身存储的公钥对所述转移信息进行解密操作的具体过程是现有技术,这里不再赘述。
解密操作完成后,联盟链上各子链的节点在向公证人节点反馈解密成功信息的同时,可以得到转移信息中记载的资源信息发送节点的第一标识、资源信息接收节点的第二标识、资源信息转移数量以及数据更新时长。
所述各子链的节点在接收到公证人节点广播的所述转移信息时,会记录接收到转移信息时的接收时间,并对接收到的所述转移信息进行缓存。
当公证人节点确定出联盟链上各子链的双花交易判断节点后,各子链的双花交易判断节点可以执行以下步骤(1)至步骤(6):
(1)当被公证人节点确定为所述联盟链中所在子链上的双花交易判断节点时,双花交易判断节点对所述公证人广播的资源信息的转移信息进行处理,得到处理结果;
(2)当所述处理结果指示所述资源信息发送节点进行所述资源信息转移数量的资源信息转移后具有的资源信息数量小于0时,将所述资源信息的转移信息发送给公证人节点,使得所述公证人节点对资源信息发送节点是否为双花交易节点进行判断,并跳转至步骤(6);
(3)当所述处理结果指示所述资源信息发送节点进行资源信息转移数量的资源信息转移后具有的资源信息数量大于等于0时,双花交易判断节点获取预设时段内所述公证人广播的所有的资源信息的转移信息;
(4)统计所有的资源信息的转移信息中所述第一标识对应的节点作为资源信息发送节点的转移信息的转移信息数量;
(5)当统计得到的转移信息数量大于数量阈值时,将所述资源信息的转移信息发送给公证人节点,使得所述公证人节点对资源信息发送节点是否为双花交易节点进行判断;
(6)流程结束。
在上述步骤(1)中,双花交易判断节点对所述公证人广播的资源信息的转移信息进行处理,得到处理结果的过程包括以下步骤(11)至步骤(15):
(11)当接收到所述双花交易判断节点发送的待确定双花交易节点的转移信息时,获取上一次资源信息转移后存储数据的区块中记载的资源信息的状态;
(12)根据所述第一标识查询出所述第一标识与所述第一标识对应的节点拥有的资源信息数量的对应关系;
(13)利用所述第一标识与所述第一标识对应的节点拥有的资源信息数量的对应关系中的资源信息数量减去所述资源信息转移数量,计算得到资源信息转移后所述资源信息发送节点具有的资源信息数量;
(14)当计算得到的资源信息转移后所述资源信息发送节点具有的资源信息数量小于0时,得到指示所述资源信息发送节点进行所述资源信息转移数量的资源信息转移后具有的资源信息数量小于0的处理结果,跳转到上述步骤(2);
(15)当计算得到的资源信息转移后所述资源信息发送节点具有的资源信息数量大于等于0时,得到指示所述资源信息发送节点进行所述资源信息转移数量的资源信息转移后具有的资源信息数量大于等于0的处理结果,跳转到上述步骤(3)。
在上述步骤(11)至步骤(15)描述的过程中,双花交易判断节点在计算得到资源信息转移后所述资源信息发送节点具有的资源信息数量的同时,还会对资源信息转移后所述资源信息接收节点具有的资源信息数量进行更新,具体过程这里不再赘述。
在上述步骤(2)中,当所述处理结果指示所述资源信息发送节点进行所述资源信息转移数量的资源信息转移后具有的资源信息数量小于0时,双花交易判断节点将所述公证人广播的资源信息的转移信息确定为待确定双花交易节点的转移信息。
在上述步骤(3)中,预设时段的时长,是大于所述数据更新时长的时间长度。
预设时段的时长,缓存在联盟链中各子链的节点中,可以设置为300秒至600秒之间的任意时间长度,这里不再一一赘述。
当所述处理结果指示所述资源信息发送节点进行资源信息转移数量的资源信息转移后具有的资源信息数量大于等于0时,双花交易判断节点获取当前的时间点,并根据缓存的预设时段的时长,获取当前的时间点之前预设时段内所述公证人广播的资源信息的转移信息。
所述当前的时间点,是双花交易判断节点从双花交易判断节点自身的系统时钟中获取到的。
为了获取当前的时间点之前的预设时段内所述公证人广播的资源信息的转移信息,所述双花交易判断节点可以从双花交易判断节点自身获取接收时间在当前的时间点之前预设时段内的资源信息的转移信息,并将接收时间在当前的时间点之前预设时段内的资源信息的转移信息作为双花交易判断节点获取到的预设时段内所述公证人广播的所有的资源信息的转移信息。
在上述步骤(4)中,为了统计所有的资源信息的转移信息中所述第一标识对应的节点作为资源信息发送节点的转移信息的转移信息数量,所述双花交易判断节点,可以执行以下步骤(41)至步骤(42):
(41)将所述第一标识作为查询条件,从获取到的预设时段内所述公证人广播的所有的资源信息的转移信息中查询出所述第一标识对应节点作为资源信息发送节点的转移信息;
(42)统计查询出的所述第一标识对应节点作为资源信息发送节点的转移信息的转移信息数量。
在上述步骤(5)中,所述数量阈值,缓存在所述联盟链的子链中的各节点中。
所述数量阈值,可以设置为10到1000之间的任意数值,这里不再一一赘述。
在通过上述步骤(1)至步骤(6),双花交易判断节点初步判断出待确定双花交易节点的转移信息后,可以将待确定双花交易节点的转移信息发送给公证人节点,由公证人节点对双花交易节点进行判断。具体判断过程见以下步骤104至步骤110。
步骤104、当接收到所述双花交易判断节点发送的待确定双花交易节点的转移信息时,获取上一次资源信息转移后存储数据的区块中记载的资源信息的状态。
步骤106、根据所述第一标识查询出所述第一标识与所述第一标识对应的节点拥有的资源信息数量的对应关系。
步骤108、利用所述第一标识与所述第一标识对应的节点拥有的资源信息数量的对应关系中的资源信息数量减去所述资源信息转移数量,计算得到资源信息转移后所述资源信息发送节点具有的资源信息数量。
步骤110、当计算得到的资源信息转移后所述资源信息发送节点具有的资源信息数量满足一定条件时,将所述资源信息发送节点确定为双花交易节点。
在上述步骤110中,所述满足一定条件,是指计算得到的资源信息转移后所述资源信息发送节点具有的资源信息数量应该小于预设数值。
在一个实施方式中,预设数值可以设置为0。当然,预设数值还可以设置为其他数值,这里不再一一赘述。
在确定所述资源信息发送节点为双花交易节点后,公证人节点根据公证人节点自身缓存的预设数量生成资源信息转移指令,并将生成的资源信息转移指令发送给双花交易节点,使得双花交易节点将预设数量的资源信息发送给发送携带有所述第一标识的转移信息的双花交易判断节点,以对发送携带有所述第一标识的转移信息的双花交易判断节点进行奖励的同时,对双花交易节点进行惩罚。
综上所述,本实施例提出的联盟链数据处理方法,公证人节点先从联盟链的各子链中确定出双花交易判断节点,当接收到所述双花交易判断节点发送的待确定双花交易节点的转移信息时,对所述双花交易判断节点发送的待确定双花交易节点的转移信息进行处理,就可以确定出双花交易节点,与相关技术中需要公证人节点对联盟链所有节点获取到的同步数据进行分别处理后,才可以确定是否出现双花现象的方式相比,只需对待确定双花交易节点的转移信息进行处理,就能够确定出双花交易节点,大大减少了公证人节点的工作量,提高了公证人节点的效率,达到了去中心化的目的。
实施例2
本实施例提出的一种联盟链数据处理装置,用于执行上述实施例1提出的联盟链数据处理方法。
参见图2所示的联盟链数据处理装置的结构示意图,本实施例提出的一种联盟链数据处理装置,包括:
获取模块200,用于获取资源信息的转移信息;所述资源信息的转移信息,包括:资源信息发送节点向资源信息接收节点转移的资源信息转移数量和资源信息发送节点的第一标识;
确定模块202,用于在联盟链上广播所述转移信息,确定出所述联盟链中各子链上的双花交易判断节点;
第一处理模块204,用于当接收到所述双花交易判断节点发送的待确定双花交易节点的转移信息时,获取上一次资源信息转移后存储数据的区块中记载的资源信息的状态;其中,所述资源信息的状态,记录有各节点的标识以及各节点拥有的资源信息数量的对应关系;
第二处理模块206,用于根据所述第一标识查询出所述第一标识与所述第一标识对应的节点拥有的资源信息数量的对应关系;
计算模块208,用于利用所述第一标识与所述第一标识对应的节点拥有的资源信息数量的对应关系中的资源信息数量减去所述资源信息转移数量,计算得到资源信息转移后所述资源信息发送节点具有的资源信息数量;
第三处理模块210,用于当计算得到的资源信息转移后所述资源信息发送节点具有的资源信息数量满足一定条件时,将所述资源信息发送节点确定为双花交易节点。
具体地,所述确定模块,具体用于:
在联盟链上广播所述转移信息,所述联盟链上各子链的节点获取到转移信息后,利用所述节点自身存储的公钥对所述转移信息进行解密操作,并在解密成功后向所述公证人节点反馈解密成功信息;
将联盟链上各子链中第一个发送解密成功信息的节点确定为各子链上的双花交易判断节点。
进一步地,本实施例提出的联盟链数据处理装置,还包括:
第一处理单元,用于当被公证人节点确定为所述联盟链中所在子链上的双花交易判断节点时,对所述公证人广播的资源信息的转移信息进行处理,得到处理结果;
第一发送单元,用于当所述处理结果指示所述资源信息发送节点进行所述资源信息转移数量的资源信息转移后具有的资源信息数量小于0时,将所述资源信息的转移信息发送给公证人节点,使得所述公证人节点对资源信息发送节点是否为双花交易节点进行判断。
进一步地,本实施例提出的联盟链数据处理装置,还包括:
第二处理单元,用于当所述处理结果指示所述资源信息发送节点进行资源信息转移数量的资源信息转移后具有的资源信息数量大于等于0时,获取预设时段内所述公证人广播的所有的资源信息的转移信息;
统计单元,用于统计所有的资源信息的转移信息中所述第一标识对应的节点作为资源信息发送节点的转移信息的转移信息数量;
第二发送单元,用于当统计得到的转移信息数量大于数量阈值时,将所述资源信息的转移信息发送给公证人节点,使得所述公证人节点对资源信息发送节点是否为双花交易节点进行判断。
综上所述,本实施例提出的一种联盟链数据处理装置,公证人节点先从联盟链的各子链中确定出双花交易判断节点,当接收到所述双花交易判断节点发送的待确定双花交易节点的转移信息时,对所述双花交易判断节点发送的待确定双花交易节点的转移信息进行处理,就可以确定出双花交易节点,与相关技术中需要公证人节点对联盟链所有节点获取到的同步数据进行分别处理后,才可以确定是否出现双花现象的方式相比,只需对待确定双花交易节点的转移信息进行处理,就能够确定出双花交易节点,大大减少了公证人节点的工作量,提高了公证人节点的效率,达到了去中心化的目的。
实施例3
本实施例提出一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述实施例1描述的联盟链数据处理方法的步骤。具体实现可参见方法实施例1,在此不再赘述。
此外,参见图3所示的一种电子设备的结构示意图,本实施例还提出一种电子设备,上述电子设备包括总线51、处理器52、收发机53、总线接口54、存储器55和用户接口56。上述电子设备包括有存储器55。
本实施例中,上述电子设备还包括:存储在存储器55上并可在处理器52上运行的一个或者一个以上的程序,经配置以由上述处理器执行上述一个或者一个以上程序用于进行以下步骤(1)至步骤(6):
(1)公证人节点获取资源信息的转移信息;所述资源信息的转移信息,包括:资源信息发送节点向资源信息接收节点转移的资源信息转移数量和资源信息发送节点的第一标识;
(2)在联盟链上广播所述转移信息,确定出所述联盟链中各子链上的双花交易判断节点;
(3)当接收到所述双花交易判断节点发送的待确定双花交易节点的转移信息时,获取上一次资源信息转移后存储数据的区块中记载的资源信息的状态;其中,所述资源信息的状态,记录有各节点的标识以及各节点拥有的资源信息数量的对应关系;
(4)根据所述第一标识查询出所述第一标识与所述第一标识对应的节点拥有的资源信息数量的对应关系;
(5)利用所述第一标识与所述第一标识对应的节点拥有的资源信息数量的对应关系中的资源信息数量减去所述资源信息转移数量,计算得到资源信息转移后所述资源信息发送节点具有的资源信息数量;
(6)当计算得到的资源信息转移后所述资源信息发送节点具有的资源信息数量满足一定条件时,将所述资源信息发送节点确定为双花交易节点。
收发机53,用于在处理器52的控制下接收和发送数据。
在图3中,总线架构(用总线51来代表),总线51可以包括任意数量的互联的总线和桥,总线51将包括由通用处理器52代表的一个或多个处理器和存储器55代表的存储器的各种电路链接在一起。总线51还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本实施例不再对其进行进一步描述。总线接口54在总线51和收发机53之间提供接口。收发机53可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。例如:收发机53从其他设备接收外部数据。收发机53用于将处理器52处理后的数据发送给其他设备。取决于计算系统的性质,还可以提供用户接口56,例如小键盘、显示器、扬声器、麦克风、操纵杆。
处理器52负责管理总线51和通常的处理,如前述上述运行通用操作系统。而存储器55可以被用于存储处理器52在执行操作时所使用的数据。
可选的,处理器52可以是但不限于:中央处理器、单片机、微处理器或者可编程逻辑器件。
可以理解,本发明实施例中的存储器55可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器 (Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器 (Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double DataRate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。本实施例描述的系统和方法的存储器55旨在包括但不限于这些和任意其它适合类型的存储器。
在一些实施方式中,存储器55存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:操作系统551和应用程序552。
其中,操作系统551,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序552,包含各种应用程序,例如媒体播放器(Media Player)、浏览器(Browser)等,用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序552中。
综上所述,本实施例提出的一种电子设备和计算机可读存储介质,公证人节点先从联盟链的各子链中确定出双花交易判断节点,当接收到所述双花交易判断节点发送的待确定双花交易节点的转移信息时,对所述双花交易判断节点发送的待确定双花交易节点的转移信息进行处理,就可以确定出双花交易节点,与相关技术中需要公证人节点对联盟链所有节点获取到的同步数据进行分别处理后,才可以确定是否出现双花现象的方式相比,只需对待确定双花交易节点的转移信息进行处理,就能够确定出双花交易节点,大大减少了公证人节点的工作量,提高了公证人节点的效率,达到了去中心化的目的。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种联盟链数据处理方法,其特征在于,包括:
公证人节点获取资源信息的转移信息;所述资源信息的转移信息,包括:资源信息发送节点向资源信息接收节点转移的资源信息转移数量和资源信息发送节点的第一标识;
在联盟链上广播所述转移信息,确定出所述联盟链中各子链上的双花交易判断节点;
当接收到所述双花交易判断节点发送的待确定双花交易节点的转移信息时,获取上一次资源信息转移后存储数据的区块中记载的资源信息的状态;其中,所述资源信息的状态,记录有各节点的标识以及各节点拥有的资源信息数量的对应关系;
根据所述第一标识查询出所述第一标识与所述第一标识对应的节点拥有的资源信息数量的对应关系;
利用所述第一标识与所述第一标识对应的节点拥有的资源信息数量的对应关系中的资源信息数量减去所述资源信息转移数量,计算得到资源信息转移后所述资源信息发送节点具有的资源信息数量;
当计算得到的资源信息转移后所述资源信息发送节点具有的资源信息数量满足一定条件时,将所述资源信息发送节点确定为双花交易节点。
2.根据权利要求1所述的方法,其特征在于,在联盟链上广播所述转移信息,确定出所述联盟链上各子链上的双花交易判断节点,包括:
在联盟链上广播所述转移信息,所述联盟链上各子链的节点获取到转移信息后,利用所述节点自身存储的公钥对所述转移信息进行解密操作,并在解密成功后向所述公证人节点反馈解密成功信息;
将联盟链上各子链中第一个发送解密成功信息的节点确定为各子链上的双花交易判断节点。
3.根据权利要求2所述的方法,其特征在于,还包括:
当被公证人节点确定为所述联盟链中所在子链上的双花交易判断节点时,双花交易判断节点对所述公证人广播的资源信息的转移信息进行处理,得到处理结果;
当所述处理结果指示所述资源信息发送节点进行所述资源信息转移数量的资源信息转移后具有的资源信息数量小于0时,将所述资源信息的转移信息发送给公证人节点,使得所述公证人节点对资源信息发送节点是否为双花交易节点进行判断。
4.根据权利要求3所述的方法,其特征在于,还包括:
当所述处理结果指示所述资源信息发送节点进行资源信息转移数量的资源信息转移后具有的资源信息数量大于等于0时,双花交易判断节点获取预设时段内所述公证人广播的所有的资源信息的转移信息;
统计所有的资源信息的转移信息中所述第一标识对应的节点作为资源信息发送节点的转移信息的转移信息数量;
当统计得到的转移信息数量大于数量阈值时,将所述资源信息的转移信息发送给公证人节点,使得所述公证人节点对资源信息发送节点是否为双花交易节点进行判断。
5.一种联盟链数据处理装置,其特征在于,包括:
获取模块,用于获取资源信息的转移信息;所述资源信息的转移信息,包括:资源信息发送节点向资源信息接收节点转移的资源信息转移数量和资源信息发送节点的第一标识;
确定模块,用于在联盟链上广播所述转移信息,确定出所述联盟链中各子链上的双花交易判断节点;
第一处理模块,用于当接收到所述双花交易判断节点发送的待确定双花交易节点的转移信息时,获取上一次资源信息转移后存储数据的区块中记载的资源信息的状态;其中,所述资源信息的状态,记录有各节点的标识以及各节点拥有的资源信息数量的对应关系;
第二处理模块,用于根据所述第一标识查询出所述第一标识与所述第一标识对应的节点拥有的资源信息数量的对应关系;
计算模块,用于利用所述第一标识与所述第一标识对应的节点拥有的资源信息数量的对应关系中的资源信息数量减去所述资源信息转移数量,计算得到资源信息转移后所述资源信息发送节点具有的资源信息数量;
第三处理模块,用于当计算得到的资源信息转移后所述资源信息发送节点具有的资源信息数量满足一定条件时,将所述资源信息发送节点确定为双花交易节点。
6.根据权利要求5所述的装置,其特征在于,所述确定模块,具体用于:
在联盟链上广播所述转移信息,所述联盟链上各子链的节点获取到转移信息后,利用所述节点自身存储的公钥对所述转移信息进行解密操作,并在解密成功后向公证人节点反馈解密成功信息;
将联盟链上各子链中第一个发送解密成功信息的节点确定为各子链上的双花交易判断节点。
7.根据权利要求6所述的装置,其特征在于,还包括:
第一处理单元,用于当被公证人节点确定为所述联盟链中所在子链上的双花交易判断节点时,对所述公证人广播的资源信息的转移信息进行处理,得到处理结果;
第一发送单元,用于当所述处理结果指示所述资源信息发送节点进行所述资源信息转移数量的资源信息转移后具有的资源信息数量小于0时,将所述资源信息的转移信息发送给公证人节点,使得所述公证人节点对资源信息发送节点是否为双花交易节点进行判断。
8.根据权利要求7所述的装置,其特征在于,还包括:
第二处理单元,用于当所述处理结果指示所述资源信息发送节点进行资源信息转移数量的资源信息转移后具有的资源信息数量大于等于0时,获取预设时段内所述公证人广播的所有的资源信息的转移信息;
统计单元,用于统计所有的资源信息的转移信息中所述第一标识对应的节点作为资源信息发送节点的转移信息的转移信息数量;
第二发送单元,用于当统计得到的转移信息数量大于数量阈值时,将所述资源信息的转移信息发送给公证人节点,使得所述公证人节点对资源信息发送节点是否为双花交易节点进行判断。
9.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器运行时执行上述权利要求1-4任一项所述的方法的步骤。
10.一种电子设备,其特征在于,所述电子设备包括有存储器,处理器以及一个或者一个以上的程序,其中所述一个或者一个以上程序存储于所述存储器中,且经配置以由所述处理器执行权利要求1-4任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010664170.5A CN111538792B (zh) | 2020-07-10 | 2020-07-10 | 一种联盟链数据处理方法、装置和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010664170.5A CN111538792B (zh) | 2020-07-10 | 2020-07-10 | 一种联盟链数据处理方法、装置和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111538792A CN111538792A (zh) | 2020-08-14 |
CN111538792B true CN111538792B (zh) | 2020-11-03 |
Family
ID=71978401
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010664170.5A Active CN111538792B (zh) | 2020-07-10 | 2020-07-10 | 一种联盟链数据处理方法、装置和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111538792B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104580253A (zh) * | 2015-01-30 | 2015-04-29 | 网易(杭州)网络有限公司 | 一种处理用户数据的方法及装置 |
CN105931052A (zh) * | 2016-04-21 | 2016-09-07 | 四川大学 | 一种基于区块链多因子交叉验证的虚拟货币交易验证方法 |
CN106530088A (zh) * | 2016-12-19 | 2017-03-22 | 杜伯仁 | 基于区块链安全节点对证券产品进行交易的方法 |
CN106850538A (zh) * | 2016-12-06 | 2017-06-13 | 中金云金融(北京)大数据科技股份有限公司 | 区块链路由接入系统及方法 |
CN107038638A (zh) * | 2017-02-24 | 2017-08-11 | 杭州象链网络技术有限公司 | 一种基于联盟链的股权登记交易系统构建方法 |
CN109409878A (zh) * | 2018-10-11 | 2019-03-01 | 上海保险交易所股份有限公司 | 经由双层联盟链进行交易的方法 |
CN109685489A (zh) * | 2018-12-28 | 2019-04-26 | 杭州云象网络技术有限公司 | 一种区块链之间的资产跨链交易方法 |
CN110175912A (zh) * | 2019-04-08 | 2019-08-27 | 西安西电链融科技有限公司 | 基于委员会的区块链跨链资产转移方法、区块链信息终端 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
MX2020007773A (es) * | 2018-01-22 | 2020-10-28 | Grainchain Inc | Sistema y metodo para sistema informatico seguro, distribuido. |
CN109033832B (zh) * | 2018-06-22 | 2021-02-09 | 深圳前海益链网络科技有限公司 | 一种防范对区块链网络进行短暂分叉双花攻击的方法 |
CN111181715B (zh) * | 2019-12-30 | 2022-07-12 | 杭州云象网络技术有限公司 | 一种基于一致性哈希共识协议的多方跨链方法 |
CN111311209B (zh) * | 2020-02-03 | 2021-03-16 | 腾讯科技(深圳)有限公司 | 跨区块链的数据处理方法、装置、设备及计算机存储介质 |
-
2020
- 2020-07-10 CN CN202010664170.5A patent/CN111538792B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104580253A (zh) * | 2015-01-30 | 2015-04-29 | 网易(杭州)网络有限公司 | 一种处理用户数据的方法及装置 |
CN105931052A (zh) * | 2016-04-21 | 2016-09-07 | 四川大学 | 一种基于区块链多因子交叉验证的虚拟货币交易验证方法 |
CN106850538A (zh) * | 2016-12-06 | 2017-06-13 | 中金云金融(北京)大数据科技股份有限公司 | 区块链路由接入系统及方法 |
CN106530088A (zh) * | 2016-12-19 | 2017-03-22 | 杜伯仁 | 基于区块链安全节点对证券产品进行交易的方法 |
CN107038638A (zh) * | 2017-02-24 | 2017-08-11 | 杭州象链网络技术有限公司 | 一种基于联盟链的股权登记交易系统构建方法 |
CN109409878A (zh) * | 2018-10-11 | 2019-03-01 | 上海保险交易所股份有限公司 | 经由双层联盟链进行交易的方法 |
CN109685489A (zh) * | 2018-12-28 | 2019-04-26 | 杭州云象网络技术有限公司 | 一种区块链之间的资产跨链交易方法 |
CN110175912A (zh) * | 2019-04-08 | 2019-08-27 | 西安西电链融科技有限公司 | 基于委员会的区块链跨链资产转移方法、区块链信息终端 |
Also Published As
Publication number | Publication date |
---|---|
CN111538792A (zh) | 2020-08-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108683539B (zh) | 区块链网络的管理方法、装置、介质及电子设备 | |
CN113204787B (zh) | 基于区块链的联邦学习隐私保护方法、系统、设备和介质 | |
CN110597925B (zh) | 一种基于区块链的跨链数据处理方法及装置 | |
CN109496419B (zh) | 文件处理方法、装置和系统 | |
CN108712488B (zh) | 一种基于区块链的数据处理方法、装置、区块链系统 | |
KR101994455B1 (ko) | 시스템에 포함되는 노드들에 대하여 그룹을 운영하는 분산 네트워크 시스템 | |
CN108737534B (zh) | 一种基于区块链的数据传输方法、装置、区块链系统 | |
CN109886693B (zh) | 区块链系统的共识实现方法、装置、设备和介质 | |
EP4300323A1 (en) | Data processing method and apparatus for blockchain network, computer device, computer readable storage medium, and computer program product | |
CN111597077B (zh) | 数据处理方法、装置、计算机设备以及存储介质 | |
CN110602227B (zh) | 一种智能合约管理的方法以及相关装置 | |
CN110597918A (zh) | 一种账户管理方法、装置及计算机可读存储介质 | |
CN111460474A (zh) | 去中心化的预言机实现方法、装置、存储器和计算机 | |
CN104636286A (zh) | 用于数据访问的方法和设备 | |
CN112166445A (zh) | 基于区块链网络的联合学习方法和联合学习设备 | |
US20030046044A1 (en) | Method for modeling and processing asynchronous functional specification for system level architecture synthesis | |
CN110866289A (zh) | 基于区块链的数据处理方法、装置、服务器及存储介质 | |
CN112187393A (zh) | Pon总线时间同步方法、装置、计算机设备和存储介质 | |
CN110930254A (zh) | 基于区块链的数据处理方法、装置、终端及介质 | |
CN114092252A (zh) | 一种区块链交易执行方法、装置、设备及可读存储介质 | |
CN112148350A (zh) | 作品远程版本管理方法、电子设备以及计算机存储介质 | |
CN108833133A (zh) | 基于云计算网络的网络配置管理方法、装置和存储介质 | |
CN111538792B (zh) | 一种联盟链数据处理方法、装置和电子设备 | |
CN110597673A (zh) | 存储系统的容灾方法、装置、设备及计算机可读存储介质 | |
CN111625606B (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 |