WO2018086015A1 - 一种区块链系统及区块链系统的架构方法 - Google Patents

一种区块链系统及区块链系统的架构方法 Download PDF

Info

Publication number
WO2018086015A1
WO2018086015A1 PCT/CN2016/105234 CN2016105234W WO2018086015A1 WO 2018086015 A1 WO2018086015 A1 WO 2018086015A1 CN 2016105234 W CN2016105234 W CN 2016105234W WO 2018086015 A1 WO2018086015 A1 WO 2018086015A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
running
backup
nodes
data
Prior art date
Application number
PCT/CN2016/105234
Other languages
English (en)
French (fr)
Inventor
王文欢
尚书丞
杨炯
Original Assignee
弗洛格(武汉)信息科技有限公司
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 弗洛格(武汉)信息科技有限公司 filed Critical 弗洛格(武汉)信息科技有限公司
Priority to PCT/CN2016/105234 priority Critical patent/WO2018086015A1/zh
Publication of WO2018086015A1 publication Critical patent/WO2018086015A1/zh

Links

Images

Classifications

    • 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
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • 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
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Definitions

  • the present invention relates to the field of blockchain technology, and in particular to a blockchain system and an architecture method of a blockchain system.
  • each node in the blockchain system needs to store all the data of the blockchain.
  • each node needs to participate in the operation, so the storage capacity of each node server
  • the computing power has higher requirements, which improves the threshold of becoming a node in the blockchain system.
  • the present invention provides a blockchain system and an architecture method of a blockchain system, which may solve the deficiencies and shortcomings of the prior art.
  • a blockchain system including a running group, the running group includes a plurality of running nodes, and some of the running nodes or all of the running nodes are configured. At least one dependent sub-backup node;
  • the running node When the running node has no child backup node, the running node stores at least one complete blockchain data;
  • the running node and each of its sub-backup nodes are respectively used to store a part or all of a complete blockchain data, and the running node and all its sub-backup nodes
  • the sum of the stored blockchain data includes at least one complete blockchain data.
  • the beneficial effects of the present invention are: configuring a sub-backup node for the running node in the blockchain system, apportioning data for the running node, and reducing the pressure of the running node, and at the same time, by configuring the sub-backup node for the running node, the entire blockchain can be made.
  • the amount of data stored in the system is expanded, and the larger the size of the nodes in the entire blockchain, the stronger the anti-attack capability of the entire blockchain system.
  • the present invention can also be improved as follows.
  • the blockchain system includes a plurality of blocks, each of which stores a part of a complete blockchain data, and the sum of the data stored by the plurality of blocks constitutes at least one complete blockchain data;
  • the running node When the running node has no child backup nodes, the running node stores data in all valid blocks in at least one complete blockchain;
  • the running node and each of its sub-backup nodes are respectively used to store data in several valid blocks in the blockchain system to form at least one complete blockchain. data.
  • each of the running nodes is further configured to generate a block and broadcast the block to other running nodes, and when the block is determined to be a valid block, each running node or a sub-backup of the running node slave The node stores the block.
  • the blockchain system further includes a backup group, and the backup group includes a plurality of backup nodes in a free form;
  • Each of the backup nodes in a free form is used to store data in a plurality of blocks that the blockchain system considers to be valid, and the sum of the block data stored by the plurality of backup nodes includes at least one complete blockchain data. .
  • the further beneficial effect is that: the entire blockchain system is equipped with multiple free-form backup nodes. When the running node crashes or is attacked, the backup node can be restored to improve the anti-attack capability of the entire blockchain system. .
  • a method for constructing a blockchain including:
  • the running node when the running node has no child backup node, the running node stores at least one complete blockchain data; when the running node has a dependent child backup node, the running node and each sub-backup node of the slave node, They are used to store a part or all of a complete blockchain data, and the sum of the blockchain data stored by the running node and all its subordinate backup nodes includes at least one complete blockchain data.
  • the beneficial effects of the present invention are: configuring a sub-backup node for the running node in the blockchain system, apportioning data for the running node, and reducing the pressure of the running node, and at the same time, by configuring the sub-backup node for the running node, the entire blockchain can be made.
  • the amount of data stored in the system is expanded, and the larger the size of the nodes in the entire blockchain, the stronger the anti-attack capability of the entire blockchain system.
  • the present invention can also be improved as follows.
  • the blockchain system includes a plurality of blocks, each of which stores a part of a complete blockchain data, and the sum of the data stored by the plurality of blocks constitutes a complete blockchain data;
  • the running node When the running node has no child backup nodes, the running node stores data in all valid blocks in at least one complete blockchain;
  • the running node and each of its sub-backup nodes are respectively used to store data in several valid blocks in the blockchain system to form at least one complete blockchain. data.
  • each of the running nodes generates a block and broadcasts the block to other running nodes.
  • each running node or a sub-backup node to which the running node is dependent stores the block. Block.
  • the backup group includes a plurality of backup nodes in a free form, and each of the free-form backup node storage blockchain systems identifies data in a plurality of blocks that are valid, and multiple The sum of the block data stored by the backup node includes at least one complete blockchain data.
  • the further beneficial effect is that: the entire blockchain system is equipped with multiple free-form backup nodes. When the running node crashes or is attacked, the backup node can be restored to improve the anti-attack capability of the entire blockchain system. .
  • time zone generated by the running node is identified with a time stamp for generating the block, and further includes:
  • the blockchain system When the blockchain system receives the data read request, according to the address and timestamp information of the block to be queried in the data read request, the corresponding query is obtained from the running node closer to the querier or its dependent sub-backup node. Block data and return to the querier.
  • the further beneficial effect is that: when the data query is performed, since the running node is configured with the sub-backup node, when the running node is busy, the sub-backup node can query the data, thereby reducing the pressure of the running node and improving the speed of the data query. .
  • 1 is a block diagram of a blockchain system connection of an embodiment
  • FIG. 2 is a block diagram of a blockchain system connection according to another embodiment
  • FIG. 3 is a flow chart of an architectural method of a blockchain system of an embodiment.
  • Embodiment 1 A blockchain system.
  • the blockchain system provided in this embodiment includes a running group, and the running group includes a plurality of running nodes, and each of the running nodes or each of the running nodes configures at least one dependent sub-backup node. ;
  • the running node When the running node has no child backup node, the running node stores at least one complete blockchain data; when the running node has a dependent child backup node, the running node and each of its subordinate backup nodes are respectively used For storing a part or all of a complete blockchain data, the sum of the blockchain data stored by the running node and all its subordinate backup nodes includes at least one complete blockchain data, that is, the running node and its subordinates
  • the child backup nodes form a whole, and together store at least one complete blockchain technology.
  • sub-backup nodes are configured for each running node of all running nodes or all running nodes of all running nodes, that is, the running nodes can be used separately and can be configured. Used together by backup nodes.
  • the running node does not configure the sub-backup node, the running node stores at least one complete blockchain data; when the running node has a subordinate sub-backup node, the running node and all sub-backup nodes of its subordinates form a whole
  • the sub-backup node allocates data storage pressure to the running node to reduce the pressure on the running node.
  • the sub-backup node by configuring the sub-backup node for the running node, the amount of data stored in the entire blockchain system can be expanded. The larger the size of the nodes in the blockchain, the stronger the anti-attack capability of the entire blockchain system.
  • the blockchain system includes a plurality of blocks, each block stores a part of a complete blockchain data, and the sum of the data stored by the plurality of blocks forms at least one complete blockchain data. ;
  • the running node When the running node has no child backup nodes, the running node stores data in all valid blocks in at least one complete blockchain;
  • the running node and each sub-backup node of its subordinate are respectively used to store data in several valid blocks in the blockchain system to form a complete blockchain data.
  • each running node or sub-backup node stores in units of blocks when storing data.
  • the running node stores all the valid blocks in the entire blockchain.
  • each of the running nodes is configured to generate a block, and broadcast the block to other running nodes, and when the block is determined to be a valid block, each running node or a sub-backup of the running node slave The node stores the block, wherein the generated block identifies the timestamp generated by the block.
  • the running node in the blockchain system is mainly used to generate the block and verify the block.
  • it also has the function of storing a part of the block data, and the sub-backup node of the running node is mainly used for storing the block data. , apportion the pressure for the running node.
  • the data of one time stamp is generated into block data by a running node, and when the running node generates a new block, the generated new block is broadcast to other running nodes.
  • the other running nodes perform validity verification on the generated block.
  • there are various ways to verify the validity of the generated new block for example, a workload proof mechanism (POW) and a stock certificate mechanism (POS).
  • PW workload proof mechanism
  • POS stock certificate mechanism
  • the authorized equity certification mechanism wherein the authorized equity certification mechanism is specifically verified as: determining a predetermined number of running nodes from all running nodes as representative nodes, and when half of all the representative nodes determine that the new block is valid When the blockchain system considers that the generated block is valid, at this time, each running node in the blockchain or the dependent sub-backup node of the running node stores the block.
  • the representative nodes in the running node are used to jointly verify whether the generated blocks are valid, so that the validity of the finally determined blocks is more authoritative, and the correctness of the data in the blockchain is improved.
  • the method further includes: when performing the blockchain data query, the queryer sends a data read request to the blockchain system, when the blockchain system receives the data read request.
  • the corresponding block data is queried from the running node closer to the querier or its dependent sub-backup node, and returned to the querier.
  • the data read request carries the IP address of the querier, the address of the block to be queried, and the timestamp of the block.
  • the locator's geographic address is known according to the querier's IP address. Therefore, the blockchain system selects from Query the data in the running node or the sub-backup node that is closer to the finder, and then determine the location of the block to be queried according to the address and timestamp of the block to be queried, that is, which sub-backup of the subordinate in the running node or the subordinate In the node, after querying the corresponding blockchain data, returning to the queryer, the query process of the blockchain data is completed.
  • the IP addresses of the running nodes that make up the entire blockchain are some in Beijing, some in Wuhan.
  • the IP address of the querier is in Wuhan
  • the operating node from the IP address is in Wuhan or the sub-backup node of the running node.
  • the corresponding block data is queried and returned to the querier, which improves the speed of the data query.
  • the data query because the running node is configured with a sub-backup node, when the running node is busy, the data can be queried through the sub-backup node, which reduces the pressure on the running node and improves the speed of data query.
  • Embodiment 2 A blockchain system.
  • the operation group of the blockchain system provided in this embodiment includes a plurality of running nodes, and each of the running nodes or all of the running nodes configures at least one dependent sub-backup node;
  • the running node When the running node has no child backup node, the running node stores at least one complete blockchain data; when the running node has a dependent child backup node, the running node and each of its subordinate backup nodes are respectively used For storing a part or all of a complete blockchain data, the sum of the blockchain data stored by the running node and all its subordinate backup nodes includes at least a complete blockchain data;
  • the blockchain system further includes a backup group, the backup group including a plurality of backup nodes in a free form; each of the backup nodes in a free form for storing a plurality of blocks determined to be valid by the blockchain system In the data, the sum of the block data stored by the plurality of backup nodes includes at least one complete blockchain data.
  • the blockchain system in this embodiment includes not only the operation group in the blockchain system of the first embodiment but also the backup group.
  • the backup node stores the block by a backup node of the plurality of free-form backup nodes, and the specific backup node stores the block according to the setting.
  • the rules are stored in turn.
  • the sum of the block data stored by the plurality of backup nodes includes at least one complete blockchain data, which ensures the integrity of the data.
  • multiple free-form backup nodes are configured for the entire blockchain system.
  • the backup node can be restored to improve the anti-attack capability of the entire blockchain system.
  • Embodiment 3 is an architectural method of a blockchain.
  • each running node Configuring at least one dependent sub-backup node for each of the running nodes or all of the running nodes of the running group in the blockchain system, each running node forming a whole with at least one of its subordinate backup nodes;
  • the running node when the running node has no child backup node, the running node stores at least one complete blockchain data; when the running node has a dependent child backup node, the running node and each sub-backup node of the slave node, They are used to store a part or all of a complete blockchain data, and the sum of the blockchain data stored by the running node and all its subordinate backup nodes includes at least one complete blockchain data.
  • the sub-backup node is configured for the running node, and the data storage pressure is allocated for the running node. Reduce the pressure on the running node.
  • the sub-backup node by configuring the sub-backup node for the running node, the amount of data stored in the entire blockchain system can be expanded. The larger the size of the nodes in the entire blockchain, the anti-attack capability of the entire blockchain system. The stronger.
  • the blockchain system includes a plurality of blocks, each block stores a part of a complete blockchain data, and the sum of the data stored by the plurality of blocks forms at least one complete blockchain data. ;
  • the running node When the running node has no child backup nodes, the running node stores data in all valid blocks in a complete blockchain; when the running node has a dependent child backup node, the running node and each of its dependent nodes The sub-backup node is used to store data in several valid blocks in the blockchain system to form a complete blockchain data.
  • each running node or sub-backup node stores in units of blocks when storing data.
  • the running node stores all valid blocks in the entire blockchain.
  • each of the running nodes generates a block, and broadcasts the block to another running node.
  • each running node or The sub-backup node to which the running node is dependent stores the block, wherein the generated block identifies the timestamp generated by the block.
  • the timestamp generated by the block is identified in the generated block, and when the query is convenient, the block data is queried according to the timestamp.
  • the method further includes: when the blockchain system receives the data read request, according to the address and timestamp information of the block that needs to be queried in the data read request, the running node or the slave node that is closer to the queryer
  • the sub-backup node queries the corresponding block data and returns it to the queryer.
  • Embodiment 4 is an architectural method of a blockchain system.
  • the architecture method of the blockchain system provided in this embodiment includes:
  • the running node when the running node has no child backup node, the running node stores at least one complete blockchain data; when the running node has a dependent child backup node, the running node and each sub-backup node of the slave node, They are used to store a part or all of a complete blockchain data, and the sum of the blockchain data stored by the running node and all its subordinate backup nodes includes at least one complete blockchain data.
  • the backup group includes a plurality of backup nodes in a free form, and each of the free-form backup node storage blockchain systems is determined to be valid data in a plurality of blocks,
  • the sum of the block data stored by the plurality of backup nodes includes at least one complete blockchain data.
  • the backup node When a running node in the blockchain system generates a new block and is a valid block, the backup node stores the block by one of the plurality of free-form backup nodes, and the specific backup node stores the block. Store in turn according to the set rules.
  • the embodiment also configures a backup group for the blockchain system.
  • the backup node stores the block by a backup node of the plurality of free-form backup nodes, and the specific backup node stores the block in turn according to the set rule.
  • the invention provides a blockchain system and a blockchain system architecture method, which configures a sub-backup node for a running node in a blockchain system, distributes data for the running node, reduces the pressure of the running node, and at the same time, runs through
  • the node configures the sub-backup node to expand the amount of data stored in the entire blockchain system.
  • the larger the size of the nodes in the entire blockchain the stronger the anti-attack capability of the entire blockchain system; in addition, the entire blockchain system It is equipped with multiple sub-backup nodes in free form. When the running node crashes or is attacked, it can be restored by the backup node to improve the anti-attack capability of the entire blockchain system.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种区块链系统及区块链系统的架构方法,所述区块链系统包括运行组,所述运行组包括多个运行节点,其中的部分运行节点或者全部的运行节点中的每个运行节点配置至少一个从属的子备份节点。本发明为区块链系统中的运行节点配置子备份节点,为运行节点分摊数据,减轻运行节点的压力,同时,通过为运行节点配置子备份节点,可以使整个区块链系统存储的数据量扩大,整个区块链中节点的规模越大,整个区块链系统的抗攻击能力越强;此外,为整个区块链系统配备了多个游离形式的子备份节点,当运行节点崩溃或受到攻击时,可通过备份节点进行恢复,提高整个区块链系统的抗攻击能力。

Description

一种区块链系统及区块链系统的架构方法 技术领域
本发明涉及区块链技术领域,具体涉及一种区块链系统及区块链系统的架构方法。
背景技术
目前区块链系统中的每一个节点均需要存储区块链的所有数据,当使用类似工作量证明机制的一致性算法时,每个节点都需要参与运算,故对每个节点服务器的存储能力及运算能力有较高要求,提高了成为区块链系统中的节点的门槛。
发明内容
本发明提供了一种区块链系统及区块链系统的架构方法,可能解决现有技术的不足和缺陷。
本发明解决上述技术问题的技术方案如下:提供了一种区块链系统,包括运行组,所述运行组包括多个运行节点,其中的部分运行节点或者全部运行节点中的每个运行节点配置至少一个从属的子备份节点;
当运行节点没有子备份节点时,该运行节点中存储有至少一条完整的区块链数据;
当运行节点具有从属的子备份节点时,该运行节点以及其从属的每一个子备份节点,分别用于存储一条完整的区块链数据的一部分或全部,该运行节点与其从属的所有子备份节点所存储的区块链数据之和至少包括一条完整的区块链数据。
本发明的有益效果为:为区块链系统中的运行节点配置子备份节点,为运行节点分摊数据,减轻运行节点的压力,同时,通过为运行节点配置子备份节点,可以使整个区块链系统存储的数据量扩大,整个区块链中节点的规模越大,整个区块链系统的抗攻击能力越强。
在上述技术方案的基础上,本发明还可以作如下改进。
进一步的,所述区块链系统包括多个区块,每一个区块存储有一条完整的区块链数据的一部分,多个区块存储的数据之和至少组成一条完整的区块链数据;
当运行节点没有子备份节点时,该运行节点存储有至少一条完整的区块链中所有的有效区块中的数据;
当运行节点具有从属的子备份节点时,该运行节点以及其从属的每一个子备份节点,分别用于存储区块链系统中若干个有效区块中的数据,组成至少一条完整的区块链数据。
进一步的,每一个所述运行节点还用于产生区块,并向其它的运行节点广播该区块,当该区块被认定为有效区块时,每一个运行节点或者运行节点从属的子备份节点存储该区块。
进一步的,所述区块链系统还包括备份组,所述备份组包括多个游离形式的备份节点;
每一个游离形式的所述备份节点,用于存储区块链系统认定为有效的若干个区块中的数据,多个备份节点所存储的区块数据之和至少包括一条完整的区块链数据。
所述进一步的有益效果为:为整个区块链系统配备了多个游离形式的备份节点,当运行节点崩溃或受到攻击时,可通过备份节点进行恢复,提高整个区块链系统的抗攻击能力。
为了解决本发明的技术问题,还提供了一种区块链的架构方法,包括:
为区块链系统中运行组的部分运行节点或者全部运行节点中的每一个运行节点配置至少一个从属的子备份节点,每一个运行节点与其从属的所有子备份节点形成一个整体;
其中,当运行节点没有子备份节点时,该运行节点中存储有至少一条完整的区块链数据;当运行节点具有从属的子备份节点时,该运行节点以及其从属的每一个子备份节点,分别用于存储一条完整的区块链数据的一部分或全部,该运行节点与其从属的所有子备份节点所存储的区块链数据之和至少包括一条完整的区块链数据。
本发明的有益效果为:为区块链系统中的运行节点配置子备份节点,为运行节点分摊数据,减轻运行节点的压力,同时,通过为运行节点配置子备份节点,可以使整个区块链系统存储的数据量扩大,整个区块链中节点的规模越大,整个区块链系统的抗攻击能力越强。
在上述技术方案的基础上,本发明还可以作如下改进。
进一步的,所述区块链系统包括多个区块,每一个区块存储有一条完整的区块链数据的一部分,多个区块存储的数据之和组成一条完整的区块链数据;
当运行节点没有子备份节点时,该运行节点存储有至少一条完整的区块链中所有的有效区块中的数据;
当运行节点具有从属的子备份节点时,该运行节点以及其从属的每一个子备份节点,分别用于存储区块链系统中若干个有效区块中的数据,组成至少一条完整的区块链数据。
进一步的,每一个所述运行节点产生区块,并向其它的运行节点广播该区块,当该区块被认定为有效区块时,每一个运行节点或者运行节点从属的子备份节点存储该区块。
进一步的,还包括:
为区块链系统配置备份组,所述备份组包括多个游离形式的备份节点,每一个游离形式的所述备份节点存储区块链系统认定为有效的若干个区块中的数据,多个备份节点所存储的区块数据之和至少包括一条完整的区块链数据。
所述进一步的有益效果为:为整个区块链系统配备了多个游离形式的备份节点,当运行节点崩溃或受到攻击时,可通过备份节点进行恢复,提高整个区块链系统的抗攻击能力。
进一步的,运行节点产生的所述区块中标识有产生区块的时间戳,还包括:
当区块链系统接收到数据读取请求时,根据数据读取请求中需要查询的区块的地址和时间戳信息,从距离查询者较近的运行节点或者其从属子备份节点中查询对应的区块数据,并返回给查询者。
所述进一步的有益效果为:在进行数据查询时,由于运行节点配置了子备份节点,当运行节点忙碌时,可通过子备份节点查询数据,减轻了运行节点的压力,提高了数据查询的速度。
附图说明
图1为实施例的一种区块链系统连接框图;
图2为另一实施例的一种区块链系统连接框图;
图3为实施例的一种区块链系统的架构方法流程图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
实施例1、一种区块链系统。
参见图1,本实施例提供的区块链系统包括运行组,所述运行组包括多个运行节点,其中的一部分运行节点或者全部运行节点中的每一个运行节点配置至少一个从属的子备份节点;
当运行节点没有子备份节点时,该运行节点中存储有至少一条完整的区块链数据;当运行节点具有从属的子备份节点时,该运行节点以及其从属的每一个子备份节点,分别用于存储一条完整的区块链数据的一部分或全部,该运行节点与其从属的所有子备份节点所存储的区块链数据之和至少包括一条完整的区块链数据,也即该运行节点与其从属的子备份节点形成一个整体,共同存储有至少一条完整的区块链技术。
应理解为,区块链系统中有多个运行节点,为所有运行节点中一部分运行节点或者全部的运行节点的每一个运行节点配置一个或者多个子备份节点,即运行节点可以单独使用,可以配置自备份节点共同使用。当运行节点没有配置子备份节点时,该运行节点中存储有至少一条完整的区块链数据;当运行节点具有从属的子备份节点时,该运行节点以及其从属的所有子备份节点形成一个整体,共同存储有至少一条完整的区块链数据,其中,为一个运行节点配置的子备份节点的数量可按具体情况而定。
为运行节点配置子备份节点,子备份节点为运行节点分摊数据存储压力,减轻运行节点的压力,同时,通过为运行节点配置子备份节点,可以使整个区块链系统存储的数据量扩大,整个区块链中节点的规模越大,整个区块链系统的抗攻击能力越强。
可选的,所述区块链系统包括多个区块,每一个区块存储有一条完整的区块链数据的一部分,多个区块存储的数据之和至少组成一条完整的区块链数据;
当运行节点没有子备份节点时,该运行节点存储有至少一条完整的区块链中所有的有效区块中的数据;
当运行节点具有从属的子备份节点时,该运行节点以及其从属的每一个子备份节点,分别用于存储区块链系统中若干个有效区块中的数据,组成一条完整的区块链数据。
可以理解,每一个运行节点或者子备份节点在存储数据时是以区块为单位进行存储,当运行节点没有子备份节点时,该运行节点存储有整个区块链中所有的有效区块中的数据;当运行节点具有子备份节点时,每一个运行节点以及其从属的子备份节点存储的区块数据之和至少包括一条完整的区块链数据,保证数据的完整性。
可选的,每一个所述运行节点用于产生区块,并向其它的运行节点广播该区块,当该区块被认定为有效区块时,每一个运行节点或者运行节点从属的子备份节点存储该区块,其中,产生的区块中标识有该区块产生的时间戳。
可理解为,区块链系统中的运行节点主要用于生成区块、验证区块,另外,还具有存储一部分区块数据的功能,运行节点的子备份节点主要是用来存储区块数据的,为运行节点分摊压力。
其中,一个时间戳的数据由一个运行节点产生成区块数据,当运行节点产生了新区块时,将该产生的新区块广播给其它的运行节点。其它的运行节点对产生的该区块进行有效性验证,本实施例中对产生的新区块的有效性验证的方式有多种,比如,工作量证明机制(POW)、股权证明机制(POS)和授权股权证明机制(DPOS),其中的授权股权证明机制具体的验证方式为:从所有的运行节点中确定预定数量的运行节点作为代表节点,当所有的代表节点中有一半认定该新区块有效时,则区块链系统认为产生的该区块有效,此时,区块链中的每一个运行节点或者该运行节点的从属子备份节点存储该区块。
采用运行节点中的代表节点来共同验证产生的区块是否有效,使得最后确定出来的区块的有效性更具权威性,提高了区块链中的数据的正确性。
可选的,作为本发明的另一个实施例,还包括:当进行区块链数据查询时,查询者向区块链系统发送数据读取请求,当区块链系统接收到数据读取请求时,根据数据读取请求中需要查询的区块的地址和时间戳信息,从距离查询者较近的运行节点或者其从属子备份节点中查询对应的区块数据,并返回给查询者。
其中,数据读取请求中携带有查询者的IP地址、需要查询的区块的地址以及区块的时间戳,根据查询者的IP地址可知查询者的地理位置,因此,区块链系统选择从距离查询者较近的运行节点或者子备份节点中查询数据,然后根据需要查询的区块的地址和时间戳确定需要查询的区块所在的位置,即在运行节点中还是其从属的哪个子备份节点中,查询到对应的区块链数据后,返回给查询者,至此完成区块链数据的查询过程。
比如,组成整个区块链中的运行节点的IP地址位置有些在北京,有些在武汉,当查询者的IP地址处于武汉时,则从IP地址处于武汉的运行节点或者该运行节点的子备份节点中查询对应的区块数据,并返回给查询者,这样提高了数据查询的速度。同时,在进行数据查询时,由于运行节点配置了子备份节点,当运行节点忙碌时,可通过子备份节点查询数据,减轻了运行节点的压力,提高了数据查询的速度。
实施例2、一种区块链系统。
参见图2,本实施例提供的区块链系统所述运行组包括多个运行节点,其中的部分运行节点或者全部运行节点中的每个运行节点配置至少一个从属的子备份节点;
当运行节点没有子备份节点时,该运行节点中存储有至少一条完整的区块链数据;当运行节点具有从属的子备份节点时,该运行节点以及其从属的每一个子备份节点,分别用于存储一条完整的区块链数据的一部分或全部,该运行节点与其从属的所有子备份节点所存储的区块链数据之和至少包括 一条完整的区块链数据;
以及所述区块链系统还包括备份组,所述备份组包括多个游离形式的备份节点;每一个游离形式的所述备份节点,用于存储区块链系统认定为有效的若干个区块中的数据,多个备份节点所存储的区块数据之和至少包括一条完整的区块链数据。
本实施例中的区块链系统不仅包括上述实施例1的一种区块链系统中的运行组,还包括备份组,其它的技术特征可参见上述实施例1中的技术特征,当区块链系统中的运行节点产生新区块且为有效区块时,由多个游离形式的备份节点中的某个备份节点存储该区块,具体的由哪一个备份节点存储该区块可以根据设定的规则轮流进行存储。同时,多个备份节点所存储的区块数据之和至少包括一条完整的区块链数据,保证了数据的完整性。
其中,为整个区块链系统配置多个游离形式的备份节点,当运行节点崩溃或受到攻击时,可通过备份节点进行恢复,提高整个区块链系统的抗攻击能力。
实施例3、一种区块链的架构方法。
本实施例提供的区块链的架构方法包括:
为区块链系统中运行组的部分运行节点或者全部运行节点中的每一个运行节点配置至少一个从属的子备份节点,每一个运行节点与其从属的至少一个子备份节点形成一个整体;
其中,当运行节点没有子备份节点时,该运行节点中存储有至少一条完整的区块链数据;当运行节点具有从属的子备份节点时,该运行节点以及其从属的每一个子备份节点,分别用于存储一条完整的区块链数据的一部分或全部,该运行节点与其从属的所有子备份节点所存储的区块链数据之和至少包括一条完整的区块链数据。
应理解为,为运行节点配置子备份节点,为运行节点分摊数据存储压力, 减轻运行节点的压力,同时,通过为运行节点配置子备份节点,可以使整个区块链系统存储的数据量扩大,整个区块链中节点的规模越大,整个区块链系统的抗攻击能力越强。
可选的,所述区块链系统包括多个区块,每一个区块存储有一条完整的区块链数据的一部分,多个区块存储的数据之和至少组成一条完整的区块链数据;
当运行节点没有子备份节点时,该运行节点存储有一条完整的区块链中所有的有效区块中的数据;当运行节点具有从属的子备份节点时,该运行节点以及其从属的每一个子备份节点,分别用于存储区块链系统中若干个有效区块中的数据,组成一条完整的区块链数据。
可以理解为,每一个运行节点或者子备份节点在存储数据时是以区块为单位进行存储,当运行节点没有子备份节点时,该运行节点存储有整个区块链中所有的有效区块中的数据;当运行节点具有子备份节点时,每一个运行节点以及其从属的子备份节点存储的区块数据之和至少包括一条完整的区块链数据,保证了区块链数据的完整性。
可选的,本申请的另一个实施例中每一个所述运行节点产生区块,并向其它的运行节点广播该区块,当该区块被认定为有效区块时,每一个运行节点或者运行节点从属的子备份节点存储该区块,其中,产生的区块中标识有该区块产生的时间戳。
本实施例在产生的区块中标识有该区块产生的时间戳,方便查询时,按照时间戳对区块数据进行查询。
可选的,还包括:当区块链系统接收到数据读取请求时,根据数据读取请求中需要查询的区块的地址和时间戳信息,从距离查询者较近的运行节点或者其从属子备份节点中查询对应的区块数据,并返回给查询者。
在进行数据查询时,从距离查询者距离较近的运行节点查询数据,以及 由于为运行节点配置了子备份节点,当运行节点忙碌时,可通过子备份节点查询数据,减轻了运行节点的压力,提高了数据查询的速度。
实施例4、一种区块链系统的架构方法。
参见图4,本实施例提供的区块链系统的架构方法包括:
S1,为区块链系统中运行组的部分运行节点或者全部运行节点中的每一个运行节点配置至少一个从属的子备份节点,每一个运行节点与其从属的至少一个子备份节点形成一个整体;
其中,当运行节点没有子备份节点时,该运行节点中存储有至少一条完整的区块链数据;当运行节点具有从属的子备份节点时,该运行节点以及其从属的每一个子备份节点,分别用于存储一条完整的区块链数据的一部分或全部,该运行节点与其从属的所有子备份节点所存储的区块链数据之和至少包括一条完整的区块链数据。
S2,为区块链系统配置备份组,所述备份组包括多个游离形式的备份节点,每一个游离形式的所述备份节点存储区块链系统认定为有效的若干个区块中的数据,多个备份节点所存储的区块数据之和至少包括一条完整的区块链数据。
当区块链系统中的运行节点产生新区块且为有效区块时,由多个游离形式的备份节点中的某个备份节点存储该区块,具体的由哪一个备份节点存储该区块可以根据设定的规则轮流进行存储。
本实施例与上述实施例3相比,还为区块链系统配置了备份组,其它的技术特征可参见上述实施例3中的技术特征,当区块链系统中的运行节点产生新区块且为有效区块时,由多个游离形式的备份节点中的某个备份节点存储该区块,具体的由哪一个备份节点存储该区块可以根据设定的规则轮流进行存储。
其中,为整个区块链系统配置多个游离形式的备份组,当运行节点崩溃 或受到攻击时,可通过备份节点进行恢复,提高整个区块链系统的抗攻击能力。
本发明提供的一种区块链系统及区块链系统的架构方法,为区块链系统中的运行节点配置子备份节点,为运行节点分摊数据,减轻运行节点的压力,同时,通过为运行节点配置子备份节点,可以使整个区块链系统存储的数据量扩大,整个区块链中节点的规模越大,整个区块链系统的抗攻击能力越强;此外,为整个区块链系统配备了多个游离形式的子备份节点,当运行节点崩溃或受到攻击时,可通过备份节点进行恢复,提高整个区块链系统的抗攻击能力。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (9)

  1. 一种区块链系统,其特征在于,包括运行组,所述运行组包括多个运行节点,其中的部分运行节点或者全部运行节点中的每个运行节点配置至少一个从属的子备份节点;
    当运行节点没有子备份节点时,该运行节点中存储有至少一条完整的区块链数据;
    当运行节点具有从属的子备份节点时,该运行节点以及其从属的每一个子备份节点,分别用于存储一条完整的区块链数据的一部分或全部,该运行节点与其从属的所有子备份节点所存储的区块链数据之和至少包括一条完整的区块链数据。
  2. 如权利要求1所述的区块链系统,其特征在于,区块链系统中包括多个区块,每一个区块存储有一条完整的区块链数据的一部分,多个区块存储的数据之和至少组成一条完整的区块链数据;
    当运行节点没有子备份节点时,该运行节点存储有至少一条完整的区块链中所有的有效区块中的数据;
    当运行节点具有从属的子备份节点时,该运行节点以及其从属的每一个子备份节点,分别用于存储区块链系统中若干个有效区块中的数据,组成至少一条完整的区块链数据。
  3. 如权利要求1所述的区块链系统,其特征在于,每一个所述运行节点还用于产生区块,并向其它的运行节点广播该区块,当该区块被认定为有效区块时,每一个运行节点或者运行节点从属的子备份节点存储该区块。
  4. 如权利要求3所述的区块链系统,其特征在于,所述区块链系统还包括备份组,所述备份组包括多个游离形式的备份节点;
    每一个游离形式的所述备份节点,用于存储区块链系统认定为有效的若 干个区块中的数据,多个备份节点所存储的区块数据之和至少包括一条完整的区块链数据。
  5. 一种区块链系统的架构方法,其特征在于,包括:
    为区块链系统中运行组的部分运行节点或者全部运行节点中的每一个运行节点配置至少一个从属的子备份节点,每一个运行节点与其从属的至少一个子备份节点形成一个整体;
    其中,当运行节点没有子备份节点时,该运行节点中存储有至少一条完整的区块链数据;当运行节点具有从属的子备份节点时,该运行节点以及其从属的每一个子备份节点,分别用于存储一条完整的区块链数据的一部分或全部,该运行节点与其从属的所有子备份节点所存储的区块链数据之和至少包括一条完整的区块链数据。
  6. 如权利要求5所述的区块链系统的架构方法,其特征在于,所述区块链系统包括多个区块,每一个区块存储有一条完整的区块链数据的一部分,多个区块存储的数据之和至少组成一条完整的区块链数据;
    当运行节点没有子备份节点时,该运行节点存储有至少一条完整的区块链中所有的有效区块中的数据;
    当运行节点具有从属的子备份节点时,该运行节点以及其从属的每一个子备份节点,分别用于存储区块链系统中若干个有效区块中的数据,组成至少一条完整的区块链数据。
  7. 如权利要求6所述的区块链系统的架构方法,其特征在于,每一个所述运行节点产生区块,并向其它的运行节点广播该区块,当该区块被认定为有效区块时,每一个运行节点或者运行节点从属的子备份节点存储该区块。
  8. 如权利要求7所述的区块链系统的架构方法,其特征在于,还包括:
    为区块链系统配置备份组,所述备份组包括多个游离形式的备份节点, 每一个游离形式的所述备份节点存储区块链系统认定为有效的若干个区块中的数据,多个备份节点所存储的区块数据之和至少包括一条完整的区块链数据。
  9. 如权利要求7任一项所述的区块链系统的架构方法,其特征在于,运行节点产生的所述区块中标识有产生区块的时间戳,还包括:
    当区块链系统接收到数据读取请求时,根据数据读取请求中需要查询的区块的地址和时间戳信息,从距离查询者较近的运行节点或者其从属子备份节点中查询对应的区块数据,并返回给查询者。
PCT/CN2016/105234 2016-11-09 2016-11-09 一种区块链系统及区块链系统的架构方法 WO2018086015A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2016/105234 WO2018086015A1 (zh) 2016-11-09 2016-11-09 一种区块链系统及区块链系统的架构方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2016/105234 WO2018086015A1 (zh) 2016-11-09 2016-11-09 一种区块链系统及区块链系统的架构方法

Publications (1)

Publication Number Publication Date
WO2018086015A1 true WO2018086015A1 (zh) 2018-05-17

Family

ID=62110158

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/105234 WO2018086015A1 (zh) 2016-11-09 2016-11-09 一种区块链系统及区块链系统的架构方法

Country Status (1)

Country Link
WO (1) WO2018086015A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108900364A (zh) * 2018-08-22 2018-11-27 泰康保险集团股份有限公司 区块链网络的管理方法、装置、介质及电子设备
WO2019231954A1 (en) * 2018-05-31 2019-12-05 Alibaba Group Holding Limited Blockchain-based data migration method and apparatus
US11522726B1 (en) * 2021-06-29 2022-12-06 Fmr Llc Systems and methods for reading, storing, and correcting historical records in distributed ledgers

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105975868A (zh) * 2016-04-29 2016-09-28 杭州云象网络技术有限公司 一种基于区块链的证据保全方法及装置
CN106022681A (zh) * 2016-05-13 2016-10-12 杭州云象网络技术有限公司 一种基于区块链的物流追踪方法
US20160321676A1 (en) * 2015-05-01 2016-11-03 Monegraph, Inc. Sharing content within social network services

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160321676A1 (en) * 2015-05-01 2016-11-03 Monegraph, Inc. Sharing content within social network services
CN105975868A (zh) * 2016-04-29 2016-09-28 杭州云象网络技术有限公司 一种基于区块链的证据保全方法及装置
CN106022681A (zh) * 2016-05-13 2016-10-12 杭州云象网络技术有限公司 一种基于区块链的物流追踪方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019231954A1 (en) * 2018-05-31 2019-12-05 Alibaba Group Holding Limited Blockchain-based data migration method and apparatus
US10649953B2 (en) 2018-05-31 2020-05-12 Alibaba Group Holding Limited Blockchain-based data migration method and apparatus
CN108900364A (zh) * 2018-08-22 2018-11-27 泰康保险集团股份有限公司 区块链网络的管理方法、装置、介质及电子设备
CN108900364B (zh) * 2018-08-22 2021-11-26 泰康保险集团股份有限公司 区块链网络的管理方法、装置、介质及电子设备
US11522726B1 (en) * 2021-06-29 2022-12-06 Fmr Llc Systems and methods for reading, storing, and correcting historical records in distributed ledgers

Similar Documents

Publication Publication Date Title
CN109189962B (zh) 一种基于区块链的证照服务实现系统
WO2021032138A1 (zh) 一种基于区块链系统的共识方法、装置及系统
CN109246122A (zh) 一种基于谣言传播协议的拜占庭容错区块链生成方法
Luo et al. PAN: Providing reliable storage in mobile ad hoc networks with probabilistic quorum systems
WO2019042101A1 (zh) 一种跨链交易方法及装置
WO2018086015A1 (zh) 一种区块链系统及区块链系统的架构方法
Fan et al. A blockchain-based clock synchronization scheme in IoT
CN111338766A (zh) 事务处理方法、装置、计算机设备及存储介质
JP2014524078A5 (zh)
WO2014101044A1 (zh) 分布式存储系统中的分区平衡方法、装置及服务器
CN109688199A (zh) 一种多域分层物联网联盟链平台及其分片方法、计算机
KR20070110367A (ko) 데이터 관리 방법 및 장치
WO2020211498A1 (zh) 区块链数据的分次获取方法和装置
JP2016508638A5 (zh)
CN109146677B (zh) 并行构建区块链视图的方法、计算机系统和可读存储介质
CN103488526A (zh) 在分布式系统中锁定业务资源的系统和方法
CN111385370B (zh) Id分配方法、装置、存储介质及id分配系统
Chen et al. Distributed provenance compression
WO2011127716A1 (zh) 多线程处理方法和装置
CN112395113B (zh) 实用拜占庭容错共识方法及装置、可读存储介质
JP2023541298A (ja) トランザクション処理方法、システム、装置、機器、及びプログラム
US20150319265A1 (en) Unique identifier for a transaction
CN109739684A (zh) 基于向量时钟的分布式键值数据库的副本修复方法与装置
CN101236587B (zh) 基于脆弱水印的外包数据库查询验证方法
Sun et al. A Scalable Sharding Protocol Based on Cross-Shard Dynamic Transaction Confirmation for Alliance Chain in Intelligent Systems

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16921063

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16921063

Country of ref document: EP

Kind code of ref document: A1