布洛克科技联合
blocktimes
在台湾发起【blocktimes线上专访】系列节目,走访台湾顶级区块链从业者们,促进区块链交流合作。

嘉宾介绍
第三十五期【blocktimes线上专访】blocktimes邀请Harmony联合创始人,兰荣坚进行对话。
兰荣坚:现为Harmony联合创始人,曾是拥有超过500名来自Google、Facebook、LinkedIn工程师的区块链社群ABC的联合主席。曾任Google Play Store工程师,发表过十余篇关于地图可视化和时空数据管理的学术论文。
【第一问】
Wade:请您先介绍一下自己,以及是怎么踏入区块链及加密货币领域的?
兰荣坚:大家上午好,我是Harmony(和梦链)的联合创始人兰荣坚,很高兴和大家讨论分片技术的细节,以及现阶段分片技术的发展方向。Harmony是一天基于分片技术的高性能公链项目,团队位于美国硅谷。我17年在Google做search的infra,当时花了很多时间研究区块链基础技术和共识算法,之后也接触过Zilliqa和Thunder等项目,最后和Stephen一同创立了Harmony。
【第二问】
Wade:Harmony是一个通用性公链计划,与其他公链相比,您关注的面向有什么不同?它的核心技术有哪些?
兰荣坚:现阶段区块链的一个问题就是扩容问题,或者说是速度慢的问题。很多项目在用分片技术解决这个扩容问题,Zilliqa可以说是第一个利用分片技术的公链项目,Zilliqa对网络层和交易层进行了分片,但是没有对状态进行分片,这里的状态是指区块链帐本的数据,所以zilliqa的每个节点都需要存储整个网络全部帐本信息。对于一个高性能区块链,这个帐本本大小增长极快,一年就要有上TB的大小,这样对于存储容量小的节点来说是个坏消息,因为他们就不能加入的网络中了。Harmony与Zilliqa最核心的区别是Harmony做了状态分片,可以容许更多的小节点加入网络,从而有利于网络的去中心化。
此外,Harmony的分片技术利用了安全的分布式随机数产生过程,利用这个安全的随机数,可以将验证节点随机得分配到不同的分片中,避免单一分片收到恶意节点的攻击(1%attack)。在这点上其他基于分片的公链并没法保障完全避免1% attack,主要原因是因为节点的分片过程的随机性没法保证,Zilliqa是基于PoW hash value来对节点进行分片的,而这个hash value很容易被恶意干扰,是它并不是完全随机的,这样恶意节点就可以蓄意进入某个单一分片,从而将其攻占。 Harmony的分片可以保证一个完全的不可预测,不可干扰的随机分片过程。进而保证整体分片网络的安全性,是单一分片的安全性和网络整体安全性一致。
其他方面,Harmony采用了双层区块链的构架,包括一条信标链(beacon chain),和多条分片链。信标链负责产生随机数,以及接受抵押Staking,分片链负责同时处理交易。分片间的通信由跨片交易完成。Harmony采用的共识算法是基于BLS多重签名的改进式pBFT算法,速度快,并且具有实时最终性。交易可以在几秒内完成确认。Harmony的共识算法相比传统的pBFT算法,因为利用了BLS多重签名的特性,节约了大部分的网络开销,把网络复杂度从O(N^2)降低到了O(N)的复杂度,使得共识算法可以支持上百个节点同时进行。
同时,大家公认的区块链的瓶颈在于网络开销问题,一般区块链利用了P2P Gossip的方法进行通信,效率低,容易造成阻塞。而Harmony在网络层进行了众多优化,包括基于纠删码的区块广播协议和基于Kademlia路由的跨片通信协议。
【第三问】
Wade:请问Harmony的激励模型为何,它在设定上有什么优点吗?
兰荣坚:Harmony的激励模型是基于Staking(PoS)的模型。验证节点要想进入网络做验证,需要预先抵押一部分代币,这个需要抵押的数量是浮动调整的,调整的具体数字依据全网全部抵押的代币数量决定。节点Staking之后,代币会被锁定,几个周期。这段时间节点可以进入分片进行验证工作,如果一切正常,节点将得到区块奖励和交易费作为回报。同时我们也加入了惩罚机制,如果节点被证明没有遵循正常的验证流程,或者长时间停止参与共识签名,它的stake就会被slash(没收)或者它的投票权会被稀释。
这样做的目的是尽可能打击恶意行为,而正向激励合法行为,保证整个网络的安全性。同时我们也支持托管功能,这样持币者不需要自己作为验证节点加入网络,只需要把自己的币托管给第三方验证节点,即可得到一定的staking收益。
【第四问】
Wade:公链的成熟发展需经历多次的迭代更新,请问您会以何种方式让社群来参与重大更新又兼顾效率呢?
兰荣坚:公链的主网上线只是一个起点,之后还要有不断地更新和完善,功能的迭代,才能真正满足不断变化的需求。对于网络的更新,我认为对于纯粹技术上的迭代和改进,在不影响社区用户的前提下,可以用项目方主导决定更新。而对于可能影响社区用户利益的,协议改变,经济模型改变等,这些不能用项目方决定,而需要由社区以代币投票的方式来进行,这样能最好的,根据每个人的不通情况,反应社区的需求,最后是公链的更迭更好地服务于社区。总而言之,公链自主网上线起就是属于社区的,而不是项目方的,项目方应该代表社区的利益来行事。
【第五问】
Wade:吸引开发者与用户是公链脱颖而出的关键,您对此目前有哪些策略?
兰荣坚:在这点上Harmony非常认同,我们很早就开放了Discord和技术论坛,方便开发者和使用者和我们直接沟通需求和意见。
同时我们希望最大限度降低开发者的学习门槛,所以我们在主网上线是会兼容Solidity开发环境,这样所以以太坊的开发者都可以快速的上手Harmony,把他们之前设想了但没法实现的高频应用实现到Harmony上。
之后我们还会升级支援基于WASM的智慧合约开发,WASM是一种支援多重语言的编译环境,这样更多的其他语言的开发者也可以上手Harmony。在使用者层面上,我们也将对接法币入口,并且提供法币入口SDK,让更多非区块链应用可以直接对接Harmony,让使用者可以无缝利用法币兑换虚拟代币。在原生应用中直接体验区块链技术的好处。
【第六问】
Wade:目前能出现较高流量的DApp都集中在博弈、投资、游戏,您怎么看这个现况?您认为公链可以怎么促进更多元化的DApp生态?
兰荣坚:我认为区块链的应用还是要和价值及信任挂钩,如果这个应用不涉及价值和信任,那其实不需要在区块链上做。所以对于博弈,投资,游戏等应用,我个人认为,在合理的设计和满足使用者需求的前提下,是区块链落地的试金石。
尤其是游戏类应用,在全民娱乐的大潮中,游戏已经成为人们娱乐中的一个重要方式。而游戏内的虚拟物品是具有实实在在的价值的,很多虚拟物品都被高价买卖,这证明游戏内在是有价值流转的,所以很适合利用区块链的特性将这部分价值体现出来。
对于区块链游戏应用,我认为现阶段有两大技术问题需要解决:
第一是区块链的速度问题,对于大规模,高频的游戏应用,现有区块链的速度还是难以满足需求。
第二是游戏中的公平和随机过程的安全性,这一点对于博彩类游戏尤为重要,之前EOS上很多博爱游戏被攻击,都是因为随机开奖过程被恶意篡改。Harmony的分片扩容方案和安全的分散式随机数产生器,可以有效地解决这两个重要问题,让更多更安全的游戏应用在Harmony的实现。
【第七问】
Wade:您的团队成员来自Google、Apple、Amazon以及许多成功的公司,也包覆许多科技领域的专业人才。您认为这样的团队带来什么优势,以及是以什么样的视角看待区块链产业?
兰荣坚:作为一个公链团队,最重要的还是技术能力,作为来此硅谷顶尖公司的技术人员,Harmony团队的最大优势就是技术实力。我们在Google,Amazon,Apple等公司都有开发大规模分散式系统的经验,开发的产品曾服务过全球上亿人,这些经验为我们打造服务全世界人民的高性能公链Harmony提供了技术支援和产品经验。
我们团队成员在地图服务,搜索服务,人工智能,大资料采矿等方面都有深厚的功底,这些背景让我们可以更好的服务实际的应用场景,为它们提供最合适的技术支援,也为开发者提供最顺手的开发工具。
继续阅读
阅读原文