https://steemit.com/eos/@dan/casper-as-an-eos-contract
鉴于与维塔利克·巴特林(Vitalik Buterin)正在进行的讨论,我最近审查了最新的卡斯珀研究报告(Casper Research Paper)。我的意图是尽可能客观实用,同时认识到所有更大的因素。
在我的研究中已经变得非常清楚的一件事是,由于语言精度的普遍缺乏,各种共识阵营一直在交谈。为了清楚起见,我将尝试使用Casper论文中发现的语言和术语。
问题的两个部分
Casper协议有两个部分,提案机制和共识机制。提案机制产生链接在一起的块序列,共识机制每100个块创建一个检查点。
在混合型工作模式下,艾舍利埃将使用POW块作为提案机制,并将Casper算法在检查点上达成共识。
提案机制故意抽象;这可以是一个独裁者,它可以是协商一致的参与者之间的循环方案,或者像我们这样的混合卡斯珀,它将是工作链的原始证明。
鉴于提案制度是抽象的,将其替换为DPOS是微不足道的。换句话说,Ethereum使用POW,我们可以使用DPOS。请注意,使用POW与casper确实需要将“最长链”中的“叉选择规则”更改为首先考虑到Casper的新规则,并且仅使用最长链规则来打破联系。
Casper协议消息
由于“卡斯珀”文章故意抽取提案机制,其初步提案机制将是工作证明,我不知道任何提出的替代提案机制,我们可以直接跳过卡斯帕的共识机制。
卡斯珀首先是基于数学和博弈理论的协议。该协议试图奖励那些同意惩罚那些不同意的人。如果观察到恶作剧的某些客观措施,它也有惩罚所有参与者的财产。
在Casper协议中,有一组验证器,并且所有验证器都期望每个时代发送两个消息:PREPARE和COMMIT在它们的时代链中的首选最后一个块。建议的时代是100块;在Ethereum下,一个时代是1500秒,在DPOS下,它将是300秒。
所需的带宽随着参与验证器的数量而增加N阶,并以牺牲其他交易的潜在带宽为代价。正是因为这个原因,一个纪元是100块而不是1块。
Casper作为EOS应用程序
有了这个基本的了解,EOS社区可以选择采用Casper作为一种合同来增加对它们的封锁感知的安全性。参与的奖励可以由利益攸关方选出的3个社区福利申请中的一个提供资金。授权的股权证明目前使用最长链规则。
所有这一切都可以实现,而无需实际更改EOS协议,或者至多调整fork选择规则来解释来自Casper验证器的信息。然而,鉴于DPOS几乎完全没有叉,这似乎是不必要的。
提案机制的重要性
提案机制确定哪些事务包含在块中以及哪些事务被检查。它还确定了可用于casper共识过程的一组块。
提案机制控制协议的以下几个方面:
什么时候产生块
谁生产它
包括什么交易
潜在的谁获得费用
硬叉采用时
执行了什么软叉
短期交易确认的速度
短期叉的概率
这意味着提案过程是决定集中制作和审查制度的一个方面。关闭提案过程会关闭网络,因为Casper Consensus进程取决于生成块的有效来源。所有Casper提供的是每30分钟(Eth POW混合动力)或5分钟(DPOS混合动力)的最终的经济措施。
我们可以从中得出结论,绝大多数真正的共识问题属于提案机制的责任范围。我们也可以看到,Casper并没有提高性能。最后,由于在30分钟的战俘中埋葬了一个Etherey Block,所以逆转的概率很小,“casper保险”的相对成本可能远远超过所涉及的实际风险。
我的建议提案机制
如果我们允许任何人随时提出任何建议,那么Casper验证器可能会因为不知道哪些块签署PREPARE消息而达成僵局。合作验证者有兴趣达成共识。
Casper验证器可能对于死锁问题是明智的,并同意“轮流”发送PREPARE消息。以这种方式,验证器总是为已经具有最多PREPARE消息的有效块发送PREPARE。