专访zilliqa联合创始人贾瑶琪:分片技术比肩以太坊?Zil项目大起底!(上)

价值互联网的呼声愈演愈烈,公链的需求已形成天下逐鹿之势。而区块链的“不可能三角”依然桎梏着公链的真正落地,众多的区块链项目孜孜不倦以求提高公链吞吐量和安全性的方法。而数月以来大火的分片技术被看做公链的未来,通过节点数目的增加,网路吞吐量随之增加,然而技术上存在的复杂性限制了项目的落地。公链项目Zilliqa第一个将分片技术实现落地,运用分片技术和共识协议提高吞吐效率,PoW+PBFT混合共识机制保证网路安全性。

矩阵数字经济智库有幸专访了Zilliqa联合创始人贾瑶琪,矩阵数字经济智库常驻专家,分享了Zilliqa的团队构成、项目发展、分片策略、共识机制等,他期待Zilliqa成为推动区块链技术整体发展的公链项目。

关于个人

Q:能否谈谈您的职业发展经历?尤其是与区块链相关的经历。

我本身是做网络安全底层协议和算法的,2008-2012年,我于华中科技大学取得计算机安全领域的学士学位;2012-2017年,我在新加坡国立大学读博期间,重点研究的也是计算机安全、网络安全、隐私保护和可扩展的分布式网络等,曾在CCS、USENIX Security等国际顶级安全会议发过多篇学术论文,获得了W2SP和ICECCS最佳论文奖。这期间,从2014年起,我开始研究P2P系统的隐私保护的相关学术内容,以及如何使用新的密码学算法和可信硬件增强P2P系统的隐私性和提高共识协议的效率。我与导师Prateek Saxena和学弟Loi Luu有过很多关于区块链的底层P2P系统的可扩展性和隐私保护的讨论,始终认为分片技术和新的智能合约语言可为区块链的发展作出贡献。未来,我们也会一直着重在可扩展和隐私保护上面进行研究。就我个人而言,我也会践行一直以来的梦想:Decentralize the Web in a secure/scalable/incentivized/privacy-preserving manner.

Q:能否介绍一下您在Zil具体负责哪些工作?以及Zil技术团队的成员和构成?

我是Zilliqa的联合创始人,也是技术总监,目前日常的工作主要就是带领我们的技术团队进行跟项目相关的所有系统设计和技术开发,比如大家了解的分片技术的架构设计以及具体实现都是我们技术团队完成的。Zilliqa团队总部在新加坡,目前在伦敦设有负责研究的分部。团队成员主要来自于新加坡、印度、英国,德国,丹麦,美国,中国等地。Zilliqa技术团队总共有将近20名成员,包括多名名校毕业的博士和硕士,以及在工业界多年的资深工程师。此外,我们还有一个科研团队,他们主攻智能合约语言Scilla及其相关的内容。

关于项目

Q:当初为什么为什么会发起Zil这个项目?它要解决哪些问题?愿景是怎样的?

2015底开始,我们的一些团队成员已经开始研究将分片技术用于公有链提高其吞吐量,并将成果发表在2016年的计算机安全顶级会议CCS上。这也是学术界上第一次将分片技术用于公有链。2017年夏,我们团队研究区块链的分片扩容技术已经两年了,我们做的一系列实验已经证明在区块链领域应用分片切实可行且潜力巨大。与此同时,我们认为区块链扩容、提升安全性等问题已经成为阻碍行业发展的最亟待解决的问题。正是在这种“天时地利人和”的背景下,我们正式启动了Zilliqa项目。Zilliqa团队成立的初心有两个:解决区块链的扩展性问题,使网络吞吐量达到每秒数千上万从而满足日常处理需求;同时为开发人员搭建智能合约应用提供一个安全、可靠的开发环境。为了实现我们的初心,我们将一方面落地我们的安全分片扩展技术,另一方面推出我们全新的可进行形式化验证的智能合约语言Scilla。

Q:Zil的商业模式是怎样的?

Zilliqa的经济模型和以太坊类似,去中心化的应用(Dapp)会使用ZIL来支付燃料费给节点用来运行Dapp的智能合约。用户使用对于燃料费的收取方式和额度,我们之后会发布更多细节。在系统运行的开始十几年,系统也会根据节点对于协议运行的贡献定期发放给节点矿工费。当越来越多的Dapp运行在Zilliqa上,同时越来越多的用户使用这些Dapp和Zilliqa的时候,ZIL的价值也会相应的提升。

Q:底层公链的竞争非常激烈,Zilliqa在行业内处于什么样的地位?相比较于其他的竞争者具有怎样的优势?

Zilliqa团队做这个项目的初衷并不是为了和别的项目竞争,而是为了推动区块链技术整体的发展。在此我愿引用一句我们在FAQ中的话:在区块链这样的开源框架下,谈论竞争意义不大。因为当前区块链最大的问题是扩展性,每个项目都提供了自己的解决方案并且创造了项目之间互相学习的健康环境,这是十分可贵的、也是有利于区块链技术整体发展的。每个项目通常有自己的强项和弱点,尝试和其他任何区块链竞争会导致这个项目无处容身。我们的哲学是明确一个想法的长处,跟进它并且对不断学习进步保持开放的态度。

Q:您认为当前分片技术的实践上存在哪些需要解决的问题?

分片技术原理听起来很简单,但在实际落地过程中要注意以下几个关键问题:

1、对女巫攻击的防御。目前来看,对于这个问题,已经经过时间考验且被证明有效的方法就是PoW,因此Zilliqa就采用PoW作为矿工加入网络的标准。

2、创建分片、给分片分配节点和任务。如每个节点如何选择它去哪一个分片;过一段时间,整个网络肯定也有旧节点要离开,新节点要加入,怎么实现这些新旧节点的动态交换;以及每个分片里的节点处理交易,还要实现协议控制,这要如何做到高效等。每个节点分配到哪当然不能由某特定个人或团体控制,因为如果这些人决定作恶,那么他们可以将所有恶意节点集中在一个分片中来损害网络的安全性。正如之前提到的,Zilliqa采用的是随机分片和动态洗牌的方式来保证网络的流动性及安全性。

3、分片大小。分片里的节点数量越少那么达成共识也会也越快,效率也会越高。但同时,如果分片中的节点数目过少,那么攻击者就会更容易控制它。且每过一段时间,如果一个分片里面的节点掉线或长时间联系不上,那么该分片里的总节点数就会进一步减少,那么安全性也得不到保证。正如方才提到,我们通过已发表的论文用数学运算证明当每个分片的节点数量不低于600个时,安全性和效率能够得到较好平衡。

4、跨片交易。区块链领域的技术专家和工程师们普遍认为,因为跨片交易需要锁协议,因此其开销成本很高,当跨片交易数量上升时,会影响整个网络的吞吐量和经济效益。我们目前主要通过两方面来应对这个问题:一方面,在分片设计之初就尽量避免跨片交易的产生;另一方面,我们在最开始的Zilliqa分片论文中也提到了atomic commit protocol技术方案,这也是我们这几年来在研究的方向之一。除此之外我们还在研究了多个其他备选方案,我们将在实现相对优秀的方案以后,将细节分享给大家。

5. 智能合约分片。不同的交易可以在不同的分片里面调用同一个智能合约,那么智能合约执行的结果和状态会变得不一致。为解决这个问题,我们可以使用两阶段提交协议和跨片通讯,锁住在不同分片里面相关的智能合约的状态,来保证智能合约的数据一致性,但是智能合约就不能被并行地执行。为了保证并行运算,我们团队研发出了另一种方法,就是通过确定性分配,来解决智能合约冲突问题。我们通过研究大量的智能合约,对这些智能合约的交易进行分类。然后我们可以很好的通过我们的算法将不同类交易放在不同的分片里面进行并行处理,同时防止双花攻击和数据不一致性问题。

贾瑶琪

Zilliqa 联合创始人兼技术总监、区块链和信息安全技术专家。新加坡国立大学博士,曾任该校研究员,重点研究领域是:可扩展和隐私保护的分布式网络。他目前致力于下一代可扩展高吞吐量区块链系统Zilliqa的设计和实现。有多篇学术论文发表于 CCS,、USENIX Security 等国际顶级安全会议,曾获 W2SP 和 ICECCS 最佳论文奖。其研究成果被多家业界公司如谷歌和苹果采纳,并得到了业内知名媒体 Dailydot、Gizmodo、Techspot 等的广泛报道。

矩阵财经出品

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180926G08SOX00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券