Zilliqa进度更新第18期

7 个月前 · 原创文章

2018年10月2日

Yiling Ding 发布于Zilliqa博客,Rita译

大家好!从本期双周报开始,我们将把发布时间由原来的周一调整为新加坡时间周二上午,从而确保我们在伦敦的团队也有充足的时间为大家准备最完整的更新内容。期待大家的持续关注!

本月,Zilliqa将在全球多国出席活动、举办有关研讨会,并进一步加强市场和商业开发方面的工作。我们诚挚邀请大家参加我们的活动,来和团队面对面交流!在此,我们也很高兴与大家分享过去两周Zilliqa在业务和合作伙伴方面取得的重要进展:

进军欧洲 — — 成立伦敦办事处

随着伦敦办事处的成立,Zilliqa将以更加积极、踊跃的姿态开拓欧洲市场、动员欧洲社区。本月,我们将在欧洲参加和举办多场活动,拉开欧洲业务拓展的序幕,其中的重头戏之一就是即将在伦敦举办的为期两天的黑客马拉松活动。我们很高兴能与欧洲社区成员加强互动和交流,更多精彩敬请期待!

赞助CRYSTAL中心

Zilliqa项目最初是由新加坡国立大学助理教授Prateek Saxena的学术实验室孵化的,由包括Kyber Network现任CEO Loi Luu等在内的研究团队共同创建。这个最初被称为ELASTICO的论文(地址:https://www.comp.nus.edu.sg/~loiluu/papers/elastico.pdf),提出了在区块链构架中能够通过使用安全的、可扩展的分片协议,达到网络吞吐量随着节点数量不断增多而不断提升的目的,之后才一步步有了现在的一切。

因此,我们非常荣幸能够支持Zilliqa的首席科学顾问、Prateek Saxena助理教授和副教授Keith Carter以及一个一流的学术团队共同成立CRYSTAL中心(地址:https://crystal.comp.nus.edu.sg/)。CRYSTAL中心是新加坡国立大学计算机学院的学术智库,专注于研究区块链和加密货币。我们很自豪能够回馈学术界、Zilliqa的诞生地,并期待不断汲取学术团队的最新创新成果,永远战斗在科技研发和技术实现的前沿第一线。

宣布与LayerX和DMM合作

9月19日,我们在新加坡见面会上正式宣布了与LayerX和DMM.com的合作伙伴关系,我们将共同推动全新的、安全智能合约语言Scilla(地址:https://scilla-lang.org/)的推广和普及。

Zilliqa将结合DMM.com和LayerX在日本的强大本地资源,帮助他们在国际区块链领域建立自己的影响力。DMM.com和LayerX还将针对日本开发人员举办一系列有关Zilliqa技术和如何在Zilliqa上搭建应用的普及、学习研讨会,推动这些技术在日本的开发和推广。

DMM.com是一家总部位于日本的互联网企业集团,拥有在线购物、视频点播服务等多元化的业务。管理DMM.com的公司是一家在线娱乐网站,其子公司DMM.com Securities的全球外汇交易量位居第二。

LayerX是Gunosy Inc和AnyPay Inc的合资企业,Gunosy Inc在东京证券交易所上市(股票代码:6047)。LayerX专注于区块链技术,并提供智能合约的开发和咨询、智能合约审计及区块链领域的其他开发和咨询服务。

我们在新加坡的联合见面会,由以太坊新加坡组织发起,现场座无虚席

CEO心书宣布与DMM.com和LayerX的合作伙伴关系

同往常一样,如您想要了解Zilliqa的更多信息或与我们讨论项目技术,请随时通过以下官方渠道与我们联系:

电报群: https://t.me/zilliqachat

Slack:https://invite.zilliqa.com

推特:https://twitter.com/zilliqa

Reddit:https://www.reddit.com/r/zilliqa/

Github: https://github.com/Zilliqa/zilliqa

Gitter:https://gitter.im/Zilliqa/ecogrant(开发相关专用频道,包括“生态构建资助计划”)

即将举行的活动

欧洲

1、马耳他

时间:10月3–5日

活动:DELTA峰会2018

https://delta-summit.com

2、英国,伦敦

时间:10月6–7日

活动:持续两天的Zilliqa开发者研讨会和黑客马拉松活动

https://www.eventbrite.com/e/free-2-day-technical-deep-dive-developer-workshop-hackathon-with-zilliqa-tickets-497873172063、西班牙,巴塞罗那

时间:10月16–18日

活动:Blockchain Solutions World大会

https://www.blockchainsolutionsworld.com/

4、西班牙,巴塞罗那

时间:10月19–21日

活动:Kairos欧洲峰会

http://kairossummit.eu/

5、德国,法兰克福

时间:10月22–23日

活动:East-West Crypto Conference

https://ewcc.io/

北美

1、美国,旧金山

时间:10月8–9日

活动:旧金山区块链周(展位号211)https://sfblockchainweek.io/

可申请免费的Scilla研讨会入场券:https://tinyurl.com/zilliqa-devs

2、美国,匹兹堡

时间:10月12–13日

活动:卡内基梅隆大学的Scilla研讨会

https://meet.google.com/linkredirect?authuser=0&dest=https%3A%2F%2Fgoo.gl%2Fforms%2F1MHdbehF6XO5elOq1

亚洲

1、日本,东京

时间:10月21日

活动:BlockChainJam 2018

https://blockchainjam2018.peatix.com/

2、印度尼西亚,雅加达

时间:10月23–24日

活动:Zilliqa的联合创始人之一Juzar Motiwalla将出席2018年雅加达Tech in Asia大会,并在SEA专题区块链创新会议上发言

https://www.techinasia.com/events/jakarta

技术进展

过去两周,我们的技术团队一直致力于整合Gossip协议和升级协议、支持多GPU挖矿并进一步改进了Scilla解释器。我们还在官方博客上发布了系列文章,介绍如何在Zilliqa上进行开发,文章链接:https://blog.zilliqa.com/budil-savant-ide-566cf6d50c07

支持多GPU挖矿

在之前的双周报中提到,我们已经完成了使用OpenCL和CUDA支持单GPU设备挖矿的部署。本周,我们改进了系统从而支持多GPU挖矿。现在,如果您有多个支持OpenCL或CUDA的GPU,就可以将它们设置为在本地测试网中同时挖测试币Zil。请将constants.xml中的NUM_DEVICE_TO_USE设置为电脑或笔记本支持的物理GPU的数量,之后您就可以运行带有多个GPU设备,通过运行PoW挖测试币Zil。

Gossip协议

使用Gossip协议的目的是为现有的广播机制提供有效的替代。

当前的P2PComm::SendBroadcastMessage的广播机制非常耗费资源。节点需要发送O(n)的消息,这需要大量线程并打开许多TCP连接。

我们已经为我们的广播机制实现了具有pull&push模式的Gossip算法。协议背后的想法是,一个节点可以随机选择几个邻居来推送消息,这些邻居会频繁地将相同的消息推送给他们的邻居。同时,网络中的节点也将从其中一些邻居中随机拉出以与它们同步。使用这种基于pull&push模式的Gossip协议,我们可以在O(log n)轮和O(ln(ln(n))的消息中传播消息,其中n是参与Gossip协议的节点的数量。

升级协议

对于任何系统来说,能够使用新功能或补丁进行升级或更新来确保系统的安全性是一项至关重要的功能。我们已经实现了升级协议的首个版本。

该过程如下:

一个网站(如https://latest-release.zilliqa.com)托管最新版本的源代码和由多方签名的(如Zilliqa Research)具有SHA-256值的二进制文件。软件版本将存储在名为VERSION的独立文件中,其中包含版本信息、预期DS周期和SHA-256值。

在每个DS周期开始时,每个DS节点都会检查网站的状态。如果签名有效且SHA值是新的,则DS节点将下载新版本软件。之后,DS领导者将向DS委员会公布升级信息(新版本和预期的升级DS周期),并生成包含此升级信息的DS块。在分片节点收到DS块后,他们将下载最新的软件以准备更新或升级。

在DS块共识结束时,每个节点将检查下一个DS周期是否是预期的待升级的周期。在预期DS周期之前的DS周期的空白期结束时,每个节点(尤其是DS节点)将包括DS信息的当前状态存储到本地文件中。随后,当前运行的进程调用新编译的实例以从本地文件加载状态。完成后,新实例将终止旧实例,并开始接收重用相同端口的传入消息。每个节点都可以在预期的DS周期开始时启动运行升级协议。

Scilla解释器

过去两周,我们一直在进行Scilla解释器的性能实验。为此,我们使用现有工具和手动方法来分析解释器。结果显示在折叠过程中,模式匹配花费了相当多的时间,而且解释器还构建了错误的消息,导致对性能产生了巨大的影响。因此我们修复了这两个问题,使折叠大约1500个元素的列表时效率几乎提高了80倍。在此过程中,我们还修复了其他一些较小的性能问题,并计划在未来几周内进行更多分析和改进。

我们还对数据类型的一些内部表示进行了更改。例如,我们现在用本机整数表示整数数据类型:以前,所有整数都表示为字符串,具有成对的宽度,而现在已更改为使用本机表示形式。我们还修复了字符串、整数和字节字符串的哈希:以前,这些值是基于非标准字符串序列化进行哈希处理的,我们现在根据标准内存布局或换句话说原始数据来哈希这些值。因此,我们现在可以在其他编程语言中兼容这些数据类型的哈希。

我们现在还支持0 arg`buinin`s的thunk语法。通过在末尾添加`()`来修复调用`builtin schnorr_gen_key_pair()`的语法。此语法现在类似于使用OCaml等语言编写thunk的方法。

完成的其他任务摘要:

为`stdlib`添加了整数比较实用程序。

添加了静态合约健全性检查程序,使`scilla-checker`能检查重复转换参数、重复字段、缺少强制转换参数等错误。

为Scilla文字添加了JSON打印支持(问题#175)。这对于文字的结构化和可解析打印(例如在错误打印期间)非常有用。默认情况下禁用此选项,默认情况下是更易于阅读的文字打印。

用Scilla编写了一个多重签名钱包合约。

开发工具

过去两周,我们一直在努力支持我们的JavaScript客户端。它的上一次迭代将所有功能捆绑到一个顶级导出中,并在内部使用`fetch`发出请求。因此,我们认为以下这些限制有待改进:

开发人员必须导入所有功能,即使他们没有使用所有的。

测试更加困难。

没有`provider`的概念,使构建像Metamask这样的应用程序很困难。

为了解决这些限制,我们已经将库移动到由6个独立模块组成的单块中。所有顶级模块也采用`provider`实例,这样就可以编写自己的模型或测试,甚至可以一起使用不同的传输。

此外,这个新版本还包括对智能合约事件的支持,这是一个非常需要的功能。而且一旦广播交易,库就会自动轮询查找节点以进行确认。

我们期待在本周结束时发布测试版。我们也明白刚开始库会比较原始,所以请大家多一点点耐心,如果您在使用过程中遇到任何问题我们将随时记录并改进!

欢迎加入Zilliqa

我们正在积极招聘高素质人才,共同挖掘Zilliqa的最大潜力。我们招聘的人员有:具有深厚C ++经验的程序员、编译器工程师和商业开发。如果您可胜任或有推荐,请随时联系careers@zilliqa.com!

Zilliqa新闻报道

Crypto Briefing对Zilliqa的介绍:

https://cryptobriefing.com/what-is-zil-introduction-to-zilliqa/

关于“质子计划”的报道:

https://thirtyk.com/2018/09/20/qa-zilliqa-dong/

https://cryptocrimson.com/latest-zilliqa-zil-partnership-news-with-mindshare/

https://coinreport.net/zilliqa-blockchain-alliance/

关于与LayerX 和DMM 合作的报道:

https://tokentops.com/news/zilliqa-partners-with-dmm-and-layerx-to-expand-adoption-of-scilla-in-japan-zilliqa-news-september/

关于CRYSTAL 中心的报道:

https://www.connectedtoindia.com/nus-computing-forms-blockchain-think-tank-crystal-4597.html

https://www.cryptoninjas.net/2018/09/18/national-university-of-singapore-forms-academic-cryptocurrency-think-tank/

https://blocktribune.com/blockchain-research-lab-and-think-tank-established-by-national-university-of-singapore/

在德国柏林Dezentral大会上Crypto Bulk对心书的采访:

https://www.youtube.com/watch?v=LQtNbaHzzQs

如果您支持和信任Zilliqa,欢迎转发到朋友圈,让更多的人认识Zilliqa。

如果您对项目有什么疑问,欢迎到评论区留言,我们会及时、认真回复每一个问题!

– END 

往期推荐

Zilliqa的设计构思(第1部分:网络分片)

https://mp.weixin.qq.com/s/ib2F2cg0OUgN-_etHt9qVQ

Zilliqa 的设计构思(第2部分:共识协议)

https://mp.weixin.qq.com/s/pKJqDRf31LOW88jpz0xVZQ

Zilliqa 的设计构思(第3部分:使共识更有效)

https://mp.weixin.qq.com/s/O6W3q14ho2CULzsp7hJpbw

Zilliqa生态构建资助金首批参与项目介绍

https://mp.weixin.qq.com/s/Wl7MMKihDaQjUOCRZI-yEQ

Zilliqa

下一代高吞吐量区块链平台