『选股宝APP』Eth2信标链:你首先该知道的事(上)( 三 )


委员会简介委员会就是一组验证者 。 出于安全考虑 , 每一个时隙 , 在信标链和每一条分片链上 , 都会有一个委员会 , 由至少128位验证者组成 。 攻击者只有万亿分之一不到的几率 , 能控制一个委员会中2/3的验证者 。
信标链这个名字 , 正是来源于其公开提供随机数的功能(即“随机性信标”) 。 信标链会对一个叫做“RANDAO”的伪随机过程达成共识 。
『选股宝APP』Eth2信标链:你首先该知道的事(上)
文章图片
-在每一个时段 , 伪随机过程RANDAO都会选出所有时隙的提议者 , 并且混洗验证者到不同的委员会去-
验证者是由RANDAO以验证者的余额为权重选择出来的 。 一个验证者可能在一个时隙中同时又是提议者 , 又是委员会成员 , 但这并非常态 。 发生这种事情的概率是1/32 , 所以我们估计每个时段会看到一次 。 上面这个示意图描绘的是验证者数量少于8192个时的情形 , 不然一个时隙至少会有两个委员会 。
本文着重考察的信标链委员会:为信标链服务的验证者 。 一个信标链委员会会被随机分配到一个分片上 , 在一个信标链区块链上产生交联 。 而且委员会成员不是长期不变的 , 负责产生交联的委员会都是逐块逐块替换的 。
仅仅为分片链产生区块的委员会留待日后解释 。 分片链验证者可能在不与信标链交互的情况下产生许多信标链区块 , 但是 , 如果一个分片要跟其它分片通信 , 它就需要信标链委员会把分片区块交联到一个信标链区块上 。
『选股宝APP』Eth2信标链:你首先该知道的事(上)
文章图片
-协议假设验证者总是给自己认为是区块链顶端的区块投票-上面这个图片综合了三个时隙内产生的情况 。 在时隙1 , 有验证者提议了一个区块 , 并且该块得到了两个验证者的见证;委员会A中的一个验证者离线了 。 在时隙2 , 又有人提议了一个区块 , 而委员会B里面的一个验证者没有看到 , 所以其见证消息表示TA认为信标链的顶端(最新区块)仍然是时隙1处产生的区块 。 注意 , 这个验证者跟时隙1时的离线验证者不是同一个 。 对信标链顶端区块的投票称作“LMDGHOST投票” 。 在时隙3 , 委员会C中的所有验证者都运行LMDGHOST分叉选择规则 , 并独立地投票同一个区块为信标链顶端 。
一个验证者在一个时段中只会参加一个委员会 。 一般来说 , 系统中的验证者会超过8192个 , 所以每个时隙会有多于一个委员会 。 委员会的规模都是一样大的 , 都至少有128个验证者 。 当系统中的验证者少于4096个时 , 安全性就会下降 , 因为委员会的规模将少于128个验证者 。
委员会:关键在每个时段 , 验证者们被均匀地分配到时隙中 , 然后进一步分配到同等规模的各委员会中 。 所有验证者都要在自己所在的时隙出发出见证消息 , 指出信标链的顶端 。 每个委员会都要在自己所在的时隙尝试交联到特定的某个分片 。 混洗算法会增减委员会的数量 , 以保证每个委员会都至少有128名验证者 。举个例子 , 假设有16384名验证者 。 其中512名验证者被伪随机地分配到时隙1 , 另外512个被分配到时隙2 , 等等 。 时隙1的512个验证者被进一步切分成4个委员会 。 所有512个验证者都要在时隙1处发起LMDGHOST投票;其中一个委员会的128名验证者尝试交联到分片33;另一个委员会的128名验证者尝试交联到分配55;另外两个委员会则尝试交联到分片22和分片11 。
在时隙2 , 这个过程会重复一遍 。 512名验证者一样被划分成4个委员会 。 假定他们被分配到的分片为41、20、17、15 。 所有的512个验证者都要在时隙2处为信标链的顶端投票;这几个委员会也会尝试为分片41、20、17、15提出交联 。
这个过程也会在该时段剩下的时隙中一一重复 。 每个验证者都会有所在的时隙 , 在那个时隙TA就可以发声、提出见证消息、产生交联 。 等到时段结束之时 , 所有16384名验证者都已享受过发起投票和交联的机会 。


推荐阅读