时间:2023-03-03|浏览:313
用戶喜愛的交易所
已有账号登陆后会弹出下载
在确定了采用这些关键障碍之后,Pi核心团队着手寻找一种方法,该方法将允许日常人们进行挖掘(或通过在分布式交易记录中验证交易来获得加密货币奖励)。回顾一下,维护事务的分布式记录所引起的主要挑战之一是确保对此公开记录的更新不会是欺诈性的。尽管比特币更新其记录的过程得到了证明(燃烧能量/金钱以证明可信赖性),但它对用户(或星球!)并不十分友好。对于Pi,我们引入了采用共识算法的附加设计要求,该算法也非常易于用户使用,并且理想情况下可以在个人计算机和移动电话上进行挖掘。
在比较现有的共识算法(将交易记录到分布式账本中的过程)时,恒星共识协议成为支持用户友好,移动优先挖掘的主要候选者。恒星共识协议(SCP)由斯坦福大学计算机科学教授DavidMazières设计,他也是恒星发展基金会的首席科学家。SCP使用一种称为联合拜占庭协议的新颖机制来确保对分布式分类帐的更新是准确且可信赖的。SCP还通过从2015年开始运行的Stellar区块链进行了实践部署。
共识算法的简化介绍
在介绍Pi共识算法之前,先对共识算法对区块链的作用以及当今的区块链协议通常使用的共识算法的类型(例如比特币和SCP)进行简单的解释是有帮助的。为了清楚起见,本节以过分简化的方式显式编写,并且不完整。要获得更高的准确性,请参见下面的“ 适应SCP ”部分,并阅读恒星共识协议文件。
区块链是一种容错的分布式系统,旨在完全订购交易区块列表。容错分布式系统是计算机科学领域,已经研究了数十年。它们之所以称为分布式系统,是因为它们没有集中式服务器,而是由分散的计算机列表(称为节点或对等方)组成,这些计算机列表需要就块的内容和总顺序达成共识。它们也被称为容错的,因为它们可以容忍系统中一定程度的故障节点(例如,多达33%的节点可能有故障,并且整个系统继续正常运行)。
共识算法分为两大类:选举一个节点为产生下一个区块的领导者的算法,以及没有显式领导者但所有节点通过交换票数达成共识的下一区块的共识算法。互相发送计算机消息。(严格来说,最后一句包含多个错误,但这有助于我们解释广泛的笔画。)
比特币使用第一类共识算法:所有比特币节点在解决密码难题时都在相互竞争。因为是随机找到解决方案,所以本质上首先找到解决方案的节点会被选为产生下一个区块的回合负责人。该算法称为“工作量证明”,会导致大量能源消耗。
恒星共识协议的简化介绍
Pi使用其他类型的共识算法,并且基于恒星共识协议(SCP)和称为联邦拜占庭协议(FBA)的算法。这样的算法没有浪费能量,但是它们需要交换许多网络消息,以便节点就下一个块应该是什么达成“共识”。每个节点都可以基于密码签名和交易历史记录,独立确定交易是否有效,例如进行转移和重复消费的权限。但是,为了使计算机网络就在一个区块中记录哪些交易以及这些交易和区块的顺序达成一致,它们需要相互发送消息并进行多轮投票才能达成共识。直观地说,建议我们所有人都投票赞成将其作为下一个区块”。“我投票将A区作为下一个区”;“我确认我信任的大多数节点也投票赞成区块A”,共识算法使该节点能够得出以下结论:“ A是下一个区块;并且除了A以外没有其他块可以作为下一个块”;尽管上述投票步骤似乎很多,但互联网速度足够快且这些消息是轻量级的,因此,这种共识算法比比特币的工作量证明更轻便。这种算法的一个主要代表称为拜占庭容错(BFT)。如今,一些顶级区块链基于BFT的变体,例如NEO和Ripple。
对BFT的一个主要批评是它有一个集中点:由于涉及投票,因此参与投票“仲裁”的节点集由系统的创建者在开始时集中确定。FBA的贡献在于,每个节点设置自己的“仲裁切片”,而不是由一个中央确定的仲裁,从而形成不同的仲裁。新节点可以以分散的方式加入网络:它们声明自己信任的节点并说服其他节点信任它们,但是不必说服任何中央权威。
SCP是FBA的一个实例。SCP节点不像比特币的工作量证明共识算法那样消耗能量,而是通过保证网络中的其他节点可信任来保护共享记录。网络中的每个节点都建立一个仲裁切片,其中包括网络中其他他们认为可信任的节点。仲裁是基于其成员仲裁切片形成的,并且验证器仅在且仅当仲裁中一定比例的节点也将接受事务时才接受新事务。当整个网络上的验证器构造其法定人数时,这些法定人数将帮助节点达成有关事务的共识,并保证安全性。您可以观看7分钟的简短说明视频或查看此内容,以了解有关恒星共识协议的更多信息SCP的技术摘要。