LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 区块链资产 > 通过我给咕噜文章点赞的故事,谈谈以太坊的RANDAO +VDF原理

通过我给咕噜文章点赞的故事,谈谈以太坊的RANDAO +VDF原理

2020-04-26 旋舞之风 来源:区块链网络

友情提示:

亲爱的币友们,

感谢您对旋风的支持!

为了双方收益最大化,

请最少阅读180s再点赞!

请最少阅读180s再点赞!

请最少阅读180s再点赞!


昨天文章我们讲到分片技术解决了ETH的扩容和交易量问题,但这样的分片设计有一个很显而易见的安全问题。

一、分片技术的弊端

ETH的分片设计存在一个跟大的弊端,那就是:

ETH总算力被分成64份放到不同的片里,那每一个分片里都要面临51%算力攻击!

相当于你分多少片,你的安全风险就扩大多少倍!

针对这个问题,我们又提出了交易随机性的方案,使用RANDAO提供随机数,以实现验证交易的随机性,从而解决ETH分层后安全性下降的问题。

二、RANDAO随机验证1.用人话来描述随机验证

一群人中的每个人都独自提出一个随机数,再把所有人的随机数合在一起生成最后被使用的那个随机数。

因为任何人都难以知道其他人提供的数字,也就难以预知合起来的最终数字。

不过RANDAO模型有个缺陷,就是提供最后一个数字的人是有机会作弊的:他知晓前边所有人提供的随机数之和,也就能通过调整自己提供的数字使得最终结果对自已有利。

为解决这一问题,以太坊引入了VDF(可验证延迟函数)。

它的作用很简单,就是让最后一个提供随机数的人无法在自己提供数字之前算出之前所有人的随机数之和,因而也就无法操纵随机数

2.通过给咕噜文章点赞的例子来讲讲随机验证

我在BTC币吧点赞了咕噜近期写的文章,币乎确认我和咕噜的账号信息、持仓信息,然后根据文章阅读、点赞、评论数量,最终确定并奖励两人的key。

假如,币乎选择10个人来确认和验证这次交易。分片之前(币吧未上线之前),需要验证所有交易,但现在只需验证在BTC币吧内的我和咕噜2个人,就可以完成这项工作。

不过,这样一来,我就可以攻击这两个验证者从而篡改这次的交易,而不需要攻击十个人,所以我的攻击成本降低80%。

那么,这个问题该如何解决呢?

于是,我们在币乎采用了随机分配验证者的方法,让我即使想要对交易进行攻击,也无法确认到底是哪两个验证者?

以太坊的RANDO模型就是让这10个验证者每个人随机写一个数字,按照顺利排列后,按照这一串随机数字来选择特定的两个验证者来验证本片区的本次交易。

这样一来,上述问题就被解决了。但是,又出现了一个问题:

因为这10个人的随机数字肯定是会根据一定的顺序排列的,因此最后一个验证者就会知道其他人的数字,那这个验证者会通过调整自己的数字从而达到控制这一次验证。

于是,我们引入了VDF(可验证延迟函数)来解决这个新的问题!

VDF是延迟函数,就能保证最后一个验证者在自己提出随机数字之前无法算出之前9个人的随机数之和。也就无法操纵此次交易了。

三、可验证延迟函数VDF

可验证延迟函数VDF的概念是斯坦福大学计算机科学和电子工程教授、计算机安全实验室联合主任Dan Boneh在Crypto 2018大会发布的《Verifiable Delay Functions》论文中首次提出。

这个函数算是比较复杂的数学函数了,我们就不做深入讲解了。

下面,主要谈谈关于无状态客户端解决验证者掌握被验证者信息过多的问题。

四、无状态客户端=币乎币吧吧主

根据VDF设定。现在我点赞咕噜的文章,就不会害怕有人来破坏这一次交易了。难度起码比以前高了很多。ETH分片所造成的安全性降低也得到了解决。

不知道有没有同学发现ETH这个设定中还有一个不那么显而易见的问题?

币乎的这10个验证者被随机分配到不同的币吧里验证每一个点赞和阅读的真实性并确定奖励多少KEY。

如果这些验证者一会去BTC吧,一会去EOS吧。过不了多久,他们又会回到原来1.0时代了!

因为经过几次被分配然后验证后,这些验证者手里又要保持所有币吧所有作者和读者信息了,那不就相当于没有分片了吗?

交易验证仍然会拥堵不堪!

为解决这个问题,以太坊提出了一个重要的新设计:无状态客户端。

简单的理解就是,每个分片的数据信息就放在本片区由中继者(即状态提供者,相当于CKB币吧管理员一休哥等角色)负责保管这些数据信息。

验证者手中不需要持有任何数据信息,只负责在不同分片间跑来跑去验证每项交易即可!

(全文完)


—-

编译者/作者:旋舞之风

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...