以太坊消除“中心化”之战已经打响!
“如果我们不停止对 Infura 的依赖,那以太坊的愿景将不会实现。”
这是以太坊客户端 Parity 的管理人 Afri Schoedon 于今年10月份在推特上发表的、针对 Infura 这个很受以太坊欢迎,但也饱受争议的基础架构的评论。
据了解,Infura 是由 Michael Wuehler 创建的一个基础架构,允许去中心化应用(dApp)在以太坊网络上处理信息,而无需运行全节点。一些最大的 dApp 和协议,包括以太坊钱包 MetaMask、去中心化交易所协议0x和 MyCrypto,都依赖 Infura 向以太坊主网广播交易数据和智能合约。
但 Infura 是由单一的提供者 ConsenSys(以太坊开发工作室)运行的,并且依赖于亚马逊(Amazon)的云服务器,因此很多人担忧这代表着整个网络存在单一故障点。Infura 的联合创始人 Michael Wuehler 在一次采访中也表示:
“如果世界上每一个 dApp 都基于 Infura,且我们决定关闭 Infura,那所有的 dApp 都将停止运行。这是人们所担忧的,这也不是没有根据的。”
虽然很多项目都认可 Infura 对以太坊网络的重要性,并将 Infura 提供的服务作为支撑当今开发者社区的一个顶梁柱,但也有很多人(如Afri Schoedon)认为必须寻求另一种去中心化的方式。
“将 dapp 通过 Metamask 连接到一个由他人托管的区块链是没有任何意义的,” Schoedon 在推特中这样说道。
并非只有 Schoedon 对 Infura 持有这样的看法,很多新的尝试也在摒弃将 Infura 作为开发者将 dApp 连接以太坊的连接点。
比如,诸如 Vipnode、Dappnode 和 D-Node 等新的全节点激励机制尝试提供不同于 Infura 的接入方式。
同样,诸如轻客户端(轻节点)等基础设施最小化方案、实验性软件重组 Turbo Geth 等也在受到关注。开发者们普遍认为,最重要的是以太坊生态系统本身是去中心化的。Dappnode(一个节点激励计划)的公关负责人Yalor Mewn表示:
“当前面临的一个问题是去中心化应用(dApp)的开发是通过中心化服务来进行的。我们当前正在搭建的基础实施就是用来解决这一难题。”
01
一个并不完美的工具
当前,根据 ethernodes.org 显示,以太坊全节点数量总共是11,803。
Wuehler 表示,通过 Infura 接入以太坊网络的节点数占总节点数的5-10%。但因为 Infura 节点是非常可靠的(受到24小时的维护),因此这些节点占据了一定的流量。Wuehler 还表示:
“(我们)正在通过 RPC 来有效地支持整个以太坊dApp生态系统。”
其中的一部分原因是,截至发稿时,一个全节点需要存储1TB的数据,这超出了一台传统笔记本电脑能够存储的容量。对于开发者以及用户来说,这意味着这样的存储需求需要经常外包给有能力来管理这种基础设施的公司。
以太坊研发存储公司 Chainsafe 的 CEO 兼联合创始人 Aidan Hyman 说道:
“Infura 运行的方式就是托管全节点,并开放一个接口(interface)来允许你轻易地访问这些全节点。”
比如,开发者们经常选择 Infura 作为一种软件开发基础设施,很多用户则会使用浏览器插件工具 Metamask 来存储他们的加密货币。这两者都是通过 ConsenSys 全节点进行路由的。Wuehler 表示:
“任何使用 Metamask 的 dApp 本身也依赖于 Infura。从这个意义上讲,几乎所有 dApp 都有可能依赖于 Infura。”
这种情况的影响在于,开发者和用户不太可能运行全节点,就是说支撑这个网络的全节点的数量会减少。由于Infura 可能成为单一故障点,因此缺少全节点也会产生其他的后果。
比如,运行一个全节点将允许用户和开发者能够将大部分敏感的活动数据存储在本地,而 Infura 会累积存储其用户的数据,包括钱包地址和IP地址等信息。
因此,隐私保护是个问题,且由于 Infura 依赖于亚马逊云服务器,那如果亚马逊单方面出现问题,又该怎么办呢?
02
真正的去中心化
鉴于这种情况,很多项目尝试寻求一种可行的替代方案。
比如,Parity Technologies 已经发布了一个针对轻客户端开发的全新代码库 LightJS。Parity 希望它能够鼓励开发者搭建轻客户端,而不依赖于 Infura 服务。
这是因为,轻客户端不仅在硬件和存储需求方面要更低,且有望在去中心化程度方面能与运行全节点时一样。Parity 的开发者 Amaury Martiny 表示:
“理想状态是,我们将看到越来越少的 dApp 连接至 Infura,且这些 dApp 将使用轻客户端,并实现真正的去中心化。”
由 Alexey Akhunov 创立的 Turbo Geth 项目同样也试图重构以太坊软件客户端进行存储的方式。在该项目最新版本的软件重写中,Alexey 称将客户端存储的需求降低至当前的五分之一。
其他一些项目,如 Dappnode、D-node 和 Vipnode,则将目标锁定在底层的激励层,以激励更多的人去运行全节点。这是因为在当前,与以太坊网络中保证交易安全的矿工不同,运行全节点不会得到任何奖励。
其中,Vipnode 项目获得了以太坊基金会(EF)获取的拨款,其目标是通过一个金融市场让更多的人运行全节点并为本地轻客户端服务,从而使整个以太坊网络保持去中心化。运行全节点的在线客户端将获得一定的奖励,这些奖励是由想要使用该服务的开发者捐赠出来的。
D-Node 项目也为开发者和节点运营商之间创建一个市场,但也试图使两者之间的经济关系更加地去中心化。
为此,D-Node 使用了一个去中心化自治组织(DAO)。该项目由位于多伦多的初创公司 Chainsafe 发起,是在今年5月份的以太坊黑客松 ETH Buenos Aires 大赛中构思出来的,并得到了以太坊社区基金(ECF)的拨款支助。Chainsafe 的创始人 Hyman 表示:
“D-node 的想法是,我们可以通过去中心化的方式来搭建这些结构,这种方式允许在经济系统中实现权力的去中心化。”
而由区块链开发者 Jordi Baylina 创立的 Dappnode 项目则采取了一种不同的方式,即允许开发者开发者建立一个本地网络,该网络将能够被设计成使dApp更容易被部署。
03
即将到来
有些项目——如 Vipnode 和 Turbo Geth——也获得了 Infura 的支助。
Infura 背后是以太坊最大的一个初创公司 ConsenSys,该公司也支助了一个项目 Incubator,该项目致力于减少 Metamask 在进入以太坊网络时对 Infura 的依赖程度。根据 Wuehler 所说,Infura 也在尝试使自身依赖的云服务提供商多样化,而不只是依赖于亚马逊。他表示:
“我们的主要目标是继续努力使我们创建技术堆栈的方式越来越去中心化。”
根据 Wuehler 的说法,Infura 如此受欢迎是由于以太坊平台本身所具有的一个特征——即以太坊将比特币区块链的功能与能够执行 dApp 的虚拟机结合在一起,这使得以太坊生成的数据要更加广泛,而不仅仅包括交易数据。
比如,除了依赖于一条区块链之外,以太坊还存储了所谓的“状态(state)”,即以太坊平台上所有计算的总和。且由于以太坊用户的数量在不断增长,状态的大小也在不断扩大。
这种情况的结果是,随着硬件设备的投入成本越来越高以及操作越来越复杂,且由于以太坊的底层设计,激励机制将不足以激励人们去存储“状态”。Wuehler 表示:
“这一问题并不是我们创造的,我们只是想解决这个问题。我们只是提供一个所需的解决方案。”
当前,包括以太坊创始人 Vitalik Buterin 在内的以太坊研究者们正努力寻找一种方式来重写以太坊底层的激励机制,从而使存储数据的全节点将获得奖励,即开发者们所说的“租金(rent)。”
当前正在将这一更改纳入一个称为“以太坊1x.”的以太坊升级提议中。目标设定在2019年,在此期间,开发者们将专注于寻找能够立即部署的解决方案。
正如 D-node 的负责人 Hyman 所说:
“虽然我们是以一个社区的身份来朝长期目标前进,但我们也必须务实并专注于当下。这是(以太坊)当下存在的一个问题,且这个问题一直存在于这个领域。”
---------------------
原文:https://blog.csdn.net/qq452474654/article/details/84849992