共识机制综述 | 本质剖析 浅谈机制对比
共识机制作为区块链技术中的核心部件,是进入区块链领域的必修课。不过要想理解共识机制,首先要了解区块链和其基本结构和必要概念。所以作为综述零篇,本文想先定义一些基本概念,为后面的讨论做好铺垫。
基本定义
首先我们需要定义区块链。定义很简单:区块链就是区块组成的链。
这是我读到的最简单定义,没有之一。有了这个基本定义,我们就可以研究:什么是区块,什么是链。
区块就是打包在一起的数字信息,且规定大小不能超过1M;而链,就是储存这些信息的数据库。那么接下来的问题是,区块装着什么信息,如何入链。区块的信息主要分为两部分:区块头和区块体。
- 区块信息(6):Version, prevBlockHash, merkleRoot, time difficultyTarget, nonce.(具体内容信息见附表)
- 交易信息(3):numTransactionsBytes, numTransactions, transactions.
所以区块装的是自身的身份信息和本身需要加密传递的交易信息。那么问题就来了,如何创建一个区块,这个区块凭什么上链,人们凭什么相信,上链的区块中的信息一定是真实可信、没有篡改、未被双花的交易信息?这些问题,就是共识机制要解决的。这里面有两个部分,第一个,区块如何产生;第二,区块产生后,如何被被全链认可。而共识机制,就是为完成这两个步骤而制定的规则。
共识机制原理
共识机制要解决的问题如下,如何确保交易数据真实、无法篡改、不能双花。
PoW
通过“工作量”进行证明:当某个节点提供出一个合理的Block Hash值,说明该节点确实经过了大量的尝试计算。以此保证整个系统只要不超过51%的节点作恶,就能保证最长链的正确性。
PoS
权益证明。相比PoW发工资的方式,PoS则是发利息。持币时间越长,持有币量越高,得到的分红越大。缺点是容易形成两极分化,无法全面普及权益。
PoS还有各种衍生、分支算法,比如DPoS,SPoS等,均是在权益证明的基础上增加相关细节规则,以尝试提高参与度和分利均衡。
BFT
BFT主要针对拜占庭将军问题,解决了故意作恶时,如何确保100%的准确性(比特币使用的PoW,就不是100%确保准确的),可是这种容错需要牺牲比例,BFT只能在不超过三分之一的节点作恶的情况下保证准确,而且规模不适宜应用,这也就是为什么,应用最广的是PBFT(实用型BFT)的原因。目前针对共识后半段,也就是如何达成一致这一过程,许多机制都采用PoW或者PoS加PBFT的方式。
DAG
DAG是共识上脱链的一次尝试。利用有向无环图采取大多数一致,抛弃少数错误的方式来决定方向,但是应用没有前几种广泛,目前还在尝试中。
其他相关共识还有PoX,PoA,PoD,PoB,PoI等等利用各种不同方式达成一致的规则尝试。以后有机会将更细致的逐个分析。
参考文献
1 Luke Fortney/what is blockchain
https://www.investopedia.com/terms/b/blockchain.asp
2 what is PoA权威证明(PoA)与其他共识机制相比有何不同?
https://www.jianshu.com/p/58913d425032
3 卓一凡/简单介绍什么是区块链
http://baijiahao.baidu.com/s?id=1603347470881357088&wfr=spider&for=pc
4 Lidiya007/区块链中区块的构成详解
https://blog.csdn.net/lidiya007/article/details/83657672
]
위믹스3.0 최초의 DAO ‘원더다오’, 노드 카운슬 파트너 합류
위믹스3.0 최초의 DAO ‘원더다오’, 노드 카운슬 파트너 합류 l 탈중앙화 자율조직 형태로 결성…구성원 모두가 위믹스3.0 운영에 참여 가능l 스마트 컨트랙트 기반 모듈화 ...
[주간톡톡] 양의 탈을 쓴 늑대는 양일까? 늑대일까?
주간톡톡은 한주간의 블록체인 소식을 재구성해 독자들과 재미있게 이야기해보는 코너입니다. 이번주는 페이스북의 스테이블 코인 프로젝트 '디엠(Diem)'에 대해 알아보겠습니다. 그럼 ...
IBM, 블록체인 와인 추적 서비스 '빈어슈어(Assure)' 공개
IBM이 재배지부터 매장까지 와인 공급망을 추적할 수 있는 블록체인 기반 플랫폼을 공개했다.10일(현지시간) 발표에 따르면 IBM은 와인 모니터링 업체 e프로브넌스(eProven...