区块链共识协议综述*
2021-03-06窦文生郭凯文张凤军
软件学报 2021年2期
关键词:机制
夏 清 ,窦文生 ,郭凯文 ,梁 赓 ,左 春 ,张凤军,2
1(区块链技术与应用联合实验室(中国科学院 软件研究所),北京 100190)
2(计算机科学国家重点实验室(中国科学院 软件研究所),北京 100190)
3(中国科学院 软件研究所 可信计算与信息保障实验室,北京 100190)
4(中国科学院大学,北京 100049)
5(中科软科技股份有限公司,北京 100190)
自2009 年比特币[1,2]系统出现以来,其底层区块链技术逐渐受到来自学术界和产业界的关注,并获得快速的发展.当前,区块链技术已经得到广泛使用.例如,基于数字货币的跨境支付作为区块链技术的一大应用场景,近年来已经广为人知并开始被商家接受[3];一系列基于区块链技术的金融服务[4,5]、供应链技术[5,6]、政府治理[7]、游戏服务[8]等已经出现并获得成功运用.
区块链作为一种链式数据结构,由不断增长的区块利用哈希指针前后链接而成.区块链中的数据只能追加、不可删除或篡改.区块链系统是一个典型的分布式系统,其中每个节点维护一份本地区块链数据备份.在区块链系统中,区块链共识协议制定了一组每个节点必须遵守的规则,最终保证分布式系统中各节点区块链数据备份的一致性.
区块链共识协议分为两个主要步骤:出块节点选举和主链共识.在出块节点选举阶段,某个节点(或多个节点)成为出块节点,提出新区块.由于分布式网络中可能存在的恶意节点及分叉块的影响,其他节点在收到新区块以后不能直接将其加入自己的本地区块链中……
登录APP查看全文
