LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 区块链资讯 > 三分钟了解 EOSIO 2.0: 创建 EOSIO 应用, 多快好省

三分钟了解 EOSIO 2.0: 创建 EOSIO 应用, 多快好省

2019-10-09 曹波 来源:区块链网络

聊聊 EOSIO 2.0 带来的新玩意。

20191009185641ZHfs.jpg

过完国庆节结束后回来上班的第一周,社区有人戏称:BM 也放完暑假了。

这不,在 EOSIO 1.8 部署至 EOS 网络后不久,Block.One 发布了 EOSIO 2.0 预览版本,兑现在六一发布会上的承诺。

如果用一句话概括EOSIO 2.0, 我想,应该是: 多、快、好、省的创建 EOSIO 应用。

对此,BM 同学甚是自豪,发推表示“EOSIO 2.0 的可扩展性远远走在 ETH 2.0 之前(内心OS: 小V啊,EOSIO 2.0 可是甩 ETH 2.0 好几条街)”。

嗯~ 也许假期归来的 BM 同学想说,“我是整条gai上最靓的仔~”

7ZiWPy7fc9VprmgrOQ6rF96kvjTPLBpwUwKDrfPd.png

用三分钟时间,我们来了解下,EOSIO 2.0 (目前为预览版,为了省事,下文简称为 EOSIO 2.0)提供了什么新鲜功能,又跟我们有什么关系?

简要概括
  • 接入 WebAuth, 支持更丰富的验证方式,未来可以支持生物识别、硬件设备(Yubi Key) 等无密钥交易授权方式;

  • EOSVM 让智能合约执行速度更快

  • EOSIO 网页版开发工具,让开发者更快上手

  • 为出块节点提供了更安全的出块签名方式,降低私钥丢失后带来的威胁

快,才是王道

EOSIO 2.0 最重要的特点:快。

包括两方面:

提供 EOSVM, 让代码执行速度更快。提供了快速启动的网页版 IDE 开发工具, 让开发者上手更迅速。

如果想了解多一些细节,可以看看下面的详细说明。

交易执行速度更快,更节省 CPU

智能合约执行速度的提升,来自使用了 EOSVM, 这是 Block.One 的开发者专门为区块链开发定制的虚拟机,相比于 EOSIO 1.0, 性能大约提升16倍;相比当前的 WABT虚拟机,大约能提升8倍的性能。

这也意味着, 未来 EOSIO 区块链(如 EOS 主网,BOSCore 区块链,MeetOne 区块链等)上运行同样的交易,所消耗的 CPU 更少,速度更快,也意味着,将来在 EOSIO 2.0 部署之后,TPS 也会带来提升。

1570616532866166.jpg

EOSVM: https://github.com/EOSIO/eos-vm

开发者上手速度更快:EOSIO 极速版 Web IDE

201910091856460L5d.jpg

同时,在EOSIO 2.0 中,提供了EOSIO 极速版 Web IDE(EOSIO Quickstart Web IDE)。

当前想要搭建起来 EOSIO 的开发环境,需要花费非常多的时间。值得一提的是,EOS Studio 提供了非常易用的 IDE 工具,帮助开发者快速启动,开始创建 dApp。

而伴随 EOSIO 2.0 发布的 EOSIO Web IDE,使用了 gitpod.io 和 docker, 提供了网页版的集成环境,可以从任意浏览器中打开,即可开始使用了。

EOSIO快速启动Web IDE是一个强大的基于Web的开发工具,用于构建EOSIO应用程序,让开发人员能够只需几分钟,就能够建立一个智能合约和 web 应用程序的开发环境,以及一个完全集成的单节点个人测试网络。

所有代码都存储在开发人员的个人GitHub帐户上并进行管理,更改会自动保存。

20191009185647T0QY.jpg

(我的例子中,使用了 Block.One 提供的示例代码库:https://github.com/EOSIO/eosio-web-ide)

想要了解更多,可以查看文档: https://github.com/EOSIO/eosio-web-ide/blob/master/README.md

更丰富: 首个支持 WebAuth 的区块链项目,可以无密码登陆

20191009185649ZCHo.jpg

20191009185649x77v.jpg

WebAuth 是 W3C 所创建的通用协议,EOSIO 2.0 增加了对 WebAuth 协议的支持。

在 EOSIO 2.0 中,提供了更丰富且安全的验证方式,可以支持 YubiKey 等使用WebAuth协议的硬件设备验证,而不必安装额外的软件,或者浏览器插件。

对用户来说,未来可以使用无需密码的方式,而如果dApp 支持的话,可以通过生物特征识别(例如人脸识别、指纹识别等)以及认证硬件(如YubiKey 等)的方式,来发起和签名交易,在获得安全性的同时,也获得了便利。

补充一点关于 WebAuth 的背景知识,大家可以略过。

今年,World Wide Web Consortium (W3C) 宣布 Web Authentication API (WebAuthn) 成为正式的 Web 标准。

WebAuthn 现在是一项无密码登录验证的开放标准,为 Web 应用和服务提供了无密码的公钥身份认证接口,获得了 Airbnb、阿里巴巴、Apple、Google、IBM、Intel,、Microsoft、Mozilla、PayPal、SoftBank、腾讯和 Yubico 等公司的支持,允许用户使用生物识别、移动设备等登录在线账号。主流浏览器如 Google Chrome、Mozilla Firefox 和 Microsoft Edge 都已经在去年加入了对 WebAuthn 的支持,苹果的 Safari 浏览器则在预览版中加入了对 WebAuthn 的支持。”(来源:https://my.oschina.net/wossl/blog/3020573)

针对WebAuth功能的细节,可以查看 EOSIO 代码库中的这一条信息:https://github.com/EOSIO/fc/pull/97https://github.com/EOSIO/eos/pull/7421

更安全的出块签名方式:对出块的多签名支持

出块节点的私钥虽然经过了谨慎的保存,不过,万一私钥丢失/被盗,怎么办?那么,节点只能认栽,对吧?不只是出块节点自己,对于区块链网络来说,这也会造成严重的影响。

在 EOSIO 2.0 中,针对这一极端场景,进行了安全性的优化,BlockOne 称之为: 加权多签出块方式。

很多人心里可能嘀咕“什么鬼玩意~ 你个老头子坏得很~”

不妨多解释一下。

出块节点,除了运行一台机器去产生区块之外,还需要有备份的主机运行,作为冗余备份,避免出现异常状况时候,可以备援,在主要的出块服务器遇到硬件损坏/网络问题时候,可以迅速切换到备份主机处理区块。

当前,每个出块节点出块时对区块签名,只用到一个密钥。无论是将对应的私钥存储在磁盘上、通过软件加载还是通过硬件钱包保护,都存在单点故障,一旦私钥丢了,或者硬件钱包出故障,那么,出块节点就没有别的办法了,无法用私钥继续对区块签名,只能够面对丢块的窘境。

而在 EOSIO 2.0 提供的加权多签方式的支持下,可以做到:

允许 BP 拥有备份的出块机器,可以不必将私钥信息存储在备份机器上允许 BP 能够灵活应对出块基础设施遭到部分破坏的情形

(对于此部分的理解,如果有存在错误,还请读者指教)

详情: https://github.com/EOSIO/eos/issues/7403

小结

在EOSIO 1.8 顺利部署主网之后,相应的合约升级,在10月8日也得到了BP多签授权,得以执行,而EOSIO 1.8 带来的一系列新特性,也会陆续启用。

同时,EOSIO 2.0 预览版的发布,也让我们看到 BlockOne 的持续开发进程,在接入了 WebAuth 协议,使用了创新性的 EOSVM 虚拟机之后,将会使 EOSIO 区块链的速度更快,用户体验也可以得以提升。

而 EOSIO Web IDE的发布,也帮助许多新的开发者更方便上手 EOSIO 智能合约开发,而不再需要复杂漫长的基础环境部署过程,此外,还有多线程优化等一些细节上的提升,有助于将 EOSIO 成为更适合智能合约的平台软件。

一起期待EOSIO 2.0 早日部署上线。

20191009185650QhQn.jpg

本文参考:https://eos.io/news/introducing-eosio-2/

摘自:https://bihu.com/article/1662774716

—-

编译者/作者:曹波

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...