一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据处理方法、系统、装置、计算机设备和存储介质与流程

2021-11-05 23:04:00 来源:中国专利 TAG:


1.本技术涉及区块链技术领域,特别是涉及一种数据处理方法、系统、装置、计算机设备和存储介质。


背景技术:

2.基于区块链技术构建的区块链网络具有匿名性、不篡改性、可追溯等特点。因此,区块链技术在商业应用方面起到了越来越重要的作用。
3.现有技术中,基于区块链网络的数据处理方法包括:第一节点与第二节点进行交易时,第一节点需要链上先进行转账,然后第二节点开始线下发货,直到第一节点收到货物,完成整个交易。其中,第一节点在区块链网络中向第二节点转移数字资产后,就表示在区块链网络中该交易已经完成,而实体交易的状态是第二节点发货,第一节点是否受到货物并未确定,即实体交易并未完成,由此可见,现有的区块链系统不能保证链上链下交易的状态一致,若第一节点最终未收到货物,那么第一节点就会出现财产损失。


技术实现要素:

4.基于此,有必要针对上述技术问题,提供一种能够对链上交易和链下交易进行同步的数据处理方法、系统、装置、计算机设备和存储介质。
5.一种数据处理方法,应用于区块链网络,区块链网络包括第一节点、第二节点和多个候选节点,该方法包括:
6.对于各候选节点,候选节点接收第一节点发送的交易请求,交易请求中携带有管理节点的身份信息;
7.候选节点根据管理节点的身份信息确定候选节点是否为管理节点,若候选节点是管理节点,则根据交易请求向第二节点发送交易启动指令,交易启动指令用于指示第二节点进行交易操作;
8.管理节点在接收到第一节点发送的交易状态消息时,根据交易状态消息对多签账户中的数字资产进行管理;交易状态消息表示在交易操作过程中交易成功或交易失败,多签账户为第一节点和管理节点对应的账户。
9.在其中一个实施例中,根据交易状态消息对多签账户中的数字资产进行管理,包括:
10.若交易状态消息表示在交易操作过程中交易成功,则管理节点将多签账户中的数字资产转移至第二节点对应的账户。
11.在其中一个实施例中,交易请求还包括第一节点的第一数字签名和第一节点的身份信息,第一数字签名表示第一节点授予管理节点转移多签账户中的数字资产的权限,将多签账户中的数字资产转移至第二节点对应的账户,包括:
12.管理节点根据第一节点的身份信息对第一数字签名进行验证;
13.在确定第一数字签名有效的情况下,管理节点生成第二数字签名,并广播第二数
字签名;第二数据签名表示管理节点同意将多签账户中的数字资产转移至第二节点对应的账户;
14.管理节点将多签账户中的数字资产转移至第二节点对应的账户。
15.在其中一个实施例中,管理节点根据第一节点的身份信息对第一数字签名进行验证,包括:
16.管理节点对第一节点的身份信息进行签名验签;
17.管理节点检测验签结果,若验签通过,则确定第一数字签名有效,若验签未通过,则确定第一数字签名无效。
18.在其中一个实施例中,根据交易状态消息对多签账户中的数字资产进行管理,包括:
19.若交易状态消息表示在交易操作过程中交易失败,则管理节点将多签账户中的数字资产退回至第一节点对应的账户。
20.在其中一个实施例中,管理节点将多签账户中的数字资产退回至第一节点对应的账户,包括:
21.管理节点生成转账交易信息,并广播转账交易信息,转账交易信息携带有管理节点的数字签名,管理节点的数字签名表示管理节点授予第一节点将多签账户中的数字资产转移至第一节点对应的账户的权限;
22.管理节点接收第一节点发送的与转账交易信息关联的数字签名,第一节点发送的与转账交易信息关联的数字签名表示第一节点同意将多签账户中的数字资产转移至第一节点对应的账户;
23.管理节点将多签账户中的数字资产转移至第一节点对应的账户。
24.在其中一个实施例中,该方法还包括:
25.管理节点根据第一节点的公钥和管理节点的公钥生成多签账户;
26.管理节点接收第一节点发送的转账消息,转账消息表示第一节点将第一节点对应的账户内的预设数字资产转移至多签账户;
27.管理节点根据转账消息将第一节点对应的账户内的预设数字资产转移至多签账户中。
28.在其中一个实施例中,该方法还包括:
29.管理节点接收并存储第二节点发送的交易凭证,交易凭证为第二节点在进行交易操作的过程中得到的凭证。
30.一种基于区块链的数据处理系统,应用于区块链网络,区块链网络包括第一节点、第二节点和多个候选节点,该系统包括:
31.第一节点,用于广播交易请求,交易请求中携带有管理节点的身份信息;
32.各候选节点,用于接收交易请求,并根据管理节点的身份信息确定候选节点是否为管理节点,若候选节点是管理节点,则根据交易请求向第二节点发送交易启动指令;
33.第二节点,用于根据交易启动指令进行交易操作;
34.第一节点,还用于广播交易状态消息,交易状态消息表示在交易操作过程中交易成功或交易失败;
35.管理节点,还用于在接收到交易状态消息时,根据交易状态消息对多签账户中的
数字资产进行管理,多签账户为第一节点和管理节点对应的账户。
36.一种数据处理装置,应用于区块链网络,区块链网络包括第一节点、第二节点和多个候选节点,该装置包括:
37.接收模块,用于接收第一节点发送的交易请求,交易请求中携带有管理节点的身份信息;
38.确定模块,用于根据管理节点的身份信息确定候选节点是否为管理节点,若候选节点是管理节点,则根据交易请求向第二节点发送交易启动指令,交易启动指令用于指示第二节点进行交易操作;
39.管理模块,用于在接收到第一节点发送的交易状态消息时,根据交易状态消息对多签账户中的数字资产进行管理;交易状态消息表示在交易操作过程中交易成功或交易失败,多签账户为第一节点和管理节点对应的账户。
40.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一实施例的数据处理方法。
41.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一实施例的数据处理方法。
42.上述数据处理方法、系统、装置、计算机设备和存储介质,可以保证交易双方的链下交易状态与链上交易状态一致,从而为商业应用提供更好的服务。该方法应用于区块链网络中,区块链网络包括第一节点、第二节点和多个候选节点,其中,每个候选节点都有可能成为管理节点,第一节点发起交易请求,交易请求中携带管理节点的身份信息,各候选节点收到交易请求之后,通过比对自身的身份信息和管理节点的身份信息可以确定自身是否为该交易请求的管理节点,若是,则该候选节点作为管理节点对该交易请求进行管理,其管理过程包括,管理节点向第二节点,即交易参与方发送交易启动指令,这样第二节点进行交易操作,相应的,第一节点基于第二节点进行的交易操作可以确定交易状态,第一节点可以生成交易状态消息,并将交易状态消息广播到区块链网络的所有节点,当管理节点在接收到交易状态信息之后,可以根据交易状态信息对第一节点和管理节点对应的多签账户中的数字资产进行管理,基于管理节点的管理,保证了第一节点和第二节点的链上交易和链下交易状态同步,从而保证交易双方的资产安全。
附图说明
43.图1为一个实施例中数据处理方法的应用环境图;
44.图2为一个实施例中数据处理方法的流程示意图;
45.图3为一个实施例中管理节点将多签账户中的数字资产转移至第二节点对应的账户的方法的流程示意图;
46.图4为另为一个实施例中管理节点将多签账户中的数字资产转移至第二节点对应的账户的方法的流程示意图;
47.图5为一个实施例中管理节点将多签账户中的数字资产退回至第一节点对应的账户的方法的流程示意图;
48.图6为一个实施例中一种基于区块链的数据处理系统的示意图;
49.图7为一个实施例中数据处理装置的结构框图;
50.图8为一个实施例中计算机设备的内部结构图。
具体实施方式
51.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。在本技术的描述中,需要说明的是,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
52.基于区块链技术构建的区块链网络具有匿名性、不篡改性、可追溯等特点。因此,现有技术提出了一种基于区块链技术的链上与链下交易协同方案,其中,链上交易是指在区块链网络上完成的数字资产之间的交易,链下交易是指在区块链网络外完成的交易。该交易协同方案包括以下内容:
53.区块链网络包含多个节点,其中一个节点对应a客户,另一个节点对应b客户,a客户与b客户在交易时(例如,a客户为买方,b客户为卖方)的交易过程包括:a向区块链网络上传采购订单,并通过区块链网络发送给b客户,b客户通过区块链网络获取到采购订单后,发货,并将已发货凭证上传到区块链网络中保存,并通过区块链网络发送给a,a在接收到已发货凭证后通过区块链网络向b支付数字资产,一旦资产转让后无法撤回更改。
54.在正常贸易情况下,该种模式不会存在问题。但是若链下交易出现问题,例如a客户未收到货物,这种情况下,a已经将数字资产转移给b,也即链上交易已经完成,而a并未受到货物,即链下交易并未完成。这样就会导致a出现财产损失。虽然链上交易保留了交易存证信息,交易双方无法抵赖,但由于链下交易举证困难的,甚至会给一方带来较多麻烦。在基于区块链网络进行交易的过程中如何保证交易双方的财产安全,是本领域的热点研究话题。
55.下面对本技术实施例提供的基于区块链的数据处理方法的应用环境进行说明:
56.如图1所示,图1示出了一种区块链网络的结构示意图,其中,该区块链网络中包括多个节点,该多个节点包括第一节点101、第二节点102和多个候选节点103,其中,第一节点101为发起交易的节点,第二节点102为被动参与交易的节点,多个候选节点103为第一节点和第二节点之外的其余节点,候选节点103中的一个或者多个可以承担对第一节点101和第二节点102之间的交易活动进行管理的角色。第一节点101、第二节点102和多个候选节点103之间可以通信以便于进行数据同步。
57.本技术实施例中,其中,第一节点101、第二节点102和多个候选节点103可以以软件形式实现,也可以以硬件形式实现。当以硬件形式实现时,其可以是笔记本电脑、台式电脑、移动终端、便携式可穿戴设备等。
58.在一个实施例中,如图2所示,提供了一种数据处理方法,该方法可以应用于如图1所示的区块链网络,该区块链网络包括第一节点、第二节点和多个候选节点。该方法包括以下步骤:
59.步骤201,对于各候选节点,候选节点接收第一节点发送的交易请求。
60.其中,交易请求中携带有管理节点的身份信息。
61.本技术实施例中,第一节点为发起交易的节点。其中,第一节点可以基于自身需要生成交易请求,并广播该交易请求,这样区块链网络中的每个节点都可以接收到第一节点
发送的交易请求。
62.其中,管理节点的身份信息可以是管理节点的节点标识、编号等。
63.步骤202,候选节点根据管理节点的身份信息确定候选节点是否为管理节点,若候选节点是管理节点,则根据交易请求向第二节点发送交易启动指令。
64.其中,交易启动指令用于指示第二节点进行交易操作。
65.本技术实施例中,各个候选节点在接收到交易请求之后,都会执行以下操作:候选节点从交易请求中获取管理节点的身份信息,然后比对候选节点自身的身份信息和管理节点的身份信息,若候选节点自身的身份信息和管理节点的身份信息不一致,即确定候选节点不为该交易请求对应的管理节点,则候选节点仅对该交易请求进行记录而不做处理。
66.若候选节点自身的身份信息和管理节点的身份信息一致,则候选节点确定自身为该交易请求对应的管理节点,并且,该管理节点可以生成交易启动指令,并广播交易启动指令。这样区块链网络中的所有节点均可以接收到该交易启动指令。
67.相应的,接收到该交易启动指令的所有节点均需要确定自身是否为该交易启动指令所指示的第二节点,若是,则基于该交易启动指令进行交易操作。若不是,则记录该交易启动指令而不做处理。
68.可选的,交易启动指令中可以携带有第二节点的身份信息,接收到交易启动指令的各个节点基于第二节点的身份信息确定自身是否为第二节点。若接收到交易启动指令的节点为第二节点,则第二节点根据交易启动指令进行交易操作。若接收到交易启动指令的节点不为第二节点,则记录该交易启动指令而不做处理。
69.其中,第二节点根据交易启动指令进行交易操作可以例如是进行链上交易操作,或者可以是进行链下交易操作。
70.可选的,本技术实施例中,交易请求中还可以携带有第一节点的身份信息、第二节点的身份信息。
71.候选节点在基于管理节点的身份信息确定自身为该交易请求对应的管理节点时,该管理节点可以从根据交易请求中携带的第二节点的身份信息生成交易启动指令,这样交易启动指令中就携带有该第二节点的身份信息。这样接收到交易启动指令的节点可以根据该第二节点的身份信息确定自身是否为该第二节点。
72.可选的,第二节点进行交易操作的过程中可能会得到一些可以表示交易状态的凭证,即交易凭证,交易凭证例如可以是发货证明、进度状态等。第二节点可以将该些交易凭证发送给管理节点,其中发送方式即第二节点通过广播的方式将交易凭证发送给区块链网络中的各个节点。包括管理节点在内的各个节点接收并存储第二节点发送的交易凭证,以便于对交易操作过程进行追踪。
73.在实际应用中,第一节点可以发起多个交易请求,不同的交易请求对应的第二节点和管理节点均可以不同。此外,还可能会出现,在某一交易请求中,a为交易发起方,即第一节点,而在另一交易请求中,a为交易参与方,即第二节点。相同的交易双方的不同次交易可以指定不同的候选节点作为管理节点。
74.相应的,一个候选节点可能同时是多个交易请求的管理节点,因此,为了便于对各个交易请求进行区分,交易请求中还需要携带有交易标识,相应的,管理节点生成交易启动指令时,该交易启动指令中也携带有交易标识。这样第二节点才能够分辨接收到的交易启
动指令对应的交易请求。
75.本技术实施例中,第一节点生成的交易请求,以及管理节点生成的交易启动指令均是广播给区块链网络中的所有节点,区块链网络中的所有节点均对交易过程进行了记录,从而实现交易过程可追踪的目的。
76.步骤203,管理节点在接收到第一节点发送的交易状态消息时,根据交易状态消息对多签账户中的数字资产进行管理。
77.其中,交易状态消息表示在交易操作过程中交易成功或交易失败。
78.在实际应用中,在第二节点进行交易操作时,与第二节点进行实际交易的第一节点可以获取到该交易操作的状态,交易操作的实际状态包括交易成功和交易失败。这样,第一节点可以基于交易操作的状态生成交易状态信息,并广播该交易状态信息。
79.其中,该交易状态信息中可以包含有交易请求的标识,这样管理节点接收到交易状态信息时,才可以确定该交易状态信息对应于哪一个交易请求。
80.管理节点根据接收到的交易状态消息识别出该交易状态信息对应于哪一个交易请求之后,可以根据交易状态消息对应的交易请求确定需要管理的多签账户,并对多签账户中的数字资产进行管理。
81.下面分别从多签账户以及对多签账户中的数字资产的管理两个方面进行说明:
82.第一,多签账户为第一节点和管理节点对应的账户,第一节点或者管理节点可以基于第一节点的公钥和管理节点的公钥生成第一节点和管理节点对应的多签账户的账户地址。
83.事实上,区块链网络中的任意一个节点均可以基于第一节点的公钥和管理节点的公钥确定第一节点和管理节点对应的多签账户的账户地址。
84.需要说明的是,第一节点向管理节点发送交易请求之前,需要向该多签账户中转移数字资产。具体的,第一节点可以生成转账消息并广播,转账消息表示第一节点将第一节点对应的账户内的预设数字资产转移至多签账户。这样区块链网络中的各个节点均可以接收到该转账消息,这个区块链网络中的各个节点(包括管理节点在内)分别根据该转账消息在各自维护的账本中执行从第一节点对应的账户中减去预设数字资产,向多签账户中加入该预设数字资产的操作。当区块链网络中的各个节点均完成各自账本的更新,即表示将第一节点对应的账户内的预设数字资产转移至多签账户。
85.相应的,交易请求中可以携带有交易金额,交易金额即第一节点需要向第二节点支付的数字资产的资源值。在管理节点向第二节点发送交易启动指令之前,管理节点可以根据交易请求检测多签账户中的数字资产是否大于交易请求中携带的交易金额,若大于或等于,则管理节点向第二节点发送交易启动指令,若小于,则管理节点确定交易条件不成立,这种情况下,管理节点不向第二节点发送交易启动指令。
86.第二,管理节点对多签账户中的数字资产进行管理的过程可以包括以下内容:管理节点可以基于交易成功或者交易失败等状态信息对多签账户执行转入/转出/冻结等操作。
87.可选的,管理节点可以根据交易成功或者交易失败等状态信息生成管理操作消息,并广播该管理操作消息。该管理操作消息包括了转入操作消息、转出操作消息、冻结操作消息等中的至少一种。
88.区块链网络中的所有节点均可以接收到该管理操作消息,并基于该管理操作消息分别对自身维护的账本进行更新。与此同时,管理节点也需要基于管理操作消息对其维护的账本进行更新。
89.本技术实施例提供的数据处理方法中,第一节点发起交易请求并广播,这样区块链网络中所有节点均接收并存储该交易请求。各候选节点收到交易请求之后,通过比对自身的身份信息和管理节点的身份信息可以确定自身是否为该交易请求的管理节点,若是,则该候选节点作为管理节点对该交易请求进行管理,其管理过程包括:管理节点生成交易启动指令并广播,这样区块链网络中所有节点均接收并存储该交易启动指令。第二节点基于交易启动指令进行交易操作。相应的,第一节点获得交易操作的状态,基于此生成交易状态消息并广播,这样区块链网络中所有节点均接收并存储该交易状态消息。管理节点根据接收到的交易状态信息对第一节点和管理节点对应的多签账户进行管理,实现了根据链下交易的状态来管理链上账户的数字资产的目的,这样就能够保证链上交易与链下交易同步,提高链上链下交易过程的可靠性和安全性。
90.下面对本技术实施例中,管理节点根据所述交易状态消息对多签账户中的数字资产进行管理的过程包括以下两个方面,第一方面:若交易状态消息表示在交易操作过程中交易成功,则管理节点将多签账户中的数字资产转移至第二节点对应的账户。第二方面:若交易状态消息表示在交易操作过程中交易失败,则管理节点将多签账户中的数字资产退回至第一节点对应的账户。
91.下面对这两个方面分别进行详细说明。
92.第一方面:
93.若交易状态消息表示在交易操作过程中交易成功,表示链下交易已经成功,这种情况下,管理节点需要基于其管理职能完善链上交易,即将多签账户中的数字资产转移至第二节点对应的账户。
94.在一种可选的实现方式中,管理节点将多签账户中的数字资产转移至第二节点对应的账户的过程包括以下内容:管理节点生成转账交易信息并广播,这样区块链网络中的每个节点都可以接收并存储该转账交易信息,该转账交易信息表示将多签账户中的数字资产转移到第二节点对应的账户。管理节点以及接收到该转账交易信息的各个节点分别在各自维护的账本中执行从多签账户中减去预设资源值对应的数字资产,向第二节点对应的账户中加入预设资源值对应的数字资产的操作。当区块链网络中的各个节点均完成各自账本的更新,即表示将多签账户中的数字资产转移到了第二节点对应的账户。
95.在另一种可选的实现方式中,如图3所示:
96.步骤301,管理节点在接收到交易状态消息之后,接收第一节点发送的第一数字签名和第一身份信息。
97.第一节点广播交易状态消息之后,还可以生成第一数字签名,第一数字签名是对第一节点的身份信息的签名,然后第一节点广播第一数字签名和第一节点的身份信息,这样区块链网络中的所有节点均可以接收到该第一数字签名和第一节点的身份信息。
98.其中,该第一数字签名表示第一节点授予管理节点转移多签账户中的数字资产的权限。在交易成功的情况下,第一节点通过广播第一数字签名的方式授予管理节点转移多签账户中的数字资产的权限。
99.第一节点生成第一数字签名是指,第一节点对第一节点的身份信息和交易信息基于自身的私钥进行加密,得到第一数字签名。
100.步骤302,管理节点在收到所述第一数字签名之后,生成第二数字签名,管理节点将多签账户中的数字资产转移至第二节点对应的账户。
101.多签账户,即具有符合要求的多个签名时,才可以将数字资产转出。
102.管理节点在接收到第一数字签名之后,生成第二数字签名并广播,第二数字签名表示管理节点同意将多签账户中的数字资产转移至第二节点对应的账户。
103.这样区块链网络中的每个节点均可以接收到第一数字签名和第二数字签名,这种情况下,区块链网络中的每个节点均可以基于第一数字签名和第二数字签名确定是否满足多签账户的资产转出条件,若满足,则各个节点分别在各自维护的账本中执行从多签账户中减去预设资源值对应的数字资产,向第二节点对应的账户中加入预设资源值对应的数字资产的操作。当区块链网络中的各个节点均完成各自账本的更新,即表示将多签账户中的数字资产转移到了第二节点对应的账户。
104.需要说明的是,管理节点生成第二数字签名是指,管理节点对管理节点的身份信息和交易信息基于自身的私钥进行加密,得到第二数字签名。
105.该方案中,第一节点是在确定交易成功的情况下,广播第一数字签名和第一节点的身份信息,也就是说,第一节点是在交易成功的情况下,向管理节点授予从多签账户中转出数字资产的权限。
106.在另一种可选的实现方式中,本技术实施例还提供一种方案,第一节点在发起交易请求时,即向管理节点授予从多签账户中转出数字资产的权限。具体的,如图4所示。
107.步骤401,管理节点根据交易请求获取第一节点的身份信息和第一数字签名。
108.本技术实施例中,交易请求还包括第一节点的第一数字签名和第一节点的身份信息,其中,第一数字签名表示第一节点授予管理节点转移多签账户中的数字资产的权限。这就表示,管理节点在接收到交易请求时,即获取到了从多签账户中转出数字资产的权限。
109.步骤402,管理节点向第二节点发送交易启动指令,并接受到第一节点发送的交易状态消息。
110.交易状态消息表示在交易操作过程中交易成功或交易失败。
111.步骤403,管理节点基于交易状态信息生成第二数字签名。
112.管理节点在接收到第一节点发送的交易状态信息,且交易状态信息表示在交易操作过程中交易成功时,生成第二数字签名并广播,第二数据签名表示管理节点同意将多签账户中的数字资产转移至第二节点对应的账户。
113.这样区块链网络中的每个节点均可以接收到第一数字签名和第二数字签名,即满足了多签账户的资产转出条件。区块链网络中的各个节点(包括第一节点、第二节点和管理节点在内)在接收到第一数字签名和第二数字签名之后,确定第一节点和管理节点对应的多签账户的资产转出条件,则各个节点分别在各自维护的账本中执行从多签账户中减去预设资源值对应的数字资产,向第二节点对应的账户中加入预设资源值对应的数字资产的操作。当区块链网络中的各个节点均完成各自账本的更新,即表示将多签账户中的数字资产转移到了第二节点对应的账户。
114.在另一种可选的实现方式中,管理节点在接收到第一数字签名之后,还可以对第
一数字签名进行签名验签。若验签通过,则说明第一数字签名是有效的,然后,管理节点再生成第二数字签名。若验签未通过,则确定第一数字签名无效。
115.可选的,管理节点可以根据第一节点的身份信息和交易信息对第一数字签名进行验证。
116.可选的,管理节点可以对第一节点的身份信息和交易信息进行哈希运算,得到第一哈希结果,对第一数字签名进行机密,得到第二哈希结果,若第一哈希结果和第二哈希结果一致,则确定验签通过,若不一致,则验签未通过。
117.在实际应用中,区块链网络中的各个节点在接收到第一数字签名之后,都可以对第一数字签名进行验证,以确定第一数字签名有效。相应的,区块链网络中的各个节点在接收到第二数字签名之后,也均可以对第二数字签名进行验证,以确定第二数字签名有效,然后基于有效的第一数字签名和第二数字签名确定是否满足第一节点和管理节点对应的多签账户的资产转出条件。
118.需要说明的是,区块链网络中的各个节点对第一数字签名和第二数字签名进行验证的过程可以参考管理节点对第一数字签名进行验证的过程,在此不进行赘述。
119.第二方面:
120.若交易状态消息表示在交易操作过程中交易失败,表示链下交易已经失败,这种情况下,管理节点需要基于其管理职能终止向第二节点对应的账户转账的交易,并建立新的转账交易,该新的转账交易即将多签账户中的数字资产退回至第一节点对应的账户的交易,具体的,如图5所示。
121.步骤501,管理节点生成转账交易信息,并广播转账交易信息,
122.管理节点建立新的转账交易是指管理节点生成转账交易信息,并广播该转账交易信息,其中,该转账交易信息携带有所述管理节点的数字签名,所述管理节点的数字签名表示管理节点授予第一节点将多签账户中的数字资产转移至第一节点对应的账户的权限。
123.可选的,该转账交易信息还可以包括管理节点的身份信息、转账交易标识、第一节点的身份信息以及多签账户的账户地址。这样区块链网络中的各个节点接收到转账交易信息后,可以根据管理节点的身份信息确定转账发起者的身份,根据第一节点的身份信息确定转账接受者的身份以及根据多签账户的账户地址确定转账账户,同时根据管理节点的数字签名确定是否符合多签账户的转出条件,若符合则各个节点分别在各自维护的账本中执行从多签账户中减去预设资源值对应的数字资产,向第一节点对应的账户中加入预设资源值对应的数字资产的操作。若不符合转出条件,则仅做存储,而不更新账本。
124.步骤502,管理节点接收第一节点发送的与转账交易信息关联的数字签名,并将多签账户中的数字资产转移至第一节点对应的账户。
125.其中,第一节点接收到转账交易信息之后,可以生成与该转账交易信息关联的数字签名并广播,第一节点发送的与转账交易信息关联的数字签名表示第一节点同意将多签账户中的数字资产转移至第一节点对应的账户。
126.区块链网络中的各个节点(包括管理节点在内)接收到第一节点广播的与该转账交易信息关联的数字签名之后,再次根据管理节点的数字签名和与该转账交易信息关联的数字签名确定是否符合多签账户的转出条件,若符合则各个节点分别在各自维护的账本中执行从多签账户中减去预设资源值对应的数字资产,向第一节点对应的账户中加入预设资
源值对应的数字资产的操作。若不符合转出条件,则仅做存储,而不更新账本。
127.需要说明的是,管理节点将多签账户中的数字资产退回至第一节点对应的账户的过程中,第一节点需要对管理节点的数字签名进行验证,而管理节点也需要对第一节点发送的与转账交易信息关联的数字签名进行验证。
128.本技术实施例中,当交易失败时,管理节点将多签账户中的数字资产退回给第一节点对应的账户,从而使得链上交易与链下交易的状态同步。
129.在本技术的另一个实施例中,如图6所示,还提供了一种基于区块链的数据处理系统,该系统应用于区块链网络中,该区块链网络包括第一节点、第二节点和多个候选节点,该系统包括:
130.步骤601,第一节点播交易请求,交易请求中携带有管理节点的身份信息。
131.步骤602,各候选节点接收交易请求,并根据管理节点的身份信息确定候选节点是否为管理节点,若候选节点是管理节点,则根据交易请求向第二节点发送交易启动指令。
132.步骤603,第二节点根据交易启动指令进行交易操作。
133.步骤604,第一节点广播交易状态消息,交易状态消息表示在交易操作过程中交易成功或交易失败。
134.步骤605,管理节点在接收到交易状态消息时,根据交易状态消息对多签账户中的数字资产进行管理。其中,多签账户为第一节点和管理节点对应的账户。
135.应该理解的是,虽然图2至图6中的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2至图6中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
136.在一个实施例中,如图7所示,提供了一种数据处理装置700,应用于区块链网络中的候选节点,所述区块链网络包括第一节点、第二节点和多个所述候选节点,所述装置包括:接收模块701、确定模块702和管理模块703,其中:
137.接收模块701,用于接收第一节点发送的交易请求,交易请求中携带有管理节点的身份信息;
138.确定模块702,用于根据管理节点的身份信息确定候选节点是否为管理节点,若候选节点是管理节点,则根据交易请求向第二节点发送交易启动指令,交易启动指令用于指示第二节点进行交易操作;
139.管理模块703,用于在接收到第一节点发送的交易状态消息时,根据交易状态消息对多签账户中的数字资产进行管理;交易状态消息表示在交易操作过程中交易成功或交易失败,多签账户为第一节点和管理节点对应的账户。
140.在一个实施例中,管理模块703具体用于:若交易状态消息表示在交易操作过程中交易成功,则管理节点将多签账户中的数字资产转移至第二节点对应的账户。
141.在一个实施例中,交易请求还包括第一节点的第一数字签名和第一节点的身份信息,第一数字签名表示第一节点授予管理节点转移多签账户中的数字资产的权限,管理模
块703具体用于:管理节点根据第一节点的身份信息对第一数字签名进行验证;在确定第一数字签名有效的情况下,管理节点生成第二数字签名,并广播第二数字签名;第二数据签名表示管理节点同意将多签账户中的数字资产转移至第二节点对应的账户;管理节点将多签账户中的数字资产转移至第二节点对应的账户。
142.在一个实施例中,管理模块703具体用于:管理节点对第一节点的身份信息进行签名验签;
143.管理节点检测验签结果,若验签通过,则确定第一数字签名有效,若验签未通过,则确定第一数字签名无效。
144.在一个实施例中,管理模块703具体用于:若交易状态消息表示在交易操作过程中交易失败,则管理节点将多签账户中的数字资产退回至第一节点对应的账户。
145.在一个实施例中,管理模块703具体用于:管理节点生成转账交易信息,并广播转账交易信息,转账交易信息携带有管理节点的数字签名,管理节点的数字签名表示管理节点授予第一节点将多签账户中的数字资产转移至第一节点对应的账户的权限;
146.管理节点接收第一节点发送的与转账交易信息关联的数字签名,第一节点发送的与转账交易信息关联的数字签名表示第一节点同意将多签账户中的数字资产转移至第一节点对应的账户;
147.管理节点将多签账户中的数字资产转移至第一节点对应的账户。
148.在一个实施例中,接收模块701具体用于:
149.管理节点根据第一节点的公钥和管理节点的公钥生成多签账户;
150.管理节点接收第一节点发送的转账消息,转账消息表示第一节点将第一节点对应的账户内的预设数字资产转移至多签账户;
151.管理节点根据转账消息将第一节点对应的账户内的预设数字资产转移至多签账户中。
152.在一个实施例中,接收模块701具体用于:
153.管理节点接收并存储第二节点发送的交易凭证,交易凭证为第二节点在进行交易操作的过程中得到的凭证。
154.关于数据处理装置的具体限定可以参见上文中对于数据处理方法的限定,在此不再赘述。上述数据处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
155.在一个实施例中,提供了一种计算机设备,该计算机设备的内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种数据处理方法。
156.本领域技术人员可以理解,图8中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备
可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
157.在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
158.对于各候选节点,候选节点接收第一节点发送的交易请求,交易请求中携带有管理节点的身份信息;
159.候选节点根据管理节点的身份信息确定候选节点是否为管理节点,若候选节点是管理节点,则根据交易请求向第二节点发送交易启动指令,交易启动指令用于指示第二节点进行交易操作;
160.管理节点在接收到第一节点发送的交易状态消息时,根据交易状态消息对多签账户中的数字资产进行管理;交易状态消息表示在交易操作过程中交易成功或交易失败,多签账户为第一节点和管理节点对应的账户。
161.在一个实施例中,处理器执行计算机程序时还实现以下步骤:
162.若交易状态消息表示在交易操作过程中交易成功,则管理节点将多签账户中的数字资产转移至第二节点对应的账户。
163.在一个实施例中,交易请求还包括第一节点的第一数字签名和第一节点的身份信息,第一数字签名表示第一节点授予管理节点转移多签账户中的数字资产的权限,处理器执行计算机程序时还实现以下步骤:
164.管理节点根据第一节点的身份信息对第一数字签名进行验证;
165.在确定第一数字签名有效的情况下,管理节点生成第二数字签名,并广播第二数字签名;第二数据签名表示管理节点同意将多签账户中的数字资产转移至第二节点对应的账户;
166.管理节点将多签账户中的数字资产转移至第二节点对应的账户。
167.在一个实施例中,处理器执行计算机程序时还实现以下步骤:
168.管理节点对第一节点的身份信息进行签名验签
169.管理节点检测验签结果,若验签通过,则确定第一数字签名有效,若验签未通过,则确定第一数字签名无效。
170.在一个实施例中,处理器执行计算机程序时还实现以下步骤:
171.若交易状态消息表示在交易操作过程中交易失败,则管理节点将多签账户中的数字资产退回至第一节点对应的账户。
172.在一个实施例中,处理器执行计算机程序时还实现以下步骤:
173.管理节点生成转账交易信息,并广播转账交易信息,转账交易信息携带有管理节点的数字签名,管理节点的数字签名表示管理节点授予第一节点将多签账户中的数字资产转移至第一节点对应的账户的权限;
174.管理节点接收第一节点发送的与转账交易信息关联的数字签名,第一节点发送的与转账交易信息关联的数字签名表示第一节点同意将多签账户中的数字资产转移至第一节点对应的账户;
175.管理节点将多签账户中的数字资产转移至第一节点对应的账户。
176.在一个实施例中,处理器执行计算机程序时还实现以下步骤:
177.管理节点根据第一节点的公钥和管理节点的公钥生成多签账户;
178.管理节点接收第一节点发送的转账消息,转账消息表示第一节点将第一节点对应的账户内的预设数字资产转移至多签账户;
179.管理节点根据转账消息将第一节点对应的账户内的预设数字资产转移至多签账户中。
180.在一个实施例中,处理器执行计算机程序时还实现以下步骤:
181.管理节点接收并存储第二节点发送的交易凭证,交易凭证为第二节点在进行交易操作的过程中得到的凭证。
182.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
183.对于各候选节点,候选节点接收第一节点发送的交易请求,交易请求中携带有管理节点的身份信息;
184.候选节点根据管理节点的身份信息确定候选节点是否为管理节点,若候选节点是管理节点,则根据交易请求向第二节点发送交易启动指令,交易启动指令用于指示第二节点进行交易操作;
185.管理节点在接收到第一节点发送的交易状态消息时,根据交易状态消息对多签账户中的数字资产进行管理;交易状态消息表示在交易操作过程中交易成功或交易失败,多签账户为第一节点和管理节点对应的账户。
186.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:若交易状态消息表示在交易操作过程中交易成功,则管理节点将多签账户中的数字资产转移至第二节点对应的账户。
187.在一个实施例中,交易请求还包括第一节点的第一数字签名和第一节点的身份信息,第一数字签名表示第一节点授予管理节点转移多签账户中的数字资产的权限,计算机程序被处理器执行时还实现以下步骤:管理节点根据第一节点的身份信息对第一数字签名进行验证;
188.在确定第一数字签名有效的情况下,管理节点生成第二数字签名,并广播第二数字签名;第二数据签名表示管理节点同意将多签账户中的数字资产转移至第二节点对应的账户;
189.管理节点将多签账户中的数字资产转移至第二节点对应的账户。
190.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:管理节点对第一节点的身份信息进行签名验签;
191.管理节点检测验签结果,若验签通过,则确定第一数字签名有效,若验签未通过,则确定第一数字签名无效。
192.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:若交易状态消息表示在交易操作过程中交易失败,则管理节点将多签账户中的数字资产退回至第一节点对应的账户。
193.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:管理节点生成转账交易信息,并广播转账交易信息,转账交易信息携带有管理节点的数字签名,管理节点的数字签名表示管理节点授予第一节点将多签账户中的数字资产转移至第一节点对应的账户的权限;
194.管理节点接收第一节点发送的与转账交易信息关联的数字签名,第一节点发送的与转账交易信息关联的数字签名表示第一节点同意将多签账户中的数字资产转移至第一节点对应的账户;
195.管理节点将多签账户中的数字资产转移至第一节点对应的账户。
196.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:管理节点根据第一节点的公钥和管理节点的公钥生成多签账户;
197.管理节点接收第一节点发送的转账消息,转账消息表示第一节点将第一节点对应的账户内的预设数字资产转移至多签账户;
198.管理节点根据转账消息将第一节点对应的账户内的预设数字资产转移至多签账户中。
199.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:管理节点接收并存储第二节点发送的交易凭证,交易凭证为第二节点在进行交易操作的过程中得到的凭证。
200.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read

only memory,rom)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。
201.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
202.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献