以太坊上的分片Casper验证系统到底是怎么确保安全性的?
本文由币车HIT(biche.yaofache.com)大V养成计划支持
昨天简述了以太坊上的分片缘由和技术概念,接着今天讲述一下分片系统中的验证系统,这是对分片系统安全性考验的核心设计地方。
背景
在设计权益证明的共识机制上,一直存在着一个最大的问题,如何选择出让整个系统确保安全的超级节点来提升区块链共识效率?
其中最重要的问题是,如何确保区块不会被恶意切换?
考虑一个场景:
图来源:https://ethfans.org/posts/ethereum-casper
当原有区块链是在蓝色的链上工作的,但未来生成的第51个区块如何保证不切换到红色区块上,保持在原来的蓝色链上。其中红色就意味着恶意篡改原有信息后所生成了一条新链。因为区块链是交易记录数据的一条主链,因此一旦你恶意篡改,也就意味新生成的区块就是脱离原有的蓝色区块链。
原有传统的区块链就是利用人人参与验证的方式来保证作恶的成本是控制51%的算力来实施达成的,但是效率十分低。而且电费等维护成本十分高。
那么切换到分片系统上,就是将主链生成多个子链,每个子链负责自己的交易达成,最后由一个验证节点来负责上链。这时候,分片内部实现了去中心化,而上区块链的共识达成是需要主链对验证节点的考证,只要考证通过,那么子链生成的区块即可上主链。但是,如何确保这个验证节点呢?
Casper的工作流程
1)质押代币:
Casper是验证系统,验证者需要押下一定比例的以太坊作为担保金。因此,验证者要加入casper节点时都要质自己的代币作为作恶成本。
质押代币的就类似在银行存款似的,需要使用自己的公钥作为签名。同时还需要提供取款地址,为后续获取奖励时提供的。
2)等待加入:
质押代币之后,验证节点不是立刻就能加入的,这个过程还需要等待一天左右的时间等待加入,这个过程需要主链根据协议来确定,但是目前协议还没确定。
3)进入验证:
一旦被主链确认可以进入验证环节了,那么这个验证节点就能对这个区块最后作为担保的。
验证者有两个事情需要做。首先第一个事是,要确定好主链的区块,这个是需要多个验证者确定。意味着验证者之间能提供监督作用,一个验证者提交的区块,想要上主链,需要获得多个验证者同意。然后第二个事,就是验证者需要去检查自己负责的分片区块,也就是子链。验证者需要对子链的交易结果做验证,只有得到安全靠谱的计算结果才将区块上主链。
4)验证奖惩:
对验证者有一定奖惩,才能激励其起到正向的验证效果,而惩罚才能对作恶的节点进行限制。
当验证者将自己负责的区块验证后,将它送上主链,在加到主链时,他们质押的代币就是一种赌注。如果这个区块经过主链上各个验证节点的同意,顺利加到主链上,那么这个验证者将获得与他的赌注成比例的奖励。但是,如果这个验证者是利用作恶的手段,试图做一些“无利害关系”的事,那么,不好意思,这个验证者质押的代币将会被扣除没收。
奖惩机制确保了网络的安全性
很明显,这个奖惩机制设计得非常拜占庭容错了。
任何人,如果你尝试利用作恶的手段,或者说是拜占庭叛徒的办法来执行验证,那么就会受到惩罚,失去他们的赌注。这个是与其他权益证明协议不一样的地方。因此,很精彩,这个机制可以看到了对赌协议在机制上起到了正面效果。
这意味着,每个想去竞争验证者的人,都必须小心翼翼的工作。既然正面不作恶,好好验证,把交易记录查好账,我能得到奖励,但反过来,如果作恶被发现,那验证者却会被没收了收益,很显然,验证者是不会作恶的。
Casper系统设计得非常好,懂得人性里的贪,只要你的奖励高于作恶的成本,那么这个系统就能确保了验证节点的不作恶了。
佣兵相关文章:
通证经济:
项目分析:
EOS项目:
投资相关:
区块链科普:
币乎:https://bihu.com/people/692