V神对于EOS能实现高并发的回复

V神最近在深圳讲座时的观点

  1. EOS是中心化应用,实际上只有100个加点参与,如果他们能实现去中心化并发,ETH也可以
  2. 使用DPOS只有100个节点参与验证,而且它们并没有merkle tree技术,所以这100个节点必然是算力很强的超级计算机。同时代理人节点容易被DDOS攻击

ERC注:

这回复很像3年前两人单挑的续集,只不过这会BM搞出了EOS,已经对ETH正面开战了

关于DPOS是中心化还是去中心化的观点很有意思,我比较认可的定义是Matthew Wampler-Doty提出了一个关于去中心化的有趣的定义:

判断一个协议是不是去中心化的,是看这个协议能不能在全部节点都永久性删除后,仅依靠一个节点仍然能够恢复过来正常运作。

这一项定义是深受生物学所启发的,就如同菌丝体借助一个单细胞就能恢复过来一样。这个观点十分的有意思,因为它引导我们注意到Tendermint是不如传统的区块链协议(比如说工作量证明协议、或者是PPC亦或是NXT中的权益证明协议)那么去中心化的。

BM挑战V神的相关内容

BM: 人人都在讨论以太坊,现在我已经收集累了很多关于以太坊的问题。正好在会议上,有机会向以太坊的主要开发者Vitalik提问。

BM提问 :(1)如何处理所有应用链集中建立在一条区块链上的问题,而你只关心区块链的名称、智能合约及博弈的问题。(2)为什么要处理纽约证交所的所有交易。

V: 我们能从几个不同的层来处理这个问题,可使你的去中心化应用整合到以太坊当中,第一层,是让整个数据库放进合约,同时能够在智能合约内体现计算。所以只要数据存在,计算也在里面。
第二层是让数据保持在链外,只是将默克尔根放到区块链上。假如你想要升级,合约能够自己询问新的默克尔树桥(merkle tree bridge)。

就像“div”能自己认证成“div”,这个想法能使数据在链外运行,计算则在链上进行。

第三种选择,是选择一些链外(off-chain)解决方案,但使用以太坊的脚本语言执行,信任交易和跨链交易同时可以以这些方式进行。

BM评论:我的第一个问题是关于以太坊的可扩展性,如何处理所有去中心化应用链集中建立在一条区块链上,而你只关心区块链的名称、智能合约和博弈的问题。为什么要处理纽约证交所的所有交易。

我不满意Vitalik的回答,因为他没有真正回答这个问题。具体来说,他提到了链外的数据存储方式,和默克尔树作为一种将数据保持链外存储,验证数据保持链上的一种方式,但问题是,你实际上不能做到这一点,将所有的数据都放在链外,即使不是存储在区块链中,只是merkel根在区块链中,数据仍然必须存在网络中的每个节点中,为了验证,区块链将不得不查询外部数据源,如果数据源错误或不可用,这将是不可持续、中心化的。那么将导致网络实际上不能被验证,第二种可能性是使用交叉链交易,这是我们推广使用的比特股(BitShares)是一样的,也是很多不同的区块链所用的,这个与比特币和莱特币的交易方式没有什么不同,而且真正的问题是为什么需要以太坊,如果你已经拥有所有这些不同的链,实际上,你并没有使用以太坊解决你的问题,我想你可以有多个克隆版的以太坊,每条链都做自己的事情,但另一个问题是为什么我要建在以太坊之上,如果实际上我并不是在同一个链上,毕竟在以太坊上,你必须做的计算将产生很多的开销,你必须把你的脚本存储在区块链当中,你必须将数据存储在区块链当中,不仅如此,每个计算和每个数据块都要收取交易费用,如果你将固定数量的带宽定义为一个去中心化的标准,在以太坊上的这些操作会更昂贵。所以在我看来,如果你想建立一个基于以太坊的去中心化应用程序,根本就没有理由使用以太坊,因为你将采用的是与Bitcoin跨链交易相同的方式进行交互。

BM提问:假如使用线下的脱链服务,如何让离开数据库的节点,验证智能合约是否执行正确,

V:假如是使用脱链服务(线下的数据),并不是每个人都能够看到单个的合约,所以当整个网络有不同级别的分离情况发生,但这个连接依然还是会形成,因为你可以使用以太坊的智能合约,这实际上就能使线下的数据能够在其他合约上流通执行,所以这个想法是成立的。
BM提问:另一个与工作量证明机制(POW)有关的问题,工作量证明机制在扩容经济方面看起来像中心化的,所以,无论谁垄断,最终仍由工作量证明机制控制这个网络。

V:这是很好的观点,我们正在研究两种独立的解决方案,一种方案是抵抗ASIC矿机的工作量证明算法,这种算法我们称之为“Dagger”算法,我们即将开始公开竞赛,做一些更有意义的研究,使用到工作量证明的算法当中,第二种则是权益证明(POS),权益证明(POS)与工作量证明(POW)相比更去中心化,我们会采取两种机制混合的策略,而工作量证明是能够允许CPU计算友好的挖矿模式。

BM评论:我问他的第二个问题是关于工作量证明机制,以及以太坊是如何使用基于安全模型的工作量证明机制,Vitalik回答说,他们可能会将工作量证明机制与权益证明机制混合起来使用,这种方法与我们将使用的方法非常类似,差异在于他们仍然试图专注于开发一个只兼容cpu的工作量证明机制, 或者一种新的让工作量证明可行的算法,但是这种并没什么用,和工作量证明机制没有太大关系,设想一下,如果它在一个cpu上工作,你最终拥有的大规模服务器集群和网络,将让你拥有大部分的哈希算力,没有什么可以让其停止的,它最终将被集中化、被控制,所以最重要的是你需要问自己,当你看这些证明的工作量或混合代币时,最重要的安全保障来自哪里。如果它来自工作量证明机制中,那么很有可能它最终将被中心化,你不能在任何形式的保障网络安全工作中采用工作量证明机制,这意味着你需要一个有100% POS机制的代币,但这个事情有一个关键点,在挖矿安全和挖矿共识之间存在差异性。当我提到挖矿共识时,我的意思是无论如何你必须决定谁创造下一个区块, 这可能是任何人,只要它不是所有人马上一起即可,如果你挖矿的唯一目的是确定下一个区块的创造者,而不是以任何形式保障安全,那么无论您是采用CPU的证明机制还是GPU的工作量证明机制都不重要。甚至使用具有工作量系统证明机制的ASIC完成。我们目前的做法是,我们对相应工作使用相同的动量,但不能保障网络安全,只是决定谁来生产下一个区块,比特股(BitShares)100%的安全性来自于它的权益证明机制,每一个区块都必须有一定的权益来保障出块,在没有和适量的权益证明的基础上,任何人都不可能产生一个新的区块,关于工作量证明机制和挖矿,很多人关注的另一个方面是代币或货币是如何发行的,这是一个糟糕的经济学例子,一个区块链应该尽量使拥有者的价值最大化,如果你付钱给人们去挖掘他的洞然后再填补它们,那么你以安全的名义付钱让人们给你做无意义的事情,降低你到整个货币供应量以免出现下列问题,他们目前的计划导致持续的通货膨胀必将存在,虽然随着时间的推移,它可能会不断下降,这表明安全是通过工作量证明机制在保障的,而不是仅仅使用工作量证明机制作为决定下一个出块者的手段。

ERC注:这还是2014年的事情,2014年以太坊刚完成ICO和几个早期POC,可以看出大神级别的人物看问题的超前性,看到了3年后的问题,不过也是现在EOS挑战ETH的发端,因为这些问题目前在ETH上的确爆发出来了。