以太坊社区、关键开发人员和研究人员以及其他人始终认为,可扩展性也许是区块链应用需要解决的唯一最重要的关键技术挑战,才能实现大规模应用。 区块链的可扩展性很难,主要是因为典型的区块链设计需要网络中的每个节点处理每个事务,这将整个系统的事务处理能力限制为单个节点的能力。
提高区块链可扩展性有两条主要途径。 第一个(“分片”),涉及创建设计更好的基础层区块链协议。正如我们能在当今可用的简单设计的区块链中看到的,该协议仍然保留了区块链的大多数理想的去中心化和安全属性,但只需要少数节点 查看和处理每个事务,允许同时并行处理更多的事务。 第二个涉及创建“第二层”协议,该协议脱链发送大多数事务处理,并且仅在进入和退出第二层协议时以及第二次协议受到攻击的情况下与底层区块链进行交互。
我们认为这两种策略是相互补充的。我们相信实现以太坊的可扩展性需要支持一个多方面的策略,同时涉及分片和脱链,并将它们视为互补的。
有关以太坊可扩展性技术的阅读材料
分片:
-
FAQ:https://github.com/ethereum/wiki/wiki/Sharding-FAQ
-
关于数据可用性和删除编码的说明:https://github.com/ethereum/research/wiki/A-note-on-data-availability-and-erasure-coding
-
分片初步规范:https://github.com/ethereum/sharding/blob/develop/docs/doc.md
-
描述随着时间的推移将分片融入以太坊的策略的视频:https://www.youtube.com/watch?v=Yo9o5nDTAAQ&feature=youtu.be&t=7h55m33s
现有的第2层系统的例子:
-
Plasma: http://plasma.io/
-
State channels: http://www.jeffcoleman.ca/state-channels/
-
Raiden: https://raiden.network/101.html
随着以太坊区块链每天达到100万笔事务,以太坊和其他区块链项目经常达到其全部事务处理能力,对可扩展能力的需求变得越来越清晰和迫切。 为此,除了内部正在进行和即将开展的可扩展性工作之外,我们还启动了两个实验性补贴计划,希望能够让更多的独立团队与以太坊研究团队的底层可扩展性研究和开发工作合作以构建独立的第二层项目。第二层项目要能与以太坊的可扩展性绑定并改进其扩展能力。
开发者、公司、大学和学术团体的独立团队都欢迎申请; 我们认识到,不同类型的申请人可能需要不同的格式和流程,我们愿意灵活地适应个别团队的需求。
分片客户端资助项目
在过去的几个月里,分片的开发迅速起来。 一个初始原型的规范和一个允许它慢慢地引入以太坊的路线图即将完成。分片原型首先作为一个“松散耦合”的侧链通过“验证管理员合同”锚定在以太坊基础链中,然后随着时间的推移,与以太坊基础链更紧密的整合。 一个参考实现是在Py-EVM之上用python语言构建的,其testnet已将近完成。
下一步,我们希望你参与。 我们希望以太坊分片测试网和以后的分片主网从一开始就成为一个多客户端生态系统,而以太坊基金会不支持任何单一的特权生产实施。 以太坊基金会资助的研究小组将继续用python和其他语言来构建一个实现,但是这首先是作为参考和概念证明。 虽然我们的目标是继续把重点放在研究和规范上,但我们并不希望一旦网络上线,最终哪个客户端“赢得”获取最多实际用户的竞争。
相反,以太坊基金会将向社区中的独立团队提供资助,这些团队希望帮助建立实现并参与分片测试网和主网。 这些资助并不打算成为受资助组织的重大利润来源; 而是考虑承担一部分费用,以理解参与该计划的任何人都将有机会参与以太坊2.0的开发,并与核心以太坊研究人员密切合作,并成为在分片式主网络上线时可用的第一个客户端之一的开发的一部分。
这将采取专门项目的形式,将与基金会即将发布的更普遍的资助项目一起存在。 每个项目可以获得5万美元以上至1,000,000美元的资助,对于非常成功的项目可能更多; 资助多少将考虑到团队的质量、拟议实现的范围、以及项目的进展情况。 参与者将与核心研究团队密切合作,并将在形成在实现规范和运行测试网络过程中形成的最终规范方面发挥关键作用。
第二层可扩展性解决方案资助项目
最近有大量的独立提案,关于如何通过第二层协议来扩展以太坊等区块链。 我们知道,开发者和研究人员对研究和实现这方面的技术感到兴奋,许多团队希望有自由构想和构建自己的想法的设计。 我们希望为这些团队提供一个机会,让他们在以太坊家族中尽情发挥创造力,构建可扩展的区块链提案。
为此,我们发布了一个项目的资助方案,用于构建以太坊之上的可扩展性和延迟降低“第2层”平台。这样的平台受益于作为基础层的以太坊区块链的安全性以及与更大的以太坊社区和平台的互操作性。
与分片客户端方案一样,这将采取专门的拨款资助项目形式。根据范围,规模和质量,可提供5万至1百万美元的资助。 即使项目具有独立的商业模式,或来自以太坊社区潜在其他来源的资金,这个资助也可能是可用的,尽管我们将优先考虑那些缺乏自我维持能力的项目,而且绝对必须是这样的: 受资助的工作是彻底开放源代码的,且能为以太坊生态系统提供了一个共同的好处。
资助的目标包括高质量开发现有的二层扩展性策略(例如状态通道,Plasma),以及研究和开发新的策略。
说明
这两个计划都处于非常早期的阶段,并将根据以太坊核心领导层的判断决定是否给予补助金。 包括付款条款,条件和时间表在内的细节可能会随着我们在项目参与者方面的初步经验而发生变化,我们预计这个项目将在今年内巩固和扩大。
还要注意的是,虽然这些合作项目的付款远远高于我们之前资助项目的付款,但这些付款对重点和质量的期望更高。 我们的目标是在以太坊或区块链领域拥有直接经验的技能团队,或者在机制设计,分布式系统或密码学以及软件工程等更广泛领域的经验。 这些计划也高度针对分拆客户和二层缩放解决方案; 这不是一个通用的资助计划。 这还在开发中,细节一旦准备好就会发布。
如何申请
第一步是发邮件到apply@ethereumresearch.org,并提供以下信息:
-
项目官方名称,申请人和核心开发商
-
关于团队的进一步信息,包括之前在以太坊或区块链空间或分布式系统中的活动,机制设计或密码学提议和可伸缩性的影响
-
估计发展里程碑和完成的时间表,申请拨款金额和总预算总额
如果我们有足够的兴趣,我们将从那里请求进一步的信息。