第3节:以太坊POS
基础知识
- 出块时间固定,每隔12秒为一个slot;
- 每32个slot组成一个epoch(6.4分钟/epoch);
- 用户如果想要参与共识网络,需要先质押32个ETH,然后等待专门的交易将其加入验证者集合;
- 每个epoch之前,会通过VRF将验证者集合均匀的分配到32个slot中,每个slot中会随机的选出一个区块提议者。在每个slot中,提议者生成区块,分配到该slot的验证者子集对区块进行验证和投票;==(那将会产生32个区块??)== 如何收敛区块?
- 在POS模式之下,区块生成不再需要比拼算力,而是按照随机指派而来
区别
POW:概率确定性
POS:最终确定性
关键质押比
最终性延迟:33%
当攻击者控制的ETH超过了这个数量,那么其就有能力组织信标链最终确定,而无需精细的控制其他验证器的操作,这是因为最终确定信标链,必须有2/3质押的ETH证明检查点对。如果1/3被恶意控制(或未能证明),那么2/3的绝对多数就不可能存在,对此的防御措施是信标链的消极惩罚机制(Inactivity Leak)
消极惩罚标识了那些未能证明或证明与大多数人相反的验证器,这些非证明验证器拥有的质押ETH会逐步流失,直到最终他们的总数比例不到1/3,这样区块才能再次finalize。
双重最终性:50%
当恶意验证者控制达到50%比例的时候,他可以进行分叉。具体做法为:攻击者需要使用其全部的50%质押权益与诚实的验证器集进行相反的投票,从而维持两个分叉并防止最终确认性(34也可以做到,但是需要精确控制网络流量)。在四个epoch时期之后,两个分叉上的消极惩罚机制将激活。
因为每个分叉都会看到其一半的验证器无法证明。每个分叉都会惩罚验证集的另一半质押权益,最终导致两条链以代表2/3绝对多数不同验证器完成。
控制区块的过去&未来:66%
超过2/3时,攻击者可以任意的选择他们喜欢的分叉,最终确定它。作为绝对多数的质押着,攻击者将始终控制区块的内容,其拥有花费、回滚、再次话费的能力,他还能审查某些交易并随意重组区块链。
当出现双重最终性、最终性反转等情况时,就只能通过链下恢复了。例如theDAO攻击事件,最终到这ETH与ETC分叉。