[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN107395353B - 一种区块链共识方法及装置 - Google Patents

一种区块链共识方法及装置 Download PDF

Info

Publication number
CN107395353B
CN107395353B CN201710271900.3A CN201710271900A CN107395353B CN 107395353 B CN107395353 B CN 107395353B CN 201710271900 A CN201710271900 A CN 201710271900A CN 107395353 B CN107395353 B CN 107395353B
Authority
CN
China
Prior art keywords
crowd
funding
node
consensus
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.)
Active
Application number
CN201710271900.3A
Other languages
English (en)
Other versions
CN107395353A (zh
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.)
Advanced Nova Technology Singapore Holdings Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201710271900.3A priority Critical patent/CN107395353B/zh
Publication of CN107395353A publication Critical patent/CN107395353A/zh
Application granted granted Critical
Publication of CN107395353B publication Critical patent/CN107395353B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3297Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请公开了一种区块链共识方法及装置,共识节点接收业务受理平台发送的待存储业务数据后,可根据该待存储业务数据生成预处理块,当该共识节点是领导节点时,可在对该预处理块共识校验通过后,将该预处理块发送至各下属节点进行共识校验,当该共识节点不是领导节点时,则将该预处理块发送至该领导节点。可见,通过本申请实施例提供的方法,共识节点在接收到待存储业务数据后,便可创建与对应的预处理块,并且在对该预处理块进行共识时,执行领导节点先校验,只有校验通过后,才由该领导节点将该预处理块发送至各下属节点进行共识校验,使得任一共识节点都可以随时发起共识。简化了共识发起的过程,提高了区块链共识效率。

Description

一种区块链共识方法及装置
技术领域
本申请涉及信息技术领域,尤其涉及一种区块链共识方法及装置。
背景技术
随着信息技术的发展,区块链技术由于其具有的开放性、不可篡改性、去中心化等优点,成为人们重点关注的技术。由于现有区块链技术的去中心化的特点,使得在该区块链中执行的业务在存储在区块链(即,上链)之前,还需要由该区块链中的各节点对该业务对应的业务数据(如,对业务进行处理后的结果)进行共识。
现有区块链技术中采用的区块链共识方法,如,工作量证明、权益证明、使用拜占庭容错算法(Practical Byzantine Fault Tolerance,PBFT),仍然存在共识过程较为复杂的问题。如,PBFT需要三阶段共识。而对于联盟链或者对于容错要求较低的区块链来说,并不需要如此复杂的共识方法,更需要一种共识效率高的区块链共识方法。
发明内容
本申请实施例提供一种区块链共识方法,用于提高区块链共识效率。
本申请实施例提供一种区块链共识装置,用于提高区块链共识效率。
本申请实施例采用下述技术方案:
一种区块链共识方法,包括:
共识节点接收业务受理平台发送的待存储业务数据;
根据所述待存储业务数据生成预处理块;
若所述共识节点是领导节点,则对所述预处理块进行共识校验,并在校验通过后,将所述预处理块发送至各下属节点进行共识校验;
若所述共识节点不是领导节点,则将所述预处理块发送至所述领导节点进行共识校验,以使得所述领导节点在对所述预处理块的共识校验通过后,将所述预处理块发送至各下属节点进行共识校验。
一种区块链共识装置,包括:
接收模块,接收业务受理平台发送的待存储业务数据;
生成模块,根据所述待存储业务数据生成预处理块;
若所述装置是领导节点,则校验发送模块,对所述预处理块进行共识校验,并在校验通过后,将所述预处理块发送至各下属节点进行共识校验;
若所述装置不是领导节点,则校验发送模块,将所述预处理块发送至所述领导节点进行共识校验,以使得所述领导节点在对所述预处理块的共识校验通过后,将所述预处理块发送至各下属节点进行共识校验。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
共识节点接收业务受理平台发送的待存储业务数据后,可根据该待存储业务数据生成预处理块,当该共识节点是领导节点时,可直接对该预处理块进行共识校验,并在校验通过后,将该预处理块发送至各下属节点进行共识校验,当该共识节点不是领导节点时,则将该预处理块发送至该领导节点进行共识校验,以使该领导节点在校验通过后,将该预处理块发送至各下属节点进行共识校验。可见,通过本申请实施例提供的方法,共识节点在接收到待存储业务数据后,便可创建与对应的预处理块,并且在对该预处理块进行共识时,执行领导节点先校验,只有校验通过后,才由该领导节点将该预处理块发送至各下属节点进行共识校验,使得任一共识节点都可以随时发起共识。简化了共识发起的过程,提高了区块链共识效率。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的一种区块链共识过程;
图2为本申请实施例提供的区块链中各共识节点的示意图;
图3为本申请实施例提供的区块结构示意图;
图4为本申请实施例提供的领导节点接收区块高度相同的多个预处理块的示意图;
图5为本申请实施例提供的另一种业务处理过程;
图6为本申请实施例提供的一种区块链共识装置的结构示意图;
图7为本申请实施例提供的另一种业务处理装置的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
图1为本申请实施例提供的另一种业务处理过程,具体可包括以下步骤:
S101:共识节点接收业务受理平台发送的待存储业务数据。
在本申请实施例中,该业务受理平台可以用于接收项目发起方发送的项目创建请求,并创建对应的业务项目,当该业务项目处于运行状态时,该业务受理平台还可接收用户针对该业务项目的业务处理请求,并根据该业务项目以及该业务处理请求进行业务处理。
其中,该业务受理平台可以是众筹平台,则该众筹平台既可接收由筹款方发送的众筹项目创建请求,并创建对应的众筹项目,也可接收由跟投人发送的认筹请求,该认筹请求可以是针对处于筹资状态的众筹项目的认筹请求。本申请实施例后续以众筹平台接收众筹项目创建请求为例继续后续说明。
在本申请实施例中,区块链网络中可存在多个共识节点,各共识节点可为隶属于不同众筹平台的节点,例如,众筹平台A以及众筹平台B两方合作组成众筹联盟,其中,若该众筹平台A拥有2个接收待存储业务数据的终端,则该众筹平台A拥有2个共识节点,若该众筹平台B拥有1个接收待存储业务数据的终端,则该众筹平台B拥有1个共识节点,如图2所示。需要说明的是,在本申请实施例中,该待存储业务数据可为图3所示的业务处理过程中,该业务受理平台(如,众筹平台)生成的包含该业务处理数据与该项目标识的待存储业务数据。
图2为本申请实施例提供的区块链中各共识节点的示意图,其中,不同的共识节点分属于不完全相同的众筹平台,可见节点a、节点b以及节点c属于众筹平台A的节点,而节点d以及节点e属于众筹平台B的节点,但上述节点都是该区块链网络中的共识节点,均可以接收待存储业务数据,并具有发起共识的权限。当然,在本申请实施例中,一个共识节点也可对应多个众筹平台,由于该众筹平台在生成待存储数据时,可以将该众筹平台中接收该众筹项目创建请求的众筹方的信息,作为该众筹平台的租户信息发送至该共识节点,所以该共识节点在接收到该待存储业务数据时,只要该待存储业数据中包含租户信息,便可确定该认筹请求对应的业务处理数据是由哪个众筹方受理的。
于是,在本申请实施例中,该区块链网络中的每个共识节点均可接收待存储业务数据,而隶属于不同众筹平台的共识节点通常可只接收所属的众筹平台发送的待存储业务数据。
对于众筹平台来说,该众筹平台可以通过自身的渠道对众筹项目进行宣传,并且也可通过自身的渠道接收跟投人的认筹请求,并根据认筹请求与该跟投人进行交易,则跟投人支付相应资金获得对应的认筹股份。其中,众筹平台常用的渠道包括:该众筹平台推出的APP、该众筹平台的网页等由该众筹平台建立的渠道,或者该众筹平台也可与第三方的社交平台进行合作,通过社交平台的渠道宣传该众筹平台的众筹项目,并且也可以通过第三方平台进行众筹项目的股份的交易等等,本申请对于众筹平台如何对众筹项目进行宣传,以及如何获得跟投人的投资并不做限制,各众筹平台只需在根据与跟投人的交易业务,确定对应的待存储业务数据并发送至该众筹平台对应的共识节点即可,则后续通过该共识节点,该众筹平台与跟投人之间的交易业务对应的待存储业务数据将可作为该区块链的数据记录在该区块链网络中的各共识节点的账本中。
另外,由于在本申请实施例中,该区块链主要用于解决多众筹平台共同合作的问题,所以该区块链网络中的各共识节点可视为均是属于众筹平台的(当然,如前所述众筹平台可以存在多个),所以在本申请中,该区块链可以视为是联盟区块链,而众筹平台对应的各共识节点则可视为是该联盟区块链中的联盟成员,具有在该区块链网络中进行操作的权限(如,查看、搜索、共识等等)。
进一步地,由于该区块链为联盟区块链,所以在该区块链网络中的各共识节点可以在加入该区块链网络中时,将该共识节点的节点信息广播至该区块链网络中,其中,该节点信息可由该共识节点对应的众筹平台进行签名,以使得该区块链网络中的各共识节点确定该共识节点的节点信息的真实性。其中,该节点信息可以包括:该共识节点的标识、该共识节点的地址(如,IP地址或者MAC地址等)、该共识节点对应的众筹平台的标识等信息。并且,本申请对该节点信息具体包含的内容不做限定,具体该节点信息包括何种信息可由各众筹平台在组建该区块链时确定。
需要说明的是,该共识节点可以是终端,如,手机、个人电脑/平板电脑等设备,或者该共识节点也可以是服务器,则该服务器可为该共识节点对应的服务器,并且该服务器可以是单独的一台设备,也可以是有多台设备组成的系统,只要该设备可作为该区块链网络的共识节点接收与该共识节点对应的众筹平台发送的待存储业务数据,并且具有在该区块链网络中发起共识的权限即可,本申请对该共识节点的具体为何种设备此并不做限定。
S102:根据所述待存储业务数据生成预处理块。
在本申请实施例中,当经过步骤S201中接收该待存储业务数据之后,该共识节点确定由该共识节点发起共识时,该共识节点可创建一个待共识的预处理块,并将在步骤S201中接收到的待存储业务数据写入该预处理块中。
具体的,该共识节点何时发起共识,可由该共识节点根据该区块链的共识机制确定。由于本申请实施例中涉及的业务处理过程可为对众筹项目的认筹过程,而在众筹项目的筹款过程中通常跟投人对众筹项目进行认筹的频率,相对于交易平台的交易频率较低,所以该共识机制可以是当该区块链网络中的任一共识节点接收到了待存储业务数据后,便根据该待存储业务数据发起共识。则该共识节点创建的该预处理块中,可以仅包含一次跟投人认筹操作对应的待存储业务数据。
另外,由于在现有技术中的众筹平台,存在多个租户共同租用一个众筹平台的情况,其中,每个租户可视为一个单独运作的众筹公司,所以会出现多个众筹公司租用同一个众筹平台进行众筹的情况。于是在本申请实施例中,该共识节点由于对应的是该众筹平台,而不是众筹公司,并且可能会出现一个众筹平台上的多个不同众筹公司对同一个众筹项目进行筹资的情况,所以该共识节点在接收到该待存储业务数据时,还可确定该待存储业务数据是与该众筹平台中的哪一个租户对应的,并将该租户信息作为节点信息的一部分写入该共识节点根据该待存储业务数据创建的预处理块中。
进一步地,该待存储业务数据中可包含:跟投人信息、认筹份额、认筹金额、认筹的众筹项目、认筹时间等信息。由于一个众筹平台可以同时开展多个众筹项目,所以该共识节点可以接收到不同认筹项目的待存储业务数据,所以有必要在待存储业务数据中确定该待存储业务数据对应的众筹项目的信息等数据。需要说明的是该认筹时间,可以是该待存储业务数据对应的认筹交易完成的时间、或者是该共识节点接收到该待存储业务数据的时间,具体可根据实际应用的需要进行设置本申请对此不做限定。但是,对于某些众筹项目来说,认筹时间的先后可能导致众筹项目中的不同权益,所以出于跟投人权益的保障的考虑,该认筹时间可以是跟投人在完成认筹交易的时间。
具体的,该共识节点创建的预处理块中除了包含有该待存储业务数据以外,该共识节点还可将该共识节点自身的节点信息写入该预处理块中。如步骤S101中所述的,该节点信息中可以包含该共识节点以及该共识节点对应的众筹平台的信息。
则该预处理块中的数据可包含:该预处理块的父区块的头哈希值、区块链版本、该预处理块的创建时间戳、该节点信息、该待存储业务数据等。同时,为了保持该区块链中记录的数据的灵活性,该预处理块链还可预留一定的扩展字段,以便后续如在该区块链中配置智能合约时,可以将该智能合约的地址写在该扩展字段中,当然,具体在该预处理块中是否需要该扩展字段,以及该扩展字段占用的存储空间的大小(即,扩展字段的容量)均可由创建该区块链的各众筹平台根据实际应用的需要确定,本申请对此不做限定。
图3为本申请实施例提供的区块结构示意图。其中,块高度用于表示当该预处理块上链之后,该预处理块在该区块链中的顺序位置,如,快高度175表示该预处理块在作为该区块链中的区块存储后,该预处理块为在该区块链中为按顺序排列的第175个区块。另外,该头哈希值为该共识节点根据该预处理块中的数据计算确定的哈希值,可以用于该区块链网络中的其他共识节点,判断该区块内的数据是否在传输过程中缺失或者被篡改。该区块中还包含节点信息以及业务处理数据等内容。
进一步地,该区块链可以为联盟区块链,则该区块链网络中的各共识节点可以通过专有网络进行通讯,而避免使用互联网等公网进行通讯,可进一步保证数据传输时的安全性,并且,各共识节点也无需对该预处理块内的数据(如,区块摘要)进行签名。当然,在本申请中所述的该预处理块的签名,也可以是由该共识节点对应的众筹平台对该待存储业务数据进行签名后的签名,或者由该众筹平台中的发送该待存储业务数据的租户对该待存储业务数据进行签名后的签名。若该区块链网络是运行在专有网络中的,则上述的签名过程可以简化,则该预处理块链中可以不包含签名。
当然,若该区块链网络使用的是公网,则该预处理块中可至少包含上述的至少一种签名。
S103:若所述共识节点是领导节点,则对所述预处理块进行共识校验,并在校验通过后,将所述预处理块发送至各下属节点进行共识校验。
在本申请实施例中,当该共识节点创建了预处理块之后,便需要将该预处理块广播至该区块链中的其他共识节点进行共识,则该共识节点可以根据该区块链预先配置的分布式协议,从该区块链网络中的各共识节点中,确定领导节点,以便后续将该预处理块发送至该领导节点进行共识。而若该共识节点本身就是该领导节点时,该共识节点则可对该预处理块进行共识校验,并在校验通过后,将该预处理块发送至各下属节点进行共识校验。
在本申请实施例中,由于该区块链可以视为是联盟区块链,所以该区块链可以采用分布式架构所使用的分布式协议,确定执行具体业务的节点,即,领导节点,并后续可由该领导节点将该共识节点的预处理块同步至该区块链中的其他共识节点中。
另外,该分布式协议具体可以是Raft协议,在Raft协议中,分布式网络中的各节点可分为领导节点(leader节点)以及下属节点(follower节点),该领导节点,具有向该分布式网络中的下属节点发送心跳信息的权限,而该分布式网络中的下属节点在接收到该领导节点发送的心跳信息后,可将该心跳信息更新在该下属节点本地的信息日志等内容。另外,当由该下属节点发起业务时,该下属节点可将该业务发送至该领导节点,并由该领导节点以进行业务处理,或者分发至其他下属节点进行业务处理。
于是在本申请实施例提供的该区块链网络中,各共识节点也可分为领导节点以及下属节点,其中,下属节点为没有发送心跳信息权限的共识节点,而领导节点为具有广播心跳信息权限的共识节点。其中,该领导节点可以是在该区块链网络开始运行时,由各共识节点选举产生的,具体该领导节点如何选举,以及该领导节点如何换届,可如现有技术中的Raft协议一致,本申请对此不做限定。
进一步地,在本申请实施例中,当该分布式协议为Raft协议时,由于Raft协议中的领导节点需要向该网络中的各节点发送心跳信息,所以该共识节点在确定该区块链网络中的领导节点时,可以通过接收到的心跳信息,确定该领导节点。若该共识节点在心跳信息对应的时间周期没有接收到领导节点发送的心跳信息时,则该共识节点可以等待其他共识节点发起选举,并接收候选人节点发送的投票请求,并通过响应该投票请求,选出下一届任期的领导节点。当然,该共识节点也可成为选举人节点,并向其他共识节点发送投票请求,则该共识节点也可成为该区块链网络中的领导节点。由于上述领导节点的确定属于现有技术,所以具体的技术细节本申请不再赘述。
具体的,当该共识节点为领导节点时,该领导节点可对步骤S102中生成的预处理块进行共识校验。该领导节点可以根据该预处理块的头哈希值对该预处理块中的数据进行校验,判断该预处理块中的数据在传输过程中是否被篡改,或者缺失。
若该领导节点对该预处理块中的数据校验通过,则该领导节点可以确定该预处理块的共识校验通过,则该领导节点可将该预处理块的数据存储在本地,更新该领导节点维护的区块链对应的数据。
进一步地,该领导节点在确定该预处理块的共识校验通过之后,还可通过心跳信息,将该预处理块通过心跳信息发送至该区块链网络中的其他共识节点,以使得其他共识节点分别重复该领导节点对该预处理块的内容的验证过程,并且若对该预处理块的内容的验证也通过时,该区块链网络中其他共识节点也可根据该预处理块的数据更新该自身维护的区块链对应的数据。
当然,在上述过程中,若该领导节点对该预处理块中的内容验证不通过,则该领导节点将拒绝更新该领导节点维护的区块链的数据,并且也不会将该预处理块同步至该区块链网络中的其他共识节点,若该区块链网络中的其他共识节点在对该领导节点发送的预处理块进行验证不通过时,也不会更新自身维护的区块链的数据。
S104:若所述共识节点不是领导节点,则将所述预处理块发送至所述领导节点进行共识校验,以使得所述领导节点在对所述预处理块的共识校验通过后,将所述预处理块发送至各下属节点进行共识校验。
在本申请实施例中,若该共识节点不是领导节点。则该共识节点在确定了该区块链网络中的领导节点后,便可将该共识节点在步骤S102中生成的预处理块发送至该领导节点进行验证,以使得该领导节点在通过对该预处理块的共识校验通过之后,将该预处理块同步至该区块链网络的其他共识节点中。
其中,该区块链网络中的其他共识节点在接收道该领导节点发送的该预处理块之后,也可对该预处理块的内容进行验证,并在验证通过之后,将该预处理块内的数据存储在本地,更新该区块链对应的数据。
具体的,在本申请实施例中,由于该区块链网络在共识时可以采用Raft协议的方式,选举出一个共识节点作为领导节点,所以该共识节点可将该预处理块发送至该领导节点,并由该领导节点将该预处理块同步至该区块链网络中的其他共识节点。
于是,首先,该共识节点可将该预处理块通过网络发送至该领导节点。之后,该领导节点可以根据该预处理块的头哈希值对该预处理块中的数据进行校验,判断该预处理块中的数据在传输过程中是否被篡改,或者缺失,并且该领导节点还可以根据该预处理块中的节点信息,判断该节点是否是该区块链网络中的共识节点,以及该节点信息是否与该领导节点本地存储的各共识节点中的任一一个匹配。
若该领导节点对该预处理块中的数据校验通过,并且该节点信息也可证明该共识节点是该区块链网络中的共识节点,则该领导节点可以确定该预处理块的共识校验通过,则该领导节点可将该预处理块的数据存储在本地,更新该领导节点维护的区块链对应的数据。
进一步地,该领导节点在确定该预处理块的共识校验通过之后,还可通过心跳信息,将该预处理块通过心跳信息发送至该区块链网络中的其他共识节点,以使得其他共识节点分别重复该领导节点对该预处理块的内容的验证过程,并且若对该预处理块的内容的验证也通过时,该区块链网络中其他共识节点也可根据该预处理块的数据更新该自身维护的区块链对应的数据。
当然,在上述过程中,若该领导节点对该预处理块中的内容验证不通过,则该领导节点将拒绝更新该领导节点维护的区块链的数据,并且也不会将该预处理块同步至该区块链网络中的其他共识节点,若该区块链网络中的其他共识节点在对该领导节点发送的预处理块进行验证不通过时,也不会更新自身维护的区块链的数据。
需要说明的是,由于对于每个共识节点,该共识节点不可能同时是下属节点以及领导节点,所以本申请步骤S103以及步骤S104是并行的两个步骤。对于每个共识节点来说,步骤S103以及步骤S104只能择一执行。
通过如图1所示的区块链共识过程,该区块链网络中的共识节点接收业务受理平台发送的待存储业务数据后,可根据该待存储业务数据生成预处理块,当该共识节点是领导节点时,可直接对该预处理块进行共识校验,并在校验通过后,将该预处理块发送至各下属节点进行共识校验,当该共识节点不是领导节点时,则将该预处理块发送至该领导节点进行共识校验,以使该领导节点在校验通过后,将该预处理块发送至各下属节点进行共识校验。可见,通过本申请实施例提供的方法,共识节点在接收到待存储业务数据后,便可创建与对应的预处理块,并且在对该预处理块进行共识时,执行领导节点先校验,只有校验通过后,才由该领导节点将该预处理块发送至各下属节点进行共识校验,使得任一共识节点都可以随时发起共识。简化了共识发起的过程,提高了区块链共识效率。并且,各公式节点可以分属于不完全相同的众筹平台,使得各众筹平台的筹款记录均可在各共识节点维护的该区块链对应的数据中,从而使得即使在不同的众筹平台中发起同一个众筹项目,各众筹平台也可以在众筹结束后,通过该区块链中存储的数据,确定由该众筹平台筹集到的资金,并且该筹集资金的记录也是各众筹平台承认的且难以篡改的,使得筹款方可以通过一个众筹项目在多众筹平台进行众筹,简化了筹款方在资金管理的复杂程度,提高了众筹项目的运行效率。
另外,由于在本申请实施例中根据Raft协议,对该预处理块进行共识校验。所以,当各共识节点中存在不良节点时。如,某一共识节点作恶,存储错误的预处理块时,该共识节点便可认为是不良节点。
若当该不良节点为领导节点时,则由于各下属节点需要对该预处理块进行共识校验,则即使该领导节点广播错误的预处理块(无论该预处理块是任意共识节点发送至该领导节点的,还是该领导节点创建的),各下属节点对该预处理块的共识校验也不会通过,则不会存储该预处理块。也就是说,当该领导节点为不良节点时,不会使各下属节点存储错误的预处理块。即使任一下属节点存储了错误的预处理块(如,设备错误,导致对错误的预处理块的校验通过),只要该领导节点换届后,由正常的下属节点担任新的领导节点。则该存储了错误的预处理块的下属节点,也需要一直接收正常的领导节点的心跳信号。而由于该心跳信号中包含的是正确的预处理块,所以该下属节点中会出现,错误的预处理块和正确的预处理块相冲突的情况(例如,存在区块高度相同的两个预处理块)。那么,当两个冲突的预处理块均通过了共识校验时,该下属节点可根据发送该预处理块的领导节点的任期的时间先后顺序,选择任期最近的领导节点发送的预处理块进行存储。于是,从较长的时间尺度上看,各共识节点存储正确的区块链。
若该不良节点为下属节点时,由于该下属节点可存储的内容必须是由该领导节点发送的,所以该下属节点无法完成对错误的预处理块的存储。即使该不良节点存储了错误的预处理块,由于各下属节点还需要对该预处理块进行共识校验,所以该不良节点依然无法使该错误的预处理块存储在各共识节点中,也就无法篡改区块链。
进一步地,在本申请实施例步骤S102中,该共识节点也可在接收到的待存储业务数据达到预设的数量时,根据各待存储业务数据创建该预处理块。,可以增加每一个预处理块中存储数据的数量,减少进行共识的频率。或者该共识节点也可是周期性的查询该共识节点本地是否存在未经过共识(即,未上链)的待存储业务数据,当存在未上链的待存储业务数据时,发起共识创建预处理块,当不存在未上链的待存储业务数据时,继续等待下个查询周期的到来,等等。由于众筹项目的特点,众筹开启时跟投人发起的认筹交易业务频率相对较低,当然也存在某些热门众筹项目跟投人众多的情况,所以该区块链的共识机制具体如何运行也可由工作人员进行根据当前运行的众筹项目的不同而进行调整。
更进一步地,在本申请实施例中,由于不同的众筹平台可以使用自身的APP发起众筹项目,而不同的众筹平台的APP的代码的编写可能存在差异,同时使用的编写语言也可能不同,所以当该区块链网络中的各共识节点在接收到该待存储业务数据时,该待存储业务数据可能是符合发送该共识节点对应的众筹平台的APP的读取规则的,而对于该区块链网络中其他共识节点对应的不同的众筹平台来说,该待存储业务数据的数据格式可能不可读取的数据格式,所以为了方便后续各众筹平台之间数据的交换,以及可能的手续数据分析等操作,在本申请实施例中,该共识节点在接收到该待存储业务数据之后,还可将该待存储业务数据的数据格式转换为指定的格式。
具体的,该共识节点在本申请步骤S101中在接收到该待存储业务数据之后,在步骤S102该共识节点将该待存储业务数据写入预处理块之前,该共识节点还可判断该待存储业务数据的格式是否为指定的格式,若是,则不进行格式转换,若否,则根据预设的数据格式,将该待存储业务数据的格式转换为指定的格式。其中,该指定的格式可为JSON格式。当然,该指定的格式也可由各众筹平台根据实际应用时的需要协商确定,只要该待存储业务数据在写入该预处理块之后,该预处理块可以作为平面文件(Flat File)被除去特定应用格式,从而可以使该预处理块中的数据可以迁移到不同的应用中进行数据处理即可。
另外,若该区块链采用接收一次待存储业务数据,就创建一个预处理块的方式,则该待存储业务数据中可不携带认筹时间,而由该预处理块的创建时间代替。
需要说明的是,本申请实施例所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤S101和步骤S102的执行主体可以为设备1,步骤S103的执行主体可以为设备2;又比如,步骤S101的执行主体可以为设备1,步骤S102和步骤S103的执行主体可以为设备2;等等。
进一步地,在本申请实施例中,当该区块链网络中加入新的共识节点时,可由该新加入的共识节点对应的众筹平台,根据该区块链的设置,为该新加入的共识节点配置节点信息,并将该节点信息发送至该区块链网络中的领导节点,该领导节点在对该节点信息校验通过后,将该新加入的共识节点的节点信息同步至该区块链网络中的各共识节点,而各共识节点仅需存储该新加入的共识节点的节点信息即可,而无需对该节点信息再次进行校验。同时该新加入的共识节点可从该领导节点下载已有的该区块链的数据,并对该区块链中每个区块的数据进行校验,以确定是否出现数据缺失或者在传输过程中遭到篡改的情况,并在对各区块的数据校验通过后,开始正常工作,如,接收待存储业务数据,参加领导节点的选举等等。
更进一步地,当某个众筹项目质量较好,使得该众筹项目较为受欢迎较多跟投人都对该众筹项目发起认筹请求时,该区块链网络中的各共识节点可能会在接收到该领导节点的两次心跳数据之前,同时接收到了不同跟投人发起的认筹交易对应的待存储业务数据,则此时该领导节点有可能接收到区块高度相同的两个预处理块,则此时,该领导节点可以根据预设的判断逻辑,确定其中一个预处理块先进行校验以及同步,另一个预处理块后进行校验以及同步。
具体的,当该领导节点接收到区块高度相同的不同预处理块时,该领导节点可先确定各区块高度相同的预处理块分别对应的创建时间。
之后再根据各区块高度相同的预处理块分别对应的创建时间先后顺序,确定各预处理块的广播顺序。将确定先进行广播的预处理块的头哈希值,作为后续进行广播的预处理块的父区块的哈希值,更新该后续进行广播的预处理块的父区块的哈希值。
最后,该领导节点可按照该广播顺序,将各预处理块逐一校验,并广播至该区块链的其他共识节点。
另外,当出现区块高度相同的预处理块的创建时间也相同时,该领导节点还可以根据各预处理块的头哈希值的大小顺序,确定广播顺序。或者,该领导节点也可采用随机排序的发昂视确定广播顺序。也就是说,当无法从创建时间上判断待存储业务数据的先后顺序时,则可采用任一数据对比大小,或者随机的方式确定广播顺序,具体采用何种方式本申请不做具体限定。
进一步地,由于存在区块校验不通过的情况,所以在本申请实施例中,当该领导节点接收到区块高度相同的多个预处理块时,可先对各预处理块的内容进行校验,在校验完成后,再判断是否由进行排序的需要(即,是否还有多个区块高度相同的预处理块),若存在排序的需要,再进行排序。
图4为本申请实施例提供的领导节点接收区块高度相同的多个预处理块的示意图,其中,区块x和区块y均以区块z为父区块,该领导节点对比该区块x和该区块y创建时间,可见该区块x的创建时间更早(时间戳数值更小),则该领导节点可确定以该区块x先校验以及广播,再对该区块y进行校验以及广播的广播顺序。并且,该领导节点还可根据该区块x的头哈希值,替换该区块y中的父区块哈希值,如用XXXXXXXXXX替换YYYYYYYYYY。并且,该领导节点可再次计算该区块y的头哈希值,并更换该区块y的头哈希值,或者对该头哈希值不做更换。其中,若在确定该区块的头哈希值时,该父区块的哈希值参与到了该头哈希值的计算中,则为了使后续下属节点可通过对该区块的共识校验,该领导节点可对该头哈希值进行计算以及更换,若在确定该区块的头哈希值时,该父区块的哈希值未参与到了该头哈希值的计算中,则无需更换该头哈希值。
另外,在本申请实施例中,利用区块链技术该共识节点,在每次创建预处理块时,可以根据该项目标识,确定与该项目标识对应的各业务处理数据。所以为了方便各共识节点对该项目标识对应的众筹项目进行监控,该共识节点在创建预处理块时,可以先根据该项目标识,确定最近一次存储的与该项目标识对应区块,并确定该众筹项目累计的总筹款金额,之后根据本次业务处理数据中的筹款金额,累加计算该众筹项目在经过本次认筹(该业务处理数据为对应于认筹请求的业务处理数据)之后的总筹款金额,并记录在该预处理块中。
以使得,该预处理块中记录该众筹项目的累计众筹金额,从而在通过该区块链监控该众筹项目的状态时,可以通过查询与该项目标识对应的最近存储的区块中记录的总筹款金额,进而可以避免通过该共享存储器存储业务处理数据时,对众筹项目进行监控导致的运营成本的增加。
进一步地,由于在现有技术中,存在不良众筹平台制造虚假认筹请求,以通过制造虚假的业务量,提高众筹平台的影响力的情况存在,而在本申请实施例中,在采用区块链技术存储该待存储业务数据时,由于各共识节点(如,领导节点以及下属节点)还需要对该待存储业务数据进行共识校验,所以可由各共识节点对该待存储业务数据进行校验,并且由于共识校验不通过时,共识节点将不会存储该待存储业务数据对应的预处理块,所以若在该众筹联盟中存在制造虚假认筹请求的不良众筹平台,则该不良的待存储业务数据也不会通过共识校验,从而从根源上杜绝不良众筹平台利用虚假认筹信息制造虚假业务量得到的可能。
具体的,在本申请实施例中,该共识节点在进行共识验证时,处理对该预处理块中的数据以及该区块哈希值进行匹配以外,该共识节点也可对该预处理块中的数据的具体内容进行校验。其中,由于认筹请求对应的业务可以视为是交易业务,即,跟投人出资购买众筹项目的股份,而现有技术已经存在多种对交易内容进行验证的方法,所以本申请对此不再做具体限定。
其中,由于各共识节点都是独立运行的,所以即使存在少量的共识节点被不良的众筹平台控制,而通过共识验证,由于多数共识节点是对应于良好的众筹平台的,不良众筹平台控制的共识节点所存储的区块链也不会以被其他共识节点接收,从而使得不良众筹平台难以将虚假信息记录在区块链中,减少不良众筹平台作恶的可能性。
另外,在本申请实施例提供的该区块链共识过程,可使得筹款方可通过一个账本,管理通过多个众筹平台对相同项目标识的众筹项目筹集的资金。并减少因为设备安全问题或者设备硬件问题等,导致该账本的损坏遗失。所以该众筹平台在存储业务处理数据时,可采用图1所示的区块链共识过程,存储该业务处理数据(如,图1所述的该待存储业务数据)。
需要说明的是,本申请实施例所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤S201和步骤S202的执行主体可以为设备1,步骤S203的执行主体可以为设备2;又比如,步骤S201的执行主体可以为设备1,步骤S202和步骤S203的执行主体可以为设备2;等等。
另外,本申请实施例提供的一种业务处理的过程,如图5所示,具体可包括以下步骤:
S201:业务受理平台接收项目创建请求。
在本申请实施例中,该业务受理平台可以用于接收项目发起方发送的项目创建请求,并创建对应的业务项目,当该业务项目处于运行状态时,该业务受理平台还可接收用户针对该业务项目的业务处理请求,并根据该业务项目以及该业务处理请求进行业务处理。
其中,该业务受理平台可以是众筹平台,则该众筹平台既可接收由筹款方发送的众筹项目创建请求,并创建对应的众筹项目,也可接收由跟投人发送的认筹请求,该认筹请求可以是针对处于筹资状态的众筹项目的认筹请求。本申请实施例后续以众筹平台接收众筹项目创建请求为例继续后续说明。
另外,在本申请实施例中,为了使该众筹项目可以跨众筹平台运营(即,筹款方可通过不同的众筹平台对一个众筹项目进行融资,不同的众筹平台也可通过各自的渠道受理对同一个众筹项目的认筹请求),该众筹平台可以与其他众筹平台共同组成业务联盟,即,众筹联盟。
于是,在本申请实施例中,该众筹平台可后续通过该众筹联盟,与该众筹联盟中的其他众筹平台互通众筹项目,以通过不同众筹平台对同一个众筹项目进行筹资。也就是说,该众筹平台可将由该众筹平台受理并创建的众筹项目发送至该业务联盟中的其他众筹平台,以使得其他众筹平台也可发布该众筹项目,同时,该众筹平台也可接受该众筹联盟中的其他众筹平台发送的众筹项目,发布该众筹项目。
需要说明的是,在本申请实施例中,众筹平台发布众筹项目,即,众筹平台发布与该众筹项目对应的项目信息(如,该众筹平台将该众筹项目上线),使得该众筹项目处于筹资状态,则该众筹平台还可接收跟投人以对该处于筹资状态的众筹项目发起的认筹请求。当该众筹项目结束时,该众筹项目处于结束状态,则该众筹平台可拒绝执行对该众筹项目发起的认筹请求。
另外,在本申请实施例中,该众筹平台可以是用于众筹方接受筹款方的众筹项目的平台。其中,该众筹平台可以由一个单独的众筹方运营,则该众筹平台相当于属于该众筹方,该众筹方可通过该众筹平台接收该筹款方的众筹项目创建请求。当然,该众筹平台中也可存在多个众筹方,则该众筹平台可以是单独提供业务运营支持的平台,并由多个众筹方租用该平台进行众筹业务(如,接收众筹项目创建请求、接收认筹请求等等),则当该筹款方在该众筹平台发起众筹项目创建请求时,由该众筹平台中的至少一个众筹方受理该众筹项目创建请求,并创建对应的众筹项目。
于是,在本申请实施例中,各众筹方可以视为是该众筹方所在的众筹平台中的租户,在该众筹平台上的各众筹方作为在该众筹平台上的独立个体,可分别接收众筹项目创建请求、对该你众筹项目进行审核、协助筹款方发起众筹项目、对接跟投人为该众筹项目注资融资等等,也就是说,该众筹平台上的每个众筹方均可通过该众筹平台运营众筹项目。其中,该众筹平台上的各众筹方可以运营不完全相同的众筹项目,具体选择何种众筹项目运营可由该众筹方的工作人员确定,本申请并不做限定。
当然,上述众筹方的众筹业务的执行过程(如,创建众筹项目、接收认筹请求等)均可依托于该众筹平台进行,所以后续若不具体说明,则在本申请中所述的众筹平台可以视为是与该众筹平台中的众筹方,该众筹平台执行业务、发送信息,可视为该众筹平台中的众筹方通过该众筹平台执行业务、发送信息。
S202:根据所述项目创建请求,创建业务项目,并确定所述业务项目的项目标识。
在本申请实施例中,当该众筹平台接收众筹项目创建请求之后,该众筹平台便可以根据该众筹项目创建请求,创建对应的业务项目(如,众筹项目),并且还可确定该众筹项目的项目标识。
其中,该众筹平台可以通过自身的渠道接收筹款方的众筹项目创建请求、对创建的众筹项目进行宣传,并且也可通过自身的渠道接收跟投人的认筹请求等等。而通常在现有技术中,众筹平台常用的渠道包括:该众筹平台推出的APP、该众筹平台的网页等由该众筹平台建立的渠道,或者该众筹平台也可与第三方的社交平台进行合作,通过社交平台的渠道宣传该众筹平台的众筹项目,并且也可以通过第三方平台进行众筹项目的股份的交易等等,本申请对此并不做限定。
则在本申请实施例步骤S101中,该众筹平台可以接收由客户端发送的众筹项目创建请求,其中,该客户端可以是由专门用于在该众筹平台上进行众筹相关业务的APP,也是浏览器应用等等,本申请对此并不做限定。
于是,当该众筹平台接收到该众筹项目创建请求之后,具体的在本申请实施例中,该众筹平台可以向发送该众筹项目创建请求的客户端返回项目模板,以使得该客户端根据该项目模板返回项目信息以及发布范围,则该众筹平台可根据该项目信息创建对应的众筹项目,并且,该众筹平台还可以创建与该众筹项目对应项目标识,以便后续在该众筹联盟中的其他众筹平台在根据该众筹项目创建请求创建对应的众筹项目时,创建与该项目标识对应的众筹项目,使得各众筹平台对应同一个众筹项目创建请求创建的众筹项目均对应于统一的项目标识。
另外,在本申请实施例中,该众筹平台在向该客户端返回该项目模板时,该项目模板可以为属性内容待填写的项目模板,用于使筹款方通过该客户端,根据该项目模板返回项目信息以及发布范围。其中,该项目信息为该众筹平台在创建与该众筹项目创建请求对应的众筹项目时所需要的信息,该发布范围为该筹款方需要在那些众筹平台进行筹资的信息。
例如,该项目模板中可包含:众筹项目名称、众筹项目持续时间(如,众筹开始时间以及众筹结束时间)、筹款方信息、众筹目标金额、发布范围等等,当然,在该项目模板中也可以包括众筹项目所属领域、众筹项目的具体内容。众筹目标人群等等数据。例如,该众筹模板可如表1所示。
表1为本申请实施例提供的该众筹平台返回该客户端的项目模板的示意图。
Figure BDA0001277640310000201
Figure BDA0001277640310000211
表1
其中,属性内容为需要由筹款方向该众筹平台提供的信息,当然,具体的该项目模板的模板数据可由该众筹平台根据实际需要确定,本申请对此不做限定,该名称、该时间、该身份信息以及该目标作通常为必要信息。
另外,由于在本申请实施例中,该众筹项目可以是跨平台发布的众筹项目,所以该发布范围可作为必要信息。则该项目模板中的该发布范围可包含该众筹联盟中其他众筹平台的平台标识,于是,筹款方可通过该客户端,对该项目模板中该发布范围中对应的各平台标识进行选择,使得该筹款方可选择在哪些筹资平台上发布该众筹项目,则该众筹平台可以根据该筹款方通过该客户端返回的发布范围,确定后续需要向那些众筹平台发送该众筹项目创建请求。其中,该发布范围中的每个众筹平台对应的平台标识,该筹款方均可以通过对该项目模板选择“是”或者“否”来表示是否需要在平台标识对应的众筹平台发布该众筹项目。当然,表1仅为本申请实施例中的项目模板的示意,具体该项目模板以何种形式发送至该客户端,可由该众筹平台根据实际应用的需要进行配置(如,问卷的形式或者电话沟通的形式),本申请并不做限定。
需要说明的是,在该项目模板中,除了该发布范围以外的信息均可视为是项目信息,该众筹平台可以采用与现有技术相同的方法,由工作人员根据该项目信息对该众筹项目进行审核(如,是否可以实现、是否具有开展众筹),并在审核通过之后,创建对应的业务项目。
当然,在现有技术中,在众筹项目的创建过程中,可能还需要经过众筹平台的工作人员与筹款方的工作人员共同合作,确定该众筹项目的细节等过程之后,再发布该众筹项目,由于在本申请中并不涉及这部分内容,所以在本申请中对此不再赘述。在本申请实施例中,该众筹平台根据该项目信息创建该众筹项目的过程,可以与现有技术创建众筹项目的过程相同。
S203:将所述项目创建请求以及所述项目标识发送至其他业务受理平台,使得所述其他业务受理平台根据所述项目创建请求创建与所述项目标识对应的业务项目。
在本申请实施例中,该众筹平台在创建该众筹项目之后,便可根据该发布范围中包含的其他众筹平台的平台标识,将该众筹项目创建请求对应的项目信息以及该项目标识,发送至该平台标识对应的其他众筹平台,以使得其他众筹平台根据该众筹项目信息创建与该项目标识对应的众筹项目。
具体的,该众筹平台可先根据在步骤S102中所述客户端返回的发布范围,确定所述发布范围中包含的其他众筹平台的平台标识,之后再降该众筹项目创建请求对应的项目信息以及在步骤S102中确定的项目标识,发送至该平台标识对应的其他众筹平台。
另外,为了使该众筹平台以及其他众筹平台可以同时为该众筹项目筹集资金(如,受理跟投人对该众筹项目的认筹),该众筹平台还可将该业务处理数据以及该众筹项目的项目标识建立对应关系,并将该业务处理数据存储在该众筹平台以及其他众筹平台的共享存储器中。
具体的,该共享存储器可以是数据库,并且该众筹平台以及其他众筹平台均具有访问该数据库的权限,则该众筹平台以及其他众筹平台可将该业务处理数据、该项目标识以及建立的该对应关系存储在该数据库中。
于是,该众筹平台或者其他众筹平台,可根据该项目标识,通过访问该数据库,确定与该项目标识相关的各业务处理数据。并且通过对各业务处理数据中的认筹金额进行求和,确定该项目标识对应的众筹项目所筹集到的总金额。
进一步地,该众筹平台还可以根据该众筹项目的项目信息,确定该众筹项目的结束条件(例如,是否筹集到了目标金额、是否到达了众筹项目的结束时间等等),则该众筹平台或者其他众筹平台,可根据该共享存储器(如,数据库)中存储的与该项目标识对应的业务处理数据以及该结束条件,监控该众筹项目是否结束,若是,则可停止受理针对该众筹项目的认筹请求,若否,则可继续受理针对该众筹项目的认筹请求。其中,为了提高业务执行效率,当任一众筹平台确定该众筹项目结束时,可根据该发布范围,想该发布范围包含的其他众筹平台发送该众筹项目结束的信息,是的该众筹联盟中的其他众筹平台停止受理针对该众筹项目的认筹请求。
在本申请实施例中,由于各众筹平台在创建众筹项目之后,需要监控该众筹项目的运行状态(如,该众筹项目是否结束、众筹资金的数量等等),并提供给该众筹平台的跟投人,而与该众筹项目对应认筹请求的业务处理数据均存储在该共享存储器(如,数据库)中,则该众筹平台在每次监控时,都需要重复:从数据库中调用与该项目标识对应的业务处理数据,对认筹金额进行求和,判断是否结束众筹的过程,使得该众筹平台的运行效率较低。并且,由于每个众筹平台都是独立运行的,所以当一个众筹项目通过大量的众筹平台发布时,发布该众筹项目的每个众筹平台都需要对该众筹项目进行监控,导致该数据库的运行压力也会大大增加,耗费的资源也大大增加。
并且,若该共享存储器遭受到黑客攻击,或者设备出现问题(如宕机),则各众筹平台的发布众筹项目的过程以及受理认筹请求的过程将会受到影响,轻则耽误业务处理的流程,导致业务失败,需要重新发起业务,造成资源浪费,重则丢失该共享存储器中存储的数据,导致已经进行的众筹项目的失败,造成对各众筹平台的直接损失。
于是,在本申请实施例中,该众筹联盟中的各众筹平台,可采用区块链技术存储该业务处理数据,以便利用区块链技术的去中心化的特点,减少由于共享存储器出现问题而导致的损失,并且可以利用区块链技术中,记录的信息不可篡改性等特点,每次将该业务处理数据存储在区块链中时,由于各共识节点均需要对进行共识校验,所以各共识节点均可确定该项目标识对应累计的筹款金额等数据,从而减少对因对众筹项目进行监控造成的资源浪费。
具体的,该众筹平台可先生成包含该业务处理数据与该项目标识的待存储业务数据,之后再将该待存储业务数据发送至该业务受理平台对应的共识节点,以使该共识节点对该待存储业务数据进行共识校验,并在共识校验通过后,将该待存储业务数据写入区块链中。其中,具体过程可为申请实施例提供的如图1所示的区块链共识过程,在此不做详细说明。
通过将该业务处理数据存储在区块链中,使得各众筹平台只需要根据通过该区块链便可监控该众筹项目的状态,并且由于区块链技术的不可篡改性,以及去中心化的特点,使得各众筹平台存储的业务处理数据真实性更高(通过了共识节点的共识校验才可存储),并且也不会因为单一共识节点出现问题,而导致整个众筹项目数据的丢失的情况。
基于上述的业务处理过程,可见该业务受理平台(如,众筹平台)在接收项目创建请求(如,众筹项目创建请求)之后,可根据该众筹项目创建请求,创建众筹项目,并确定该众筹项目的项目标识,然后再将该众筹项目创建请求以及该项目标识发送至其他业务受理平台,使得该其他业务受理平台根据该众筹项目创建请求创建与该项目标识对应的众筹项目,进而使得多个众筹平台可根据该众筹项目创建请求,创建具有相同项目标识的众筹项目,并且在受理针对该众筹项目的业务处理请求(如,认筹请求)时,可将进行业务处理后的业务处理数据与该众筹项目的项目标识建立对应关系,并存储在该共享存储器中,使得筹款方可通过存储在该共享存储器中的业务处理数据,对该众筹项目进行统一的监控、管理以及运营。可见,通过本申请实施例提供的方法,由于该众筹平台以及其他众筹平台均可将针对该众筹项目的业务处理数据存储在同一个共享存储器中,同时由于该众筹项目的项目标识相同,所以各众筹平台实际是均是为同一个众筹项目进行筹资,而区别于现有技术众筹资方需要分别在各众筹平台发布独立的众筹项目,解决了现有技术中在多个众筹平台进行众筹时,众筹项目的运营成本高、运营效率较低的问题。
其中,由于该众筹项目仅存在一个,所以筹款方对众筹得到的资金管理相对现有技术更加简洁,无需分别对资金进行管理,减少了众筹项目融资失败的因素,以及该筹款方对该众筹项目运营管理的成本。可见本申请提供的方法,使得筹款方以及众筹方在创建以及管理众筹项目时,业务执行的效率更高。
另外,在本申请实施例中,若该筹款方仅需要通过该众筹平台发布众筹项目,则该客户端返回的该发布范围中可以不包含众筹平台的标识中。另外,由于还有可能出现该筹款方无需通过该众筹平台发布该众筹项目的情况,所以在本申请实施例中,在该步骤S202中所述的项目模板中的该发布范围可以包含接收该众筹平台的平台标识(即,包含所述众筹联盟中各众筹平台的平台标识)。若该项目模板中的发布范围包含该众筹平台的平台标识,但是该客户端返回的该发布范围中不包含该众筹平台的平台标识,则该众筹平台可以确定该筹款方无需在该众筹平台发布该众筹项目,于是该众筹平台可取消在步骤S202中创建的众筹项目。
进一步地,当该众筹平台创建该众筹项目之后,该众筹平台即可如步骤S201中所述的,通过各种该众筹平台的渠道发布该众筹项目,则该众筹平台还可在发布该众筹项目之后,接受针对该众筹项目的业务处理请求(即,认筹请求)。
具体的,当该众筹平台接受到针对该众筹项目的认筹请求时,该众筹平台可根据该众筹项目以及该认筹请求进行业务处理,并确定业务处理数据。其中,该业务处理数据可包括:跟投人信息、认筹股份、认筹金额以及认筹时间等信息,具体的该业务处理数据还可包含何种信息可由该众筹联盟中各众筹平台事先协商确定,或者有该众筹平台的工作人员根据实际业务的需要进行确定。
更进一步地,在本申请实施例中,该众筹平台在确定该业务项目的项目标识时,可以采用该众筹联盟预先约定的规则,生成该项目标识。使得该众筹联盟中各众筹平台,对同一个众筹项目创建请求,可以生成统一的项目标识。同时,统一的项目标识也方便各众筹平台,通过该项目标识确定该项目标识对应的众筹项目的信息。
具体的,该众筹平台在确定该项目标识时,可以是根据该客户端返回的项目信息创建该项目标识。例如,该客户端根据该项目信息中的众筹项目名称,确定该项目标识的前4位,根据该众筹项目的目标金额,确定该众筹项目的其他位的内容。其中,通过该众筹项目名称确定该项目标识的前4位时,可以是将该众筹项目名称的拼音首字母的前4位作为该项目标识的前4位,当遇到有英文项目名称时,采用英文缩写的前4位作为该项目标识的前4位等等。假设,某一个众筹项目的名称为“爱科技爱生活”,其众筹目标金额为100万元,则该项目名称可为“IKJI”加上“1000000”,即,“IKJI1000000”。
当然,上述仅为本申请实施例提供的示例,具体如何确定项目名称的规则,可由该众筹联盟中的各众筹平台进行约定,本申请并不做具体限定。
另外,需要说明的是,在本申请实施例中,对于各众筹平台自身的业务逻辑,本申请并不做具体限定,各众筹平台可以具有独立的业务逻辑,也就是说,在本申请实施例步骤S202中,该众筹平台如何进行业务处理本申请不做限定。不同的众筹平台可以采用不完全相同的业务逻辑,进行业务处理,创建业务项目。同时,当各众筹平台接收到认筹请求时,可以采用自身的业务逻辑,进行业务处理,确定业务处理数据。
更进一步地,在本申请实施例中,由于各众筹平台在存储该业务数据时,可以采用区块链技术,对生成的包含该业务处理数据与该项目标识的待存储业务数据进行存储,而同时,在本申请步骤S202中所述的,该众筹平台中可存在多个租户,即,存在多个众筹方,所以为了明确该业务处理数据是由该众筹平台中的那个租户发送的,所以该众筹平台在生成该待存储业务数据时,还可将该租户的租户信息携带在该待存储业务数据中,发送至该共识节点,使得该共识节点将该租户信息作为该节点的节点信息进行共识校验,并在共识校验通过后,将该待存储业务数据以及该租户信息写入区块链中。
具体的,该业务受理平台(如,众筹平台)中的租户可接收该项目创建请求,并在生成该待存储业务数据时,将该租户的租户信息携带在该待存储业务数据中,通过该业务受理平台发送至该业务受理平台对应的共识节点。之后,该共识节点的后具体实施过程可参见图1所示的区块链共识过程。
需要说明的是,本申请实施例所提供上述方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。比如,步骤S201和步骤S202的执行主体可以为设备1,步骤S203的执行主体可以为设备2;又比如,步骤S201的执行主体可以为设备1,步骤S202和步骤S203的执行主体可以为设备2;等等。
基于图1所示区块链共识方法,本申请实施例还对应提供一种区块链共识装置的结构示意图,如图6所示。
图6为本申请实施例提供的一种业务处理装置的结构示意图,包括:
接收模块401,接收业务受理平台发送的待存储业务数据,其中,所述待存储业务数据是所述业务受理平台通过如权利要求17~19任一所述的装置发送的;
生成模块402,根据所述待存储业务数据生成预处理块;
若所述装置是领导节点,则校验发送模块403,对所述预处理块进行共识校验,并在校验通过后,将所述预处理块发送至各下属节点进行共识校验;
若所述装置不是领导节点,则校验发送模块403,将所述预处理块发送至所述领导节点进行共识校验,以使得所述领导节点在对所述预处理块的共识校验通过后,将所述预处理块发送至各下属节点进行共识校验。
所述领导节点是各共识节点通过Raft分布式协议选择出的。
所述校验发送模块403,在对该预处理块共识校验通过后,将该预处理块存储在所述装置对应的区块链中。
所述生成模块402,根据所述待存储业务数据生成预处理块之前,将接收到的所述待存储业务数据的格式转换为指定的格式,其中,所述指定的格式包括JSON格式。
所述装置还包括:
排序发送模块404,当所述业务处理装置自身为领导节点时,若接收到两个以上区块高度相同、且均通过了所述共识节点自身的共识校验的预处理块,则根据各预处理块的创建时间先后顺序或者头哈希值的大小顺序,确定各预处理块的广播顺序,按照所述广播顺序,依次针对每个预处理块,确定该预处理块的头哈希值,将所述下一个预处理块的父区块的哈希值更新为所述头哈希值,按照所述广播顺序,将各预处理块逐一广播至各下属节点进行共识。
所述业务受理平台为众筹平台,所述待存储业务数据包括:所述业务受理平台根据针对众筹项目的认筹请求生成的认筹信息,以及所述众筹项目的项目标识。
所述业务受理平台存在多个,且每个共识节点对应一个或者多个业务受理平台,每个共识节点对应相同的业务受理平台,或者对应不同的业务受理平台。
具体的,如图7所示的一种业务处理装置可以位于共识节点中,该共识节点可以单独的一台设备,或者由多台设备组成的系统。该共识节点也可以位于终端中,如,手机、平板电脑、个人电脑等设备中。
基于图5所示业务处理方法,本申请实施例还对应提供一种业务处理装置的结构示意图,如图7所示。
图7为本申请实施例提供的一种业务处理装置的结构示意图,包括:
接收模块301,接收项目创建请求;
确定模块302,根据所述项目创建请求,创建业务项目,并确定所述业务项目的项目标识;
发送模块303,将所述项目创建请求以及所述项目标识发送至其他业务受理平台,使得所述其他业务受理平台根据所述项目创建请求创建与所述项目标识对应的业务项目。
所述确定模块302,向发送所述项目请求的客户端返回项目模板,以使得所述客户端根据所述项目模板返回项目信息以及发布范围,根据所述项目信息,创建业务项目;所述发送模块303,根据所述发布范围中包含的其他业务受理平台的平台标识,将所述项目创建请求对应的项目信息以及所述项目标识,发送至所述平台标识对应的其他业务受理平台。
当所述接收模块301接收到针对所述业务项目的业务处理请求时,所述装置还包括:
存储模块304,根据所述业务处理请求进行业务处理,并确定业务处理数据,建立所述业务处理数据与所述项目标识的对应关系,并将所述业务处理数据存储在所述业务受理平台与所述其他业务受理平台的共享存储器中。
所述装置还包括:
监控模块305,根据所述业务项目的项目信息,确定所述业务项目的结束条件,根据所述共享存储器中存储的与所述项目标识对应的业务处理数据以及所述结束条件,监控所述业务项目是否结束。
所述存储模块304,生成包含所述业务处理数据与所述项目标识的待存储业务数据,将所述待存储业务数据发送至所述业务受理平台对应的共识节点,以使所述共识节点对所述待存储业务数据进行共识校验,并在共识校验通过后,将所述待存储业务数据写入区块链中。
所述业务受理平台为众筹平台,所述项目创建请求为众筹项目创建请求,所述业务项目为众筹项目,所述业务处理请求为认筹请求。
所述项目信息至少包括:众筹目标金额、众筹开始时间、众筹结束时间、筹款方信息。
具体的,如图7所示的一种业务处理装置可以位于业务受理平台的服务器中,该服务器可以单独的一台设备,或者由多台设备组成的系统。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (14)

1.一种区块链共识方法,所述方法包括:
共识节点接收业务受理平台发送的待存储业务数据;
根据所述待存储业务数据生成预处理块;
若所述共识节点是领导节点,则对所述预处理块进行共识校验,并在校验通过后,将所述预处理块发送至各下属节点进行共识校验;
若所述共识节点不是所述领导节点,则将所述预处理块发送至所述领导节点进行共识校验,以使得所述领导节点在对所述预处理块的共识校验通过后,将所述预处理块发送至各下属节点进行共识校验。
2.如权利要求1所述的方法,所述领导节点是各共识节点通过Raft分布式协议选择出的。
3.如权利要求2所述的方法,所述方法还包括:
针对每个共识节点,当该共识节点在对该预处理块共识校验通过后,将该预处理块存储在该共识节点对应的区块链中。
4.如权利要求1所述的方法,根据所述待存储业务数据生成预处理块之前,所述方法还包括:
所述共识节点将接收到的所述待存储业务数据的格式转换为指定的格式,其中,所述指定的格式包括JSON格式。
5.如权利要求1所述的方法,所述方法还包括:
当所述共识节点自身为领导节点时,若接收到两个以上区块高度相同、且均通过了所述共识节点自身的共识校验的预处理块,则根据各预处理块的创建时间先后顺序或者头哈希值的大小顺序,确定各预处理块的广播顺序;
按照所述广播顺序,依次针对每个预处理块,确定该预处理块的头哈希值,将下一个预处理块的父区块的哈希值更新为所述头哈希值;
按照所述广播顺序,将各预处理块逐一广播至各下属节点进行共识。
6.如权利要求1至5任一所述的方法,所述业务受理平台为众筹平台;
所述待存储业务数据包括:所述业务受理平台根据针对众筹项目的认筹请求生成的认筹信息,以及所述众筹项目的项目标识。
7.如权利要求6所述的方法,所述业务受理平台存在多个,且每个共识节点对应一个或者多个业务受理平台;
每个共识节点对应相同的业务受理平台,或者对应不同的业务受理平台。
8.一种区块链共识装置,包括:
接收模块,接收业务受理平台发送的待存储业务数据;
生成模块,根据所述待存储业务数据生成预处理块;
若所述装置是领导节点,则校验发送模块,对所述预处理块进行共识校验,并在校验通过后,将所述预处理块发送至各下属节点进行共识校验;
若所述装置不是领导节点,则校验发送模块,将所述预处理块发送至所述领导节点进行共识校验,以使得所述领导节点在对所述预处理块的共识校验通过后,将所述预处理块发送至各下属节点进行共识校验。
9.如权利要求8所述的装置,所述领导节点是各共识节点通过Raft分布式协议选择出的。
10.如权利要求8所述的装置,所述校验发送模块,在对该预处理块共识校验通过后,将该预处理块存储在所述装置对应的区块链中。
11.如权利要求8所述的装置,其特征在于,所述生成模块,根据所述待存储业务数据生成预处理块之前,将接收到的所述待存储业务数据的格式转换为指定的格式,其中,所述指定的格式包括JSON格式。
12.如权利要求8所述的装置,其特征在于,所述装置还包括:
排序发送模块,当所述业务处理装置自身为领导节点时,若接收到两个以上区块高度相同、且均通过了所述共识节点自身的共识校验的预处理块,则根据各预处理块的创建时间先后顺序或者头哈希值的大小顺序,确定各预处理块的广播顺序,按照所述广播顺序,依次针对每个预处理块,确定该预处理块的头哈希值,将下一个预处理块的父区块的哈希值更新为所述头哈希值,按照所述广播顺序,将各预处理块逐一广播至各下属节点进行共识。
13.如权利要求8至12任一所述的装置,所述业务受理平台为众筹平台,所述待存储业务数据包括:所述业务受理平台根据针对众筹项目的认筹请求生成的认筹信息,以及所述众筹项目的项目标识。
14.如权利要求13所述的装置,所述业务受理平台存在多个,且每个共识节点对应一个或者多个业务受理平台,每个共识节点对应相同的业务受理平台,或者对应不同的业务受理平台。
CN201710271900.3A 2017-04-24 2017-04-24 一种区块链共识方法及装置 Active CN107395353B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710271900.3A CN107395353B (zh) 2017-04-24 2017-04-24 一种区块链共识方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710271900.3A CN107395353B (zh) 2017-04-24 2017-04-24 一种区块链共识方法及装置

Publications (2)

Publication Number Publication Date
CN107395353A CN107395353A (zh) 2017-11-24
CN107395353B true CN107395353B (zh) 2020-01-31

Family

ID=60338304

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710271900.3A Active CN107395353B (zh) 2017-04-24 2017-04-24 一种区块链共识方法及装置

Country Status (1)

Country Link
CN (1) CN107395353B (zh)

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107402824B (zh) 2017-05-31 2020-06-02 创新先进技术有限公司 一种数据处理的方法及装置
JP2019109635A (ja) * 2017-12-16 2019-07-04 株式会社bitFlyer ブロックチェーン・ネットワークにおいて過去のトランザクションにアクセス可能とするための方法及び当該ネットワークを構成するためのノード
CN108182635A (zh) * 2017-12-18 2018-06-19 深圳前海微众银行股份有限公司 区块链共识方法、系统和计算机可读存储介质
CN108133420B (zh) * 2018-01-10 2020-09-11 杭州复杂美科技有限公司 一种区块链的委托共识方法
CN108519981B (zh) * 2018-02-01 2022-04-12 四川大学 一种跨链智能合约合作可能性评估方法
CN108460294B (zh) * 2018-03-02 2019-11-01 南京快直聘网络科技有限公司 一种决策证明型区块链算法及其物理架构
CN108537525B (zh) 2018-03-09 2020-06-09 阿里巴巴集团控股有限公司 一种共识验证方法、装置及设备
US10833864B2 (en) * 2018-04-13 2020-11-10 International Business Machines Corporation Gaming concensus protocol for blockchain
CN108696514B (zh) * 2018-04-27 2022-04-01 腾讯科技(深圳)有限公司 资源收集任务管理方法、装置、存储介质及系统
EP3564873B1 (en) 2018-04-30 2022-11-30 Hewlett Packard Enterprise Development LP System and method of decentralized machine learning using blockchain
EP3565218B1 (en) * 2018-04-30 2023-09-27 Hewlett Packard Enterprise Development LP System and method of decentralized management of multi-owner nodes using blockchain
EP3564883B1 (en) 2018-04-30 2023-09-06 Hewlett Packard Enterprise Development LP System and method of decentralized management of device assets outside a computer network
WO2019213867A1 (zh) * 2018-05-09 2019-11-14 合肥达朴汇联科技有限公司 区块链共识达成方法和装置
CN108737536B (zh) * 2018-05-14 2021-11-09 百度在线网络技术(北京)有限公司 一种区块链系统的实现方法、装置、设备和存储介质
CN108846747A (zh) * 2018-05-24 2018-11-20 阿里巴巴集团控股有限公司 一种基于区块链的虚拟资源交付、众筹方法及装置
CN108829749A (zh) * 2018-05-24 2018-11-16 深圳前海益链网络科技有限公司 一种基于区块链的对象关联封装存储方法
CN108765159B (zh) * 2018-06-04 2022-07-15 杭州溪塔科技有限公司 一种基于区块链的上链与状态处理方法、装置及互联系统
CN110276693B (zh) * 2018-06-07 2021-05-07 腾讯科技(深圳)有限公司 保险理赔方法及系统
CN108847925B (zh) * 2018-06-20 2020-09-15 深圳大学 一种基于树状结构的分片区块链生成方法
CN110619520B (zh) * 2018-06-20 2023-05-02 深圳市红砖坊技术有限公司 区块链系统和应用于区块链系统的路由节点的路由方法
CN108984662B (zh) * 2018-06-28 2021-02-09 杭州复杂美科技有限公司 一种区块链数据同步方法
CN109003189A (zh) * 2018-06-28 2018-12-14 郑州云海信息技术有限公司 一种众筹平台
CN108961055B (zh) * 2018-07-02 2022-07-26 上海达家迎信息科技有限公司 一种区块共识的奖惩方法、装置、设备和存储介质
CN109088914B (zh) * 2018-07-03 2021-10-01 深圳智乾区块链科技有限公司 区块的生成方法、区块链生态系统及计算机可读存储介质
CN109039847A (zh) * 2018-08-07 2018-12-18 广州三牛信息科技有限公司 一种利用dmt解决区块链全网消息一致性问题的方法及装置
CN110875893B (zh) * 2018-08-29 2022-03-08 深圳启元信息服务有限公司 共识验证方法、校验节点及区块链系统
CN110443614B (zh) * 2018-09-07 2021-04-09 腾讯科技(深圳)有限公司 节点设备删除方法、装置、计算机设备及存储介质
CN109033475B (zh) * 2018-09-10 2020-10-23 湖南智慧政务区块链科技有限公司 一种文件存储方法、装置、设备及存储介质
CN109274738B (zh) * 2018-09-14 2021-12-07 百度在线网络技术(北京)有限公司 区块生产节点的控制方法和装置
CN109547530B (zh) * 2018-10-17 2021-07-27 北京瑞卓喜投科技发展有限公司 区域共识方法、系统及设备
CN109413174B (zh) * 2018-10-18 2021-09-07 中国船舶工业系统工程研究院 一种基于区块链的跨部门海洋数据共享方法
WO2020085267A1 (ja) * 2018-10-22 2020-04-30 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 制御方法、ファンド管理システム、プログラム、及び、データ構造
WO2020085266A1 (ja) * 2018-10-22 2020-04-30 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 制御方法、ファンド管理システム、プログラム、及び、データ構造
CN111899016B (zh) * 2018-10-31 2024-10-22 创新先进技术有限公司 一种基于区块链的质量数据处理方法和装置
CN111223227B (zh) * 2018-11-26 2022-03-22 腾讯科技(深圳)有限公司 一种目标用户筛选方法及装置
CN109377230B (zh) * 2018-12-11 2020-01-14 四川大学 一种基于有向图的智能合约在区块链中实现的方法及装置
CN109754311A (zh) * 2018-12-12 2019-05-14 北京世纪互联宽带数据中心有限公司 信息处理方法及其装置、电子设备、计算机可读介质
CN109410019B (zh) * 2018-12-20 2021-11-30 王春峰 一种基于区块链和物联网技术的商品比价方法
CN109377232B (zh) * 2018-12-20 2021-08-24 众安信息技术服务有限公司 基于dag的区块链的交易定序方法及设备
CN109857751A (zh) * 2019-01-23 2019-06-07 平安科技(深圳)有限公司 基于区块链的跨平台数据更新方法、装置和计算机设备
CN109831425B (zh) * 2019-01-25 2022-02-15 中国联合网络通信集团有限公司 区块链共识方法、装置、设备及计算机可读存储介质
US11966818B2 (en) 2019-02-21 2024-04-23 Hewlett Packard Enterprise Development Lp System and method for self-healing in decentralized model building for machine learning using blockchain
CN109903048B (zh) * 2019-02-28 2021-06-08 北京柏链基石科技有限公司 一种出块方法、共识方法和装置
CN110297689B (zh) * 2019-05-06 2021-09-14 百度在线网络技术(北京)有限公司 智能合约执行方法、装置、设备及介质
CN110457256A (zh) * 2019-08-01 2019-11-15 大众问问(北京)信息科技有限公司 数据存储方法、装置、计算机设备及存储介质
CN110716796B (zh) * 2019-09-02 2024-05-28 中国平安财产保险股份有限公司 智能任务调度方法及装置、存储介质、电子设备
CN110728513A (zh) * 2019-09-17 2020-01-24 成都四方伟业软件股份有限公司 一种基于raft协议的区块链工作方法及系统
CN110675153A (zh) * 2019-10-10 2020-01-10 北京京东振世信息技术有限公司 基于区块链的数据校验方法及装置、存储介质及电子设备
CN110855475B (zh) * 2019-10-25 2022-03-11 昆明理工大学 一种基于区块链的共识资源切片方法
CN110955523B (zh) * 2019-11-22 2022-03-08 中国银联股份有限公司 一种业务处理方法及装置
CN111224782B (zh) * 2019-11-22 2021-06-25 腾讯科技(深圳)有限公司 基于数字签名的数据校验方法、智能设备及存储介质
CN111045568B (zh) * 2019-12-20 2021-05-14 腾讯科技(深圳)有限公司 基于区块链的虚拟物品处理方法、装置、设备及存储介质
US11218293B2 (en) 2020-01-27 2022-01-04 Hewlett Packard Enterprise Development Lp Secure parameter merging using homomorphic encryption for swarm learning
US11748835B2 (en) 2020-01-27 2023-09-05 Hewlett Packard Enterprise Development Lp Systems and methods for monetizing data in decentralized model building for machine learning using a blockchain
CN111368343B (zh) * 2020-03-31 2022-11-01 北京俩撇科技有限公司 一种区块链系统、数据存储方法及装置
CN111786818B (zh) * 2020-06-16 2023-04-18 杭州溪塔科技有限公司 一种区块链共识节点状态监控方法和装置
CN112700558B (zh) * 2020-12-23 2022-08-12 深圳信息职业技术学院 一种基于区块链技术的车辆识别方法、系统及电子设备
CN112767152B (zh) * 2021-01-18 2024-02-09 中国工商银行股份有限公司 应用于联盟链的双园区灾备系统及方法
CN113436015A (zh) * 2021-06-30 2021-09-24 中元众诚(北京)科技有限公司 一种基于区块链的链化数据库及操作方法
CN115766017A (zh) * 2022-09-27 2023-03-07 国网天津市电力公司 一种基于权益证明的电力区块链云端部署方法及装置
CN117220884B (zh) * 2023-09-05 2024-09-13 上海雷龙信息科技有限公司 一种数字签名交互验证方法、设备和介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101645038A (zh) * 2009-05-20 2010-02-10 中国科学院声学研究所 基于彼特森的网络存储结构的数据存储方法
CN105844505A (zh) * 2016-03-17 2016-08-10 深圳市新世纪启航科技开发有限公司 一种通过区块链技术进行数字货币交易的方法
CN106357387A (zh) * 2016-09-26 2017-01-25 江苏荣泽信息科技股份有限公司 基于区块链的匿名会员交易方法
CN106529951A (zh) * 2016-12-30 2017-03-22 杭州云象网络技术有限公司 一种联盟链网络下采用异步方式的节点共识验证方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8838982B2 (en) * 2011-09-21 2014-09-16 Visa International Service Association Systems and methods to secure user identification

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101645038A (zh) * 2009-05-20 2010-02-10 中国科学院声学研究所 基于彼特森的网络存储结构的数据存储方法
CN105844505A (zh) * 2016-03-17 2016-08-10 深圳市新世纪启航科技开发有限公司 一种通过区块链技术进行数字货币交易的方法
CN106357387A (zh) * 2016-09-26 2017-01-25 江苏荣泽信息科技股份有限公司 基于区块链的匿名会员交易方法
CN106529951A (zh) * 2016-12-30 2017-03-22 杭州云象网络技术有限公司 一种联盟链网络下采用异步方式的节点共识验证方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
从_比特币挖矿_看区块链技术的共识机制;梁斌;《中国金融电脑》;20160930;全文 *
区块链关键技术中的安全性研究;朱岩,甘国华,等;《信息安全研究》;20161230;全文 *

Also Published As

Publication number Publication date
CN107395353A (zh) 2017-11-24

Similar Documents

Publication Publication Date Title
CN107395353B (zh) 一种区块链共识方法及装置
CN110442652B (zh) 一种基于区块链的跨链数据处理方法及装置
CN108595157B (zh) 区块链数据的处理方法、装置、设备和存储介质
US20230132297A1 (en) Control method, controller, data structure, and electric power transaction system
US20190050855A1 (en) Blockchain-based systems, methods, and apparatus for securing access to information stores
US20190172026A1 (en) Cross blockchain secure transactions
TW201822033A (zh) 資源處理方法及裝置
CN109246197B (zh) 基于智能合约的数据处理方法及装置
CN112073269A (zh) 区块链网络测试方法、装置、服务器及存储介质
CN111144883B (zh) 一种区块链网络的处理性能分析方法及装置
CN109493203A (zh) 一种数据核算方法、装置及存储介质
CN114445010B (zh) 一种基于区块链的多式联运系统和方法
CN110458709B (zh) 资源转移信息的传输方法和装置、存储介质、电子装置
CN108347483B (zh) 基于双层网络的去中心化计算系统
EP4050542B1 (en) Blockchain-based data processing method and apparatus, and device and readable storage medium
US20230275771A1 (en) Pre-execution of block chain transaction in parallel during block consensus
CN110866289B (zh) 基于区块链的数据处理方法、装置、服务器及存储介质
CN114884674B (zh) 一种基于区块链的用户数据流转方法、装置及设备
CN113570479B (zh) 一种房产交易数据的区块链传输方法、系统及存储介质
CN109508295A (zh) 区块链共识算法测试方法、装置、计算装置和存储介质
CN113706313A (zh) 基于区块链的融资方法、系统及计算机可读存储介质
CN113128998B (zh) 一种区块链系统的业务处理方法、装置及系统
CN113610525B (zh) 基于区块链的金融数据的处理方法、装置、设备及介质
WO2021073096A1 (zh) 资源数据的转移方法、装置和区块链系统
CN113721950A (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1247452

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20201016

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20201016

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee after: Advanced innovation technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Patentee before: Alibaba Group Holding Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240228

Address after: 128 Meizhi Road, Guohao Times City # 20-01, Singapore 189773

Patentee after: Advanced Nova Technology (Singapore) Holdings Ltd.

Country or region after: Singapore

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee before: Innovative advanced technology Co.,Ltd.

Country or region before: Cayman Islands

TR01 Transfer of patent right