本课时我们主要讲解“共识问题:区块链如何确认记账权?”
区块链可以说是最近几年最热的技术领域之一,区块链起源于中本聪的比特币,作为比特币的底层技术,本质上是一个去中心化的数据库,其特点是 去中心化、 公开透明,作为分布式账本技术,每个节点都可以参与数据库的记录。
区块链是一个注重安全和可信度胜过效率的一项技术,如果说互联网技术解决的是通讯问题,区块链技术解决的则是信任问题。
今天我们关注区块链中的核心问题:作为分布式账本,每个参与者都维护了一份数据,那么如何确认记账权,最终的账本以谁为准呢?
区块链的共识
区块链是一种去中心化的分布式账本系统,区块链的共识问题实际上是来源于分布式系统的一致性问题。
共识(Consensus)故名思义,共同的认识,共识问题研究的是多个成员如何达成一致,典型的比如投票选举。
共识机制在区块链中扮演着核心的地位,共识机制决定了谁有记账的权利,以及记账权利的选择过程和理由。不同的虚拟货币采用共识机制也不同,常见的共识机制有 POW、POS、DPOS等。
我们前面提到 CAP 中的 C 是 Consistency(一致性) ,Consistency 和 Consensus 有什么区别呢?
Consistency 侧重的是内容在时间顺序上的一致和统一,而 Consensus 则是指由许多参与者对某项内容达成共识,所以一般把 Consistency 翻译为“一致性”,把 Consensus 翻译为“共识”。
拜占庭将军问题
前面的课程中我们已经分享了几个经典的一致性算法,如果把共识机制延伸到分布式系统中,就是系统需要有一个主进程来协调,系统的所有决定都由主进程来达成一致性。
到了区块链中,由于区块链是一种去中心化的分布式系统,所以区块链中是没有类似于团队里的领导,以及分布式系统中的 master 角色,这样就需要有某种共识机制,以便保证系统一致性。
一般在网络通信中,把节点故障,也就是信道不可靠的情况称为“非拜占庭错误”,恶意响应,也就是系统被攻击,传递错误消息称为“拜占庭错误”。
为什么叫拜占庭错误呢?实际上是来自于一个故事模型:文章来源:https://www.toymoban.com/news/detail-774152.html
拜占庭帝国就是中世纪的土耳其帝国,拥有巨大的财富,周围 10 个邻邦垂诞已久,但拜占庭高墙耸立,固若金汤,没有一个单独的邻邦能够成功入侵。任何单个邻邦入侵都会失败,同时也有可能自身被其他 9 个邻邦入侵。
文章来源地址https://www.toymoban.com/news/detail-774152.html
到了这里,关于分布式技术原理与实战45讲--05 第05讲:共识问题:区块链如何确认记账权?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!