首批拥有虚拟化身,即可以早期访问 Decentraland。
X
你好,请选择
语言
关闭

在不牺牲安全性的情况下,如何构建一个能够支持越来越多的用户的去中心化的应用程序?构建任何可扩展的应用都是非常大的挑战,特别是对依靠区块链来验证交易的应用程序来说,更是如此。到目前为止,2018 年的区块链专家和开发人员都致力于增加 dApp 可以处理的交易数量,因为很显然,好的用户体验需要更高的吞吐量。在短期内,吞吐量第一的是 EOS,一个声称可以实现每秒数十万交易的项目。

但为什么没有其他项目追随?

你会信任数据库吗?

假如 Gmail 服务器的数据被黑客全部删除,你的所有的电子邮件就会丢失。假如 iCloud 出现大漏洞,其它人就可以取得您的数据。假如 Facebook 员工提交了一个错误的操作,从而不小心将所有帐户的好友删除了,那么该怎么办?或者更糟糕,他们将那些你曾仔细删除了你的名字的照片又重新打上你的标记?

我们不希望在线平台出现这些系统故障。谷歌、Facebook 和苹果公司也不会这样设计他们的数据库,能以这些方式进行修改或访问。然而,一定会有“黑天鹅事件”:iCloud 曾让匿名罪犯有权访问个人文件。涉及到金钱时风险就更高了:银行的数据库面临着与 iCloud 或 Facebook 同样的风险。 为了减少问题的出现,我们设计增加了很多流程,程序和政府审计,但还是不能最终保证(不会出现问题),2007 年的次贷危机已经证明了这一点。

在大多数组织中,由于机构间的相互制衡,你相信数据库运行正确无误的依据是,银行数据库受到日志、审计和法庭保护的事实:银行出纳员不能插入数据为自己的账户增加一百万美元,是因为设计了很多步骤来防止此类行为。

区块链的安全由什么来保证?

比特币是第一个用数学、数据和代码信任来取代运营商信任的数据库机制。 比特币在网络上从完全随机和匿名的人那里接收消息,在这些信息中,它计算总计超过 1000 亿美元余额的分类帐。这真是一个奇迹。一个价值超过千亿美元的分类帐,且并不要求您信任任何特定的人或组织

是谁发送了数据并不重要,数据本身需要有效的 POW 工作量证明并且必须遵循特定的规则。是数据说明了其本身。 “数字的力量”(早期比特币社区中的流行语)使得区块链分类账的安全模型比传统数据库简单得多。它并不需要通过检查数据库的复制日志(来确认数据正确性),也不用担心数据库管理员泄露了密码(而使数据遭受不怀好意者地修改)。

因为 信任数学比信任大量的个体更容易,无论有一千个节点还是十亿个,分类账的安全性保持不变。传统机构的信任,你必须“监督监督者”。机构中参与的人越多,确保所有流程正确无误的成本越高。参与的人越多,你就需要给流程更多的信任。

通过比特币和以太坊,你只需运行一个节点就可以合理确信信息没有被篡改。这就是为什么比特币狂热派总是尖叫“运行你自己的节点!”他们有一个有效的观点:如果你没有一个完整的验证节点,你就不能确定区块链的实际状态(也无从验证付款或知道你的余额)。

如果以运行区块链的方式来运行政府,运行一个节点就相当于在笔记本电脑上的一个人工智能程序,由它检查政府官员之间的每次对话和电子邮件,判断其行为以确保他们的诚实和勤奋

更多的矿工可以提供更多的安全性。虽然这会消耗更多的能量,但它仍然比基于机构的安全更为便宜,因为机构的安全需要法官、律师、政治家和会计师。

如果区块链需要信任矿工或操作员,那么它并不比一个缓慢的数据库更好,更何况它还需要一个昂贵的验证和修正过程。区块链是信任的扩展机制。 可以在增加系统用户量的同时,而不必对系统追加更多的信任 - 更不需要基于个人的信任。

EOS 的问题

EOS 是建立在委托权益证明(DPoS)的基础上。这个实现有许多问题:

  • 极度依赖以人为本的流程:EOS中有许多机制需要人类第三方的大量参与和/或共识。仅举几例:宪法、帐户回收流程,冻结帐户的能力,提出审查的流程等等。
  • 由于其巨大的资源需求,节点有一个重要的护城河,阻止任何可能想加入该俱乐部的新人的到来:为了成为节点,需要一个相当强大的服务器集群。
  • 不能确保主节点的历史同步代码正常工作(并且确实存在让它无法正常工作的激励措施)。
  • 节点贵族化:随着时间的推移,由于通胀的节点奖励,节点将拥有更大比例的代币。然后他们可以使用这些代币为自己投票,即使他们“行为不端”,也能继续成为块生产者。

EOS 是增加了每秒交易的吞吐量,因为 它不是区块链。 EOS 项目的创建者和支持者将其定义为 “去中心化的,许可和中立的数据库”。 EOS 的运行所需的处理信任进程的工作量和人力密集型的工作量,使得 EOS 更象是一个可公开访问的 PostgreSQL 数据库,而不是区块链。

无论如何,创建 具有极高吞吐量的区块链是值得努力的目标。在 Decentraland,我们也希望做同样的事情,但我们决定遵循将区块链区别于数据库的低信任特性,从而无需额外增加可信的第三方或人类职员。

我们的扩展之路

我们正在一个可运行全兼容 EVM 的一个 Plasma 版本上工作。在我们的设计中,plasma 操作员(中心化的出块人)竭尽全力保持区块链的正常运行,因为操作员有重大的财务激励。操作员必须在根链(在这种情况下是以太坊区块链)中抵押大额保证金。这笔保证金作为担保:如果操作员违反了任何共识规则或停止出块,保证金将被没收。其中一半的保证金将被销毁,另一半给验证者,因为是他们发现了问题,以激励验证人检查操作员的行为是否正确。

实际上,操作员节点由 Decentraland(至少在初始阶段)运行,并且任何想要运行节点并跟随侧链进行验证的人都会对其进行检查。由于此模型带来的效率提升,我们有望在侧链上实现每秒几百的交易。

这个模型与基于 POA 权威证明 概念的侧链相似,因为它也可以在区块之间达到亚秒级。我们的设计不同之处在于,它是无需信任的,且全部通过自动化流程在根链上验证,无需人工干预。

该模型建立在经过测试的软件之上,因此我们不必从头构建自己的专用客户端、网络堆栈或节点。在以太坊主链上将布署“保险”智能合约用来检查侧链的行为,其中包括:

  • 防止截留:确保操作员在没有广播到网络的情况下发布块到主链。
  • 防止交易审查:如果操作员拒绝打包交易到块中,用户可以向以太坊主网提交交易,并要求在合理的时间范围内将交易包含在侧链中。
  • 执行块级验证:例如,无效的前一个块的散列值,块高度或以前的状态。
  • 检查无效交易:确保侧链中的所有交易都正确执行,并确保更新存储、记录正确。

如果您将我们的模型与 DPoS(EOS 的模型)进行比较,您会发现我们都依赖中心化,而且我们的中心化程度更高,因为操作是由单个节点执行的,而不是由缩减后的节点组。但是,通过减少对个人的信任,我们的模型更加安全。任何人都不可能冻结或审查交易。如果操作员违反共识规则,它将遭受重大财务损失,并且侧链将在最后一个有效区块停止运行,从而允许所有参与者从主链中拿回自己的资金。

我们目前正处于设计阶段,正在研究实现的一些细节。我们非常感谢我们的朋友: Matic NetworkTrueBitParsec Labs 提供的宝贵反馈信息及帮助。

在虚拟世界中展示您的特色
首批拥有虚拟化身,即可先期进入 Decentraland 世界。
了解更多