原文地址:https://medium.com/eosio/bios-boot-eosio-blockchain-2b58b8a978a1
译者: 大鼎
校对:怪阿姨
声明:未经许可,不得转载(已授权@eosgroup,hi区块链
EOS社区内的讨论使我相信,EOS软件的启动顺序可能为以下我本着社区共识所述说的内容。(这篇文章不构成任何承诺,也没有暗示任何新功能。)
阶段0:预启动 (Pre-Boot)
- 在Go-Live之前,区块生产者社区将从志愿者中选择最精通技术的来确定Go-Live Poo成员。建议的目标成员数为50。
- 在上线之前,Pool会使用一种可信的随机的方法(*)来选择他们中的22名成员来创建Go-Live 团队。然后,他们共同建立高度安全的,能互相连接的VPN,用以帮助抵御DDOS和其他攻击。他们将会公
布其成员名单,但不是立即公布。
- EOS代币发放期至2018年6月2日22:00为止。介时,EOS ERC-20代币将被冻结,同时将做一个基于区块链的包含EOS起始余额的快照。
- 一旦起始余额的快照由Go-Live Team的22个成员(他们对外公布用于外部验证)中的15个进行验证并确认后,他们再次使用可信的随机方法来选择其中一个成员作为BIOS Boot节点。该成员会生成的新EOS密钥对,此密钥对仅用于BIOS启动过程。
阶段1:BIOS 启动
- 这个BIOS 启动节点用来获取软件分发过程中提供的创世区块并引导这条链:
- 创建第一个新区块;
- 通过系统帐户安装核心操作合约引导BIOS启动,该系统帐户使用新创建的EOS密钥对;
- 安装由初次选举产生的21名区块生产者(ABPs)名单。这份名单可有由Go-Live Team的21名其他的非BIOS启动节点成员组成;
- BIOS Boot节点仅将所需的系统权限分配给由初次选举产生的21位ABP。
- 最后,他从所有系统权限中删除了自己的密钥。BIOS Boot节点随后公布他的BIOS引导私钥(此时已经无用),以便其他人可以审计和重新创建他
的工作。
阶段2:ABPs
- ABPs连接并验证该链的系统帐户和余额的初始设置,然后开始出块。此时BIOS Boot节点开始退出并返回到BP候选池。(直到被选举的节点经过 10轮的区块生产之后,BIOS Boot 节点才有资格参加选举。)单个节点总运行时间:小于9秒。一旦21个ABPs确定并运行同一条链,参与者就可以连接。
- Go-LivePool的其余成员可以连接并举荐自己为候选的区块生产者。
- 代币持有者在选举中可以连接和抵押代币投票选举块生产者。
- ABPs的唯一工作是举行选举,但是他们没有选举资格,正如BIOS BP一样。他们可以暂时由21个当选区块生产者(EBPs)代替。这样选举需要将21个EBPs构成一个单独的组,以切换到现在完整的运行链,并且需要几轮才能组织为Go-Live Pool中剩余的BP进行连接。其他BP候选人也可以连接并将自己置于运行中。(ABP,如BIOS Boot BP,在21个EBP成功完成10次区块生产之前,不能参加竞选)。
阶段3:当选区块生产者
- EBP开始处理“正常”交易,并持续进行每轮的BP选举,这是区块链最重要的一部分。在10轮之后,一个EBP可以被以前的ABP或以前的BIOS BP或任何新的竞争者所取代,预计在选民投出选票头几个小时和几天内会有一些动荡。
阶段4:#0宪法
在这个阶段,我们进入了一个新的阶段 – 更换默认编号#0的宪法。这个阶段持续更长时间:
- 在这个阶段,任何代币权益持有者都可以在任意时刻,提出拟议的宪法来替换默认的宪法。
- 根据当时的软件算法,每个提议的“宪法”均可由代币权益持有者投票决定。
- 当以下条件满足时,宪法#0成为宪法#1:
- 拥有多数持有者票数(超过50%活跃账户持有者)并持续15天,
- 处于30天的领先地位。
阶段5:验证
在验证之前,不能在账户之间转移代币,也没有出块奖励。当以下情况是验证生效
- 占总EOS代币余额15%或更多的帐户可连接到网络并执行有效的交易。
- 当宪法升级为#1。
(*)可信的随机选举方法将稍后发布以供审核。