几乎所有公链项目的区块产生和共识的过程都可以抽象为两个步骤:
- 选择出区块生产者,生成新区块
- 其他节点对新区块达成共识
以上步骤周而复始,最终形成一条「不可篡改」的区块链。
整个共识过程虽然简单,但在实际实现中,必须解决几个关键问题:
- 如何选择区块生产者,且保证公平和不可被预测?
- 如何对新区块达成共识?
- 如何避免分叉?
- 如何提高安全性?
- 如何扩展到更大规模的用户?
比特币采用哈希函数的随机性来确保公平,采用工作量证明(PoW)达成共识,同时能够在一定程度上抵抗算力攻击。然而比特币仍然面临上述消耗计算资源、确认时间长、易分叉以及扩展性差等问题。以 Qtum 为代表的采用纯权益证明(PoS)共识机制的项目,同样采用了哈希函数,并且不需要消耗大量的计算资源,然而仍然面临易分叉、安全性及扩展性的问题。
Algorand 提出了一种新的共识机制解决上述 5 个问题。
2.1 基础知识
正式介绍 Algorand 共识协议之前,本文假设读者基本了解以下名词的含义:
- 哈希函数(Hash)
- 公钥 / 私钥
- 数字签名
- 交易
- 区块
- 账本
- 共识
- 拜占庭协议(Byzantine Agreement,BA)
- 诚实节点
- 攻击节点
- P2P 通信
如果读者对上述概念不理解,请先搜索相关关键词进一步了解,再阅读以下内容。
版权申明:本内容来自于互联网,属第三方汇集推荐平台。本文的版权归原作者所有,文章言论不代表链门户的观点,链门户不承担任何法律责任。如有侵权请联系QQ:3341927519进行反馈。