本文是EOS Alliance(EOS联盟)临时执行主席Thomas Cox对Whiteblock关于「EOS不是区块链」的研究论文的反击。
本文翻译自:https://medium.com/@thomas.cox_39839/yes-eos-is-a-blockchain-a5921e5497d5
在EOS联盟,我们很高兴被激怒、刺激和挑战。用Nassim Taleb的书来说,因为我们是「反脆弱的」。作为一个社区,一项技术和平台,EOS将会从这种刺激中变得更强大。我们刚刚被Whiteblock上周发布具有挑衅性的文件所刺激到。
一个不起眼的建议
Whiteblock收集了一份齐全的以太坊资源列表来完成论文。但他们只招募了以太坊的人员来参与该项目。这看起来像是一个错误。
研究人员不仅没有与任何EOS代码库密切相关的人开展合作,他们也没有与任何有能力指出错误的人一起审查他们的初步调查结果。
因此,他们的论文包含许多错误,其中有一些非常基本的常识性错误(例如他们将EOS的「epoch」定义为126个块;自启动之前已经有252个),这使得该报告可能会使不熟悉区块链复杂技术的读者感到困惑。
虽然EOS社区完全理解和评估了Whiteblock论文(论文链接),但一些误解我们将会马上澄清,以便大家能够进行更深思熟虑的讨论和分析。
吞吐量的大小
Whiteblock确信EOS基于他们的实验室测试和假设,“系统中的交易吞吐量不超过250TPS”,并断言“在具有真实世界条件的测中……性能将降至50TPS以下”。
就像虚构的空气动力学专家“证明”大黄蜂无法飞行一样,Whiteblock研究人员可能希望听取每个新兴科学家的建议:“当事实与你的理论相矛盾时,你需要一个新的理论。”(意思其实就是说Whiteblock不看事实变现,表达的观点是虚构的。)你看,EOS和其他基于石墨烯的区块链通常在实际日常生产操作中表现出接近4,000 TPS的性能。(我谦卑地认为’现实世界’必须是比’真实世界条件的测试’更真实。)
查看这个blocktivity.info报告(上次数据更新到2018-11-05 / 03:30:01)。注意比特币在哪里(第5位)。请注意以太坊的位置(第6位)。这是区块链的实际用户量榜单,不仅仅是在谈论区块链的数量,也不只是推销区块链或者对区块链进行投资的人数。(而是)使用它(的人数)。
使用率排名前四的(可以说是使用最频繁的)区块链有以下共同点:
1.它们都不约而同地使用了石墨烯(Graphene)代码。排名第二的是EOS,排名第一的是EOS的分支。它们都是石墨烯的分叉,因此所有都是EOS创始人Dan Larimer的直接或间接创作。
2.他们都有真正的商业用例,原来是注意力的变现,现在交易的提升。
3.他们都不是来自财富榜1000强的公司或政府。
EOS是区块链吗?就和比特币一样,都是区块链
作者声称EOS“不是区块链”,并通过将区块链的一般定义与以太坊某些特定的特征来混淆,从而证明自己陈述的合理性。EOS核心开发wanderingbort,对”所有这些行为都在缺乏合约和交易的密码验证环境中运行” 的论述回应道:
“…的误导,唯一可以成立的方面是EOSIO不会通过类似Patricia 默克尔树的技术承诺物化的持久状态。“
“这是事实,但我们是以不同的方式来呈现这种隐含的状态。值得注意的是,UXTO [未花费的交易输出]也没有明确地在比特币中呈现,它是由链来确切地隐含状态的物化视图。如果你搜索UXTO的承诺,您会发现它们是一项核心协议的补充,来提供额外的属性。但他们不是有效性和安全性承诺。EOSIO也是相同的。因此,如果这是可以成立的定义,那么比特币也没有使用加密技术来验证交易和结果。“
wanderingbort所说的是,以太坊在如何将交易提交到“隐含状态”(即链上数据的当前现实)方面存在差异。比特币和EOS都不像以太坊那样做。(我很奇怪有多少不是以太坊克隆的项目使用以太坊方法将交易提交到链的物化持久状态。)而Whiteblock希望利用这种差异来声称“EOS不是区块链” - (我只能说这是)他们的私人定义。
如果Whiteblock想宣称以太坊才是区块链,而比特币和EOS都不是,那么我们欢迎这个讨论。如果没有这么想的话,那么无论站在任何一个有意义的定义上,Whiteblock都将会公开承认EOS确实是一个区块链。
我建议如果分布式账本符合这些标准,则应该称为区块链:
1.当记录越来越多时,自动分组为区块
2.使用加密技术链接区块
3.每个区块包含前一个区块的加密哈希,时间戳和交易数据
4.交易和区块由多个独立设备验证,这些设备通过共识机制达成一致意见。
如果我没达到哪一项标准,请向我提出质疑。如果我同意您的意见,我会在你的同意下更新这篇文章。
事务是否仅由21个节点验证?
作者似乎还声称EOS的交易仅由21个区块生产者确认。他们似乎没有意识到:交易作为股权证明(TaPOS)的功能和含义,这可是EOS软件的核心功能。正如用户Fuzzy所解释的:
EOS.IO软件要求每个交易都包含最近区块头部的部分哈希值。此哈希值有两个目的:
*防止在不包括引用块的分支上重放交易;
*在特定的分支,向一些特定用户及其利益的网络发出信号。
随着时间的推移,所有用户最终都会直接确认区块链,这使得[无法“重放”他们的交易]来构建伪造链,因为伪造链无法从合法链中迁移交易。
这是因为交易作为股权证明(tapos)
它使每个客户端都有助于验证区块
换句话说,每个用户的交易是以包含最近的不可逆区块哈希作为加密方式的,这将是作为本地节点的标识。 这将是本地节点同意区块有效的方式(每个本地节点独立验证每个交易)。因此,交易(A)不能用于对不包不可逆区块的分叉进行重放攻击的,并且从该本地节点的角度来看(B)表示所引用的区块实际上是有效且不可逆的。这是唯一可能的,因为本地节点在将每个区块添加到本地链时,将会验证每个区块,未来交易的TAPOS将这些本地验证合并到链中。
这巧妙地反驳了作者的另一个论述,即用户只能通过前21个区块生产者之一来访问EOS主网。实际上,用户可以通过任何连接的API或对等节点来访问主网,可以通过BP,也可以不通过BP。
领取专属 10元无门槛券
私享最新 技术干货