火星独家 | 以太坊2.0的“心脏置换”:一文读懂从EVM到EWASM的升级


火星独家 | 以太坊2.0的“心脏置换”:一文读懂从EVM到EWASM的升级文章插图
免责声明:本文旨在传递更多市场信息 , 不构成任何投资建议 。 文章仅代表作者观点 , 不代表火星财经官方立场 。
小编:记得关注哦
来源:火星独家
火星独家 | 以太坊2.0的“心脏置换”:一文读懂从EVM到EWASM的升级文章插图
编译 | Bite@火星财经App
ETH2.0分片链第二阶段将运行支持智能合约运行的新虚拟机环境Ewasm , 分片链的节点将存储账户、合约和状态信息 , 届时分片链也将完成从数据分片到状态分片的转变 , 此时以太坊才可以说是真正意义上实现了扩容 。
延伸阅读:火星独家 | 牛市发动机启动 , 深度解析ETH 2.0六大看点火星独家 | 参与以太坊2.0质押没有32个ETH怎么办?这些机构了解一下火星独家 | 为什么说以太坊2.0是“懒惰验证者的安全天堂”?首先要了解Ewasm , 我们先介绍“虚拟机”到底是什么意思?
火星独家 | 以太坊2.0的“心脏置换”:一文读懂从EVM到EWASM的升级文章插图
简单来说 , 传统的操作系统 (Windows/iOS) 一次只需要在一个系统中运行 。 而虚拟机 (VM) 是基于本地操作系统所创建更高级抽象 , 可用于复制物理机的功能 。
虚拟机使得用户能够在不同的硬件架构和操作系统中同时运行同一平台 , 这就是为什么虚拟机非常适合像以太坊这样的去中心化网络的原因 。 以太坊虚拟机 (EVM) 的功能就类似世界计算机 , 遍布全球的节点都能进行访问 。
以太坊EVMEVM是一个轻量级的虚拟机 , 其设计是用于在以太坊网络上运行智能合约 。 作为虚拟机 , EVM的功能与传统的操作系统(如Windows)稍有不同 。 一般来说 , 虚拟机是建立在本机操作系统上模拟物理机的高级抽象 。 它们允许同一平台 , 在许多不同的硬件体系结构和操作系统上运行 , 这使得虚拟机非常适合像以太坊这样的分布式网络 。 EVM的构建是为了模拟可由物理CPU执行的操作 , 其还负责以太坊的许多关键功能 。
以太坊虚拟机是以太坊区块链中关键组成部分 , 或者说是一个通用的执行环境 , 没有它 , 以太坊的智能合约的确定性将无法保障 。
火星独家 | 以太坊2.0的“心脏置换”:一文读懂从EVM到EWASM的升级文章插图
从这个层级图可以看出 , EVM是智能合约运行的基础环境 , EVM之于以太坊就像心脏对人体的重要性一样 。
通过运行以太坊虚拟机 , 计算机就变成了网络中的一个“节点” , 并与其它节点一样具有同等地位的处理事务 。
你可以将其与Windows等传统操作系统进行比较 。 不同的是 , Windows一次只能操作一台机器 。 而以太坊虚拟机一次要操作很多台机器 , 模拟的是一台物理机 。
由于当前的以太坊虚拟机(EVM)架构缺乏灵活性 , 对以太坊协议的强化有一定限制性 。 扩展执行层的方法是引入特殊的“预编译”合约 。 通过使用WebAssembly作为虚拟机规范 , 以执行高性能的“预编译”合约 , 简化引入此类合约的过程 。
以太坊Ewasm
火星独家 | 以太坊2.0的“心脏置换”:一文读懂从EVM到EWASM的升级文章插图
WebAssembly(简称WASM)的设计目标是性能和效率 , 是为Web开发构建的一个高效计算引擎 , 它是一个可移植、体积小、加载快并且兼容 Web 的全新格式 。 WebAssembly 有一套完整的语义 , 实际上WASM是体积小且加载快的二进制格式 , 你可以用它来编写Web代码 。 它是计算机中的一个虚拟机 , 可以专门执行优化的命令 , 设计的首要目标是性能 , 适合用在区块链项目中 。 它的主要任务是优化执行和加载时间 , 通过转换或执行某些命令来做到这一点 。
相关资料eWASM提案eWASM设计Ewasm也是以太坊2.0更新的重要组成部分 , 将成为解决以太坊可扩展性问题的一部分 。 以太坊将加入诸如波卡(Polkadot)、Cardano、EOS、Tron、Spacemesh和NEAR协议等项目的队列 , 而这些项目已经或正在采用Wasm 。
Ewasm与EVM
火星独家 | 以太坊2.0的“心脏置换”:一文读懂从EVM到EWASM的升级文章插图
以太坊在狭义上表示一套协议 , 这套协议定义了去中心化应用的平台 。 它的核心是以太坊虚拟机 , 它可以执行任意算法复杂度的代码 。 在计算机科学的术语中 , 以太坊是图灵完备的 。 开发者可以使用语法上类似JavaScript和Python的编程语言(Solidity)创建运行于EVM上的应用程序 。
以太坊虚拟机使用256比特长度的机器码 , 是一种基于堆栈的虚拟机 , 用于执行以太坊智能合约 。 由于EVM是针对以太坊体系设计的 , 因此使用了以太坊账户模型(Account Model)进行价值传输 。