想知道更多关于区块链技术知识,请百度【链客区块链技术问答社区】
链客,有问必答!
浅析Hyperledger Fabric共识算法11
区块链系统是一个分布式架构,交易账本信息由各个节点管理,组成一个庞大的分布式账本。在分布式系统中,各个节点收到的交易信息的顺序可能存在差异(例如,网络延迟、主机处理性能),这会导致账本信息的状态不一致,例如,小王账户只有10元,但是他同时转账给小李和小张各10元,并且将这两条交易信息分别发送到两个分布式节点上,如果不对这两条交易进行排序校验,那么,小王实际消费了20元(所谓的双花问题)。所以,在区块链系统中,我们需要一套机制,来保证交易的先后顺序,这套机制就是人们常说的“共识算法”。
在比特币中,采用POW算法来解决上述双花问题,例如,小王还是将两条转账交易分别发给两组节点,这两组节点分别对其中一条交易打包后写入区块链,然后整个系统中产生了两条区块链,一条包含了小王转10元给小李的交易信息,另外一条包含了小王转10元给小张的交易信息(所谓的分叉)。随后,两组节点继续分别打包并生成各自的区块链,两条区块链继续增长。但是,这两组节点的算力各有差异,最后总会出现一组节点的区块链更长一些,那么,另一组节点就会将更长的区块链同步到本地,作为有效链。最终,小王的其中一笔重复的交易被丢弃。
Hyperledger Fa