以太坊网络
早在 2013 年,BTC 程序员、BTC 杂志的出版人 Vitalik Buterin 发表了《以太坊》白皮书。以太坊的目标是将区块链技术的应用范围拓展到支付之外。
以太坊是一个通用的区块链。像许多其他区块链一样,它是开源的,公开的,并拥有自己的货币 : 以太或 ETH。通用的区块链意味着有一个去中心化的平台,它提供了一种编程语言,开发者可以使用它来创建智能合约。智能合约运行在网络的每个节点上,使得开发分布式应用程序 (DApps) 成为可能。这些 Dapp 继承了区块链技术的显著特点,即防篡改、透明、可靠和安全。
以太坊编程语言
Solidity 是由 Gavin Wood 博士创建的以太坊上的主要编程语言。它是一种可用于智能合约开发的面向对象的高级编程语言,深受 Python 和 JavaScript 语言的影响。这是有意为之,这样开发人员就可以很容易地直接开始开发智能合约。
Solidity 是一种“图灵完备”语言,这意味着它拥有开发复杂用例的所有能力。相比之下,BTC 的编程语言 Scrypt 在设计上不是“图灵完备”的。对于智能合约来说,Solidity 是最流行的编程语言,每个开发人员如果想要开始开发智能合约,都应该研究它。
Vyper 是以太坊团队创建的另一种编程语言,它在以太坊虚拟机 (“EVM”) 上运行。它的设计目的是简化智能合约的编写过程,同时使其更易于阅读。它与 Solidity 的关键区别是 Vyper 不包含一些面向对象的功能,这使得 Vyper 更安全,因为开发人员犯错误和引入 bug 的空间更小。
Gas & ETH Price
Gas 是衡量在以太网络上执行一项交易的成本的单位。每次智能合约运行一笔交易,都会消耗 Gas。这些 Gas 需要在交易运行时输入智能合约。支付 Gas 的方法是使用 ETH。
以太坊面临的问题和挑战
以太坊面临的主要问题是可扩展性。该网络被认为是“世界计算机”,但目前它每秒只能处理大约 15 笔交易,而像 Visa 这样的私营公司每秒可以处理多达 4.5 万笔交易。如果以太坊想要实现大规模应用,这是一个亟待解决的问题。
为了说明为什么这个问题很重要,我们可以看看 CryptoKitties 的例子。在 2017 年,这个项目非常受欢迎,以至于在智能合约上执行的交易堵塞了网络。因此,处理交易有相当大的延误。
此外,安全一直是以太坊的一大难题。主要是因为在一些项目中存在糟糕的开发实践,导致黑客攻击和资金损失。以太坊需要为开发人员提供在智能合约中更好的安全性的工具,同时又不影响其 Solidity。
ETH 的价格和 Gas 的成本使得交易的运行过程变得十分脆弱,在某些情况下这不值得。特别是对于以太坊验证者,他们目前必须花费大量的电力才能运行节点与 PoW 共识算法,在这一过程中,他们没有得到太多的回报。
公众认知匮乏和糟糕的 DApps 用户体验是未来需要解决的问题,这是实现大规模应用 的关键。
以太坊的现状
以太坊的生态系统在过去几年里一直在稳步发展,尽管它仍然存在很多问题。ETH 是全球市值第二大的数字资产。Solidity 是最流行的开放区块链编程语言,拥有最著名的开发人员社区 (这是项目健康状况的一个指标)。一个平台拥有的开发人员越多,就可以在其上开发出更多有价值的项目。多年来,我们已经看到了许多在以太坊上涌现的优秀项目,当然,也不乏贫庸者和纯粹的诈骗项目。
2017 年,我们看到项目数量的大幅增长,主要体现为首次代币融资热潮和市场看涨。但现实情况是,其中只有几个项目存活了下来,而且在接下来的几年内将会越来越少。
一般大众还没有采用 DApps,主要是因为该平台不够成熟,公众对该技术也缺乏普遍了解。尽管如此,在过去的一年中,有不少与游戏、赌博和金融相关的项目发展迅速,并获得了良好的用户基础。
source: stateofthedapps.com
source: stateofthedapps.com 以太坊开发阶段
以太坊的开发计划分为四个不同的阶段。每个阶段都是为了引入更多的特性和修复问题。每个步骤还包括“子版本”,即所谓的“硬分叉”,它以一种不向后兼容的方式改变功能和特性。
以下时间轴是最初计划的以太坊发展阶段 :
这是以太坊从 2015 年 7 月 30 日到 2016 年 3 月的初期开发阶段。
Ice Age 是一个“硬分叉”,它引入了一个指数级的难度增加,以促使在一切就绪的情况下顺利完成从 PoW 到 PoS 的过渡。
以太坊的第二个阶段启动于 2016 年 3 月。
臭名昭著的 DAO 案例。这是一个硬分叉,补偿了 DAO 黑客的受害者,并导致以太坊和以太坊经典分裂成两个对立的系统。
另一个硬分叉用于更改某些 I/O 繁重操作的 gas 计算,并在利用这些操作的低 gas 成本的 DoS 攻击后清除累积状态。
硬分叉解决了 DoS 攻击问题,与此同时,另一种状态也被完全清除。此外,它也是一种重放攻击的保护机制。
这是以太坊发展的第三阶段,于 2017 年 10 月启动。Byzantium 是 Metropolis 两大分叉中的第一个。
这是 Metropolis 阶段上的第二个硬分叉,于 2019 年 2 月完工。这个硬分叉还包括其他修改,以修复代号为 Petersburg 的安全问题。
这是另一个硬分叉,计划在 2019 年 12 月 4 日激活,将包括更多的安全修复和激励措施,从 PoW 转移到 PoS 算法。
Serenity — Ethereum 2.0
Serenity 是以太坊发展的最后阶段。它将引入以太坊 2.0——一个新的以太坊区块链,完成 PoS 的集成,并引入一个新的以太坊虚拟机,此外还有很多细节的改变。
关于 Serenity 何时上市有很多讨论和传言。这个庞大的阶段将分为不同的子阶段 :
Serenity 路线图
第 0 阶段 : 信标链 Beacon Chain (Q1/2020)
第 1 阶段 : 分片链 Shard Chains (2021)
第 2 阶段 : 新的以太坊虚拟机 eWASM (2021)
第 3 阶段 : 持续改进 Continued Development (2022)
以太坊 2.0
“Ethereum 2.0”这个术语描述了所有来自 Serenity 的更新,它将使以太坊的可扩展性更好,速度更快,区块链状态更好。正如以太坊研究员 Danny Ryan 所说,以太坊 2.0 的主要设计目标是:
系统恢复能力:其目标是为了让系统在节点大规模宕机或者全网被分割肢解时仍然能保持正常运转。
安全性:目标是为了利用加密和设计机制让尽量多的验证节点在每个单位时间内充分参与验证。
简洁性:系统复杂度越低越好,甚至可以为此牺牲部分效率。
持久性:尽量为系统选择能保证量子安全的组件。如果组件暂时无法保证量子安全,那就选择容易被替换的组件。日后当有了量子安全的组件时,可以方便地将这些临时组件用量子安全的组件所替代。
去中心化:其目标是为了让普通的笔记本电脑用复杂度为 O(C) 的资源就可以处理 / 验证复杂度为 O(1) 的分片任务(包括任何系统级的验证比如 beacon chain 中的验证)。这将允许更多的低端设备参与网络。
为了理解这一切是如何实现的,让我们看看每个 Serenity 阶段的细节 :
第 0 阶段 : 信标链 Beacon Chain
信标链将是从以太坊区块链中独立出来的的区块链。这个新的链将由权益证明(PoS)作为共识机制算法,它将与主要的工作证明共识机制(PoW)以太坊区块链并行运行。最初,为了简单起见,区块链不支持智能合约或帐户。
在撰写本文时,以太坊正在使用一种“工作证明”(Proof of Work, PoW) 共识机制算法,与 BTC 使用的算法非常相似。在以太坊中,这个算法的名字叫做 Ethash。在信标链上,我们将看到新的 PoS 算法,称为 Casper。在过去的几年里,Casper 取代 Ethash 的计划已经被推迟了好几次,这就需要采取一些干预措施来化解困难,并推迟 PoW 被强制淘汰。现在我们终于有了信标链。
PoS 的简短说明 :
根据 PoS 共识机制,区块链会跟踪一组验证,任何持有区块链基础数字资产 (在此例中为 Ether) 的人都可以通过发送特定类型的交易将其以太币锁定为存款来完成验证。验证者轮流对下一个有效块进行提议和投票。验证者投票的权重取决于他们的存款 (赌注) 的大小。如果大多数验证者拒绝他们所建立的块,那么验证者将面临失去存款的风险。相反,验证者每获得一个被多数人接受的区块,就会获得一个与他们所持有的股份成比例的小奖励。因此,PoS 迫使验证者诚实行事,并通过奖惩制度遵守共识规则。
ETH2: 新的 Ether
阶段 1 的另一个特征是引入了 ETH2,是一个在新信标链上验证的新资产。这个新的 ETH2 将被创建作为在信标链上验证交易的奖励,并且任何 ETH1 都可以购买它。最初,还没有办法将 ETH2 从信标链中取出。如果有人要为新链验证者,他们至少需要 32 个 ETH 来抵押原始链。
第 1 阶段 : 分片链 Shard Chains
分片是一种可拓展性技术,可允许并行进行交易。这是为了将网络划分为多个分片来帮助扩展交易规模,从而允许网络同时处理许多事务。
Vitalik Buterin 针对“分片”发表过如下看法 :
“想象以太坊被分裂成成千上万的岛屿。每个岛屿都可以做自己的事情。每个岛屿都有自己独特的特征,每个人都属于那个岛屿。比如,账户之间可以相互交互,他们可以自由地沉迷于它的所有功能。如果他们想与其他岛屿接触,他们将不得不使用某种协议”。
分片将在信标链上引入,最初的规模约为 100 个。验证者将从自己的碎片中验证交易,在第一阶段,它们不会批准任何智能合约、帐户或资产。
虽然分片将带来更多的可拓展性,但是需要考虑一些挫折点。验证者有一个小的交易池需要验证,这使得 51% 的攻击更容易,因为它们只需要 51% 的计算能力 (或权益),而不是整个网络。
这种技术还可以导致更高的集中化,因为每个碎片都可以通过一小组验证者进行验证。看看这个阶段如何实现将是非常有趣的,因为它仍然需要彻底的测试,以确保所有的验证者都是随机选择的,以避免集中化和任何风险攻击。 第 2 阶段 : 新的以太坊虚拟机 eWASM
什么是 EVM
以太坊系统上的所有节点都需要运行智能合约来执行区块链上的最终交易。以太坊虚拟机 (EVM) 允许执行这些智能合约。
EVM 是以太坊网络的心脏,是承担智能合约部署和执行的核心之所在。它可以被认为是一个包含数百万个可执行对象的全球分布式计算机,每个对象都有自己的永久数据存储。从技术层面上来说,它是一个基于堆栈执行的机器语言指令。智能合约以诸如 Solidity 之类的“高级”语言编写,并编译为字节码以便在 EVM 上执行。 当前 EVM 的问题
当前 EVM 的主要问题之一是它按顺序处理交易。随着 PoS 和分片的更改,需要并行处理交易,而当前的 EVM 不适合这样做。
新的 EVM
新的 EVM 称为 eWASM,代表 Ethereum WebAssembly。WebAssembly 是一个开放标准,为可执行程序定义了一种可移植二进制代码格式。这种用于 EVM 的新架构将提供更好的性能,并将有可能在新的区块链上支持智能合约、帐户、状态等。eWASM 的开发目前处于非常早期的阶段,计划在 2021 年发布。目前,仍需要进行大量研究。 第 3 阶段 : 持续改进 Continued Improvement “持续改进”是一个代码名称,它包含前面阶段的所有未来的更改、修复和改进,以及随之而来的更多内容。不幸的是,关于这个阶段的信息并不多,因为它最初计划在 2022 年启动。我们所知道的是,将实施以下技术 :
跨分片交易;
轻量客户端;
超平方图表;
建立更紧密的联系;
以太坊 2.0 对加密经济意味着什么? 关于了解以太坊 2.0 最重要的一点是,它不是一夜之间就能发生的变化。最初的发布计划分为 4 个阶段,但是没有人说开发就到此为止,或者在这个过程中不会有延迟和变化。每个软件都没有最终版本,总有需要改进和修正的地方。 以太坊是密码学领域最重要的项目之一,也是许多其他项目所依赖的。它得到了开发社区和企业的大力支持。有很多人对以太坊的未来投入巨资,因此承载了很大压力。如果这个团队成功地实现了这一点,我们将拥有一个完全可扩展的通用区块链,它将更接近于最初的以太坊口号 :“全球超级计算机”,并将向世界展示“区块链梦想”是可能实现的。这将吸引更多的开发者和投资者在此基础上继续构建明星项目。 在接下来的几年里,关注以太坊 2.0 的开发是理解以太坊 1.0 区块链当前项目如何迁移到新链以及加密空间将会发生的重大变化的关键。只有时间才能告诉我们,这些事件将在何时、以何种方式发生。
sheinix@The Startup 作者 *Lisa Liu *翻译
Sonny Sun、樊绪新 编辑
Roy **排版**
内容仅供参考 不作为投资建议 风险自担
版权所有 未经允许 严禁转载
☟☟☟
声明:本内容为作者独立观点,不代表 CoinVoice 立场,且不构成投资建议,请谨慎对待,如需报道或加入交流群,请联系微信:VOICE-V。
简介:分享区块链领域专业、前沿、有趣的内容
评论0条