以太坊团队讨论Wasm Web Assembly和EVM及其应用

2016-09-19 14:01 来源:Chainb 阅读:6197
过去几个月,主要研究将EVM Wasm附加到Web assembly上做研究。主要有两种类型字节代码,一个虚拟机字节代码,希望通过转型,变成新型代码,然后新增一些功能,Web Assembly是一个新格式。

以太坊团队讨论Wasm Web Assembly和EVM及其应用  

作者:Cathy 

演讲嘉宾:Dr. Greg Colvin, Martin Becze, Pawel Bylica, Dr. Christian Reitwiessner   Greg Colvin主要负责以太坊C++团队,

Martin Becze负责Wasm Web Assembly   Pawel Bylica负责EVM 其中一个项目,EVM字节代码转成机器代码   Dr. Christian  Reitwiessner专注solidity,以太坊虚拟机用户端  Alex负责Wasm Web Assembly ,希望提高虚拟机性能

以上专家关于进化中的以太坊虚拟机就一下问题进行了小组讨论。  

以太坊团队讨论Wasm Web Assembly和EVM及其应用
 

一、关于研究具体进程,研究方向的讨论  

过去几个月,主要研究将EVM Wasm附加到Web  assembly上做研究。主要有两种类型字节代码,一个虚拟机字节代码,希望通过转型,变成新型代码,然后新增一些功能,Web  Assembly是一个新格式。主要就是致力于EVM升级版,其速度会大大提高,而且能够解决之前遗留的效率问题,上传下载也很方便,在各种环境下的运行 也很简易。

EVM是一个虚拟机实现方法,在加入团队以来,想解决的问题就是如何把这一实现放入其他客户端。现在做的就是致力于C语言,如果大家知道EVM,有一个说 法叫EVMC,这是一个简单的界面,可以实现打包,然后整合到其他项目。会议开始前,他们已经将EVMC加入某一客户端,希望在后面继续实现,所以我做的 不是优化,是项目融合。我们现在有一个插件界面来执行,这个c++客户端和另一种客户端,已经实现这一应用。

我们希望在客户端和EVM之间有一个共用界面,有计划对c++进行重建,从而把解码器用于不同客户端。

之后会对wasm进行介绍,这是不同的代码,要先兼容,同时也希望这个字节代码可以用于其他地方,比如在solidity,和wasm智能合约上进行编写。我们希望可以将其用于EVMC,。

他们认为没必要在c上写智能合约,但实际上总是会遇到这样的情况。希望以太坊团队可以更高效来写代码,从而实现兼容与通用。

有人觉得solidity已经够用了。实际上在加密程序库已经用C来进行合约编写。人们会抱怨solidity太难,实际上很多语言都是用C语言来写的, 支票都来自C语言。所以希望帮助用户实现更加简单快捷的操作。EVMC界面是非常强大的,而且可以把不同的工作汇集到一起,提供需要的语言。EVMC界面 也不会影响我们的工作。

我们这个项目上很多实现都可以基于一些比较复杂的结构,通过这个EVMC可以使用一个特有的代码或随机选择代码来做实现,比如EVM可以和其他虚拟机进行 整合。可以进行升级,还是用EVMC界面,不过功能会更健全。这个界面,可以获得区块链上的数据。然后进行分不同层次来执行。其实就是在同一水平,同一层 面上运行,然后再进行改变。

二、关于EVMC什么时候可能发布  

这主要取决于工作团队,我在很多地方进行了实现,在2017年的时候估计可以最终实现,然后可以进行其他方面的拓展。其实很多方面已经应用,之后会在测试网上进行测试,也是因为EVM的推进,从而在其他客户端应用。一般EVM对资源的消耗可以通过gas获得。

最大的安全问题就是,希望可以把信任降到最低,这个可以通过测量来实现,比如在web  assembly上进行堆栈分析,还能进行计量,其内存也和之前相当。Gas模型和内存和之前差别不大,所以处于不同关注,设计。所以我们构想了两个模 块,来分开构建。所以创建了这个可依靠的计算平台。实际上我们也很关注安全问题。

三、内存会通过什么方式支付,和实际挂钩,还是虚拟机?  

实际上内存是和webassembly相连,也会进行扩充,并展开与内存相关的项目。比如Alphamat,也会对内存进行扩展。关于测量部分,实际上需 要输入自己的代码,不很信任编译器,所以在过程中,我们会加入一些声明,这些会调用特定方程。就像之前使用的应用一样。可以节省时间,但是成本可能过高。 是否可以分开思考其性能,但是最终如何提高还不得而知,目前使用的是一个八字节的原型。


声明:此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。本网站所提供的信息,只供参考之用。

点击阅读全文