虽然久闻大名,但第一次见到Hsiao-Wei Wang却是在不久前的香港。
西铁线驶过人群鼎沸的尖东一路向西,在另一个大的人流交汇处荃湾的一个不大不小的会议酒店。以太坊核心开发者汇集于此,人们仰望的技术大牛,或者说精神支柱,依次上台。
Hsiao-Wei Wang也在其中,如果不算致辞,Hsiao-Wei Wang应该是第三位出场的嘉宾,与Karl Floersch同为「以太坊核心研究者」。
熟悉以太坊开发的人都知道,这些年只要以太坊开发者聚集的地方总能看到这样一道倩影。她声音不高,看上去甚至有些柔弱,但一谈起那些连开发者看到都眼晕的技术话题和公式,总会让人感受到她的坚定和爆发力。
以太坊台北开发者大会合影(第一排正中为Hsiao-Wei Wang)
她所研究的Sharding技术是以太坊目前最看重的方向之一,连V神也曾说这个会长远来做,这么重的单子交给Hsiao-Wei Wang可谓任重而道远。但她又有程序员的那种独有的轻松与个性,比如在决定是否接受我采访的时候,她提出的唯一要求是「不要谈两岸关系」。
那么,Hsiao-Wei Wang究竟是个怎样的人?她的技术之路又是怎样的?这个明明可以靠脸却偏偏要拼实力的妹子背后,又有哪些不为人知的故事呢?
今天,营长就走近Hsiao-Wei Wang,听她聊聊自己与以太坊及区块链的那些事。
以下内容根据与Hsiao-Wei Wang对话整理。(以下对话「区块链大本营」简称「大本营」;Hsiao-Wei Wang简称「Wang」)
“我很勇敢也很熊”
大本营:请介绍一下你的个人背景及经历。
Wang:我原本是后端工程师,大概两年前一头栽进区块链。在去年看到 Vitalik 在找对以太坊研究有兴趣的 contributor(贡献者)后自告奋勇,目前持续在sharding(分片技术)的研究与开发。
大本营:如果用几个关键词来形容你自己,会是哪几个?
Wang:出乎意料的勇敢、诚恳、熊。(黑人问号……)
在有限的范围内,我觉得「人生只有一次啊」,所以会做出一些相对冒险的选择;
而诚恳比较像是一个目标,不知道达到了没,但真的有在努力中(笑);
熊则是一个不知道帐号要取什么而加的symbol(特点),棕熊猫熊白熊都很美丽。
大本营:最近的主要工作有哪些?目前最关心的技术有哪些?
Wang:主要有:Casper/Shading/Beacon chain Spec的review与PoC实作,以及Sharding P2P networking 的研究,还有一些Devcon4的事务,喔,Devcon 4会很有趣的。
至于最关心的技术,当然还是Sharding,然后因为最近Sharding与Casper从好朋友变成超级好朋友了所以也很关心Casper。还有在补足Algorithmic Game Theory(算法博弈论)的知识。
美女开发者眼中的以太坊
大本营:你从什么时候开始接触区块链?当时对这门技术有怎样的看法?
Wang:好几年前听过比特币的存在,但实际研究技术是大约两年多前。至于看法,只能说相见恨晚。看过比特币白皮书后觉得自己被中本聪的协议设计巧思震慑,第一次感受到到能够用工作量证明来达到机率性的共识时很惊艳。
大本营:区块链技术最让你着迷的地方是什么?从事区块链开发对你有哪些影响?
Wang:最着迷的是去中心化应用的可能性!听起来很梦幻,但真正有turning the world upside down(改变世界)的潜力。
对于个人影响的话嘛,很高兴认识了很多世界各地有趣的人!要学着从不同的角度思考问题才能理解不同角色的行为。然后英文应该变好了一点点,吧(笑)。
大本营:你从什么时候开始研究以太坊?你所研究的分片技术会有哪些改变?
Wang:我大约一年半前拜读以太坊的黄皮书,开始熟悉 EVM 架构和撰写智能合约。后来对可扩展性问题有兴趣,开始专注在以太坊分片(Sharding)研究上。
当时我看到的第一个版本是 Vitalik 写的basic sharding(基础分片),这个版本很简短,但其中已经有异步跨分片交易的轮廓。之后 Vitalik 把这个版本再简化成另一个版本,并加上了无状态客户端(stateless client)与账户抽象层(account abstraction)的设计。
今年的第一个重大路线改变是第一阶段改为只有数据层,此一改变使得我们专注在可行的扩展方案的设计。在过往的设计中,shard chain 类似于目前 Ethereum PoW的侧链。
今年的第二个重大改变则是以全新的一条类似 Dfinity beacon chain 作为 sharding 设计的核心,也大幅改善了随机数产生器的设计。当然,最重要的进展是 Casper 与 Sharding 的路线合并,这点对 Sharding 路线的影响较没有对于 Casper 那么剧烈。但对我们来说,新路线整合了同一个 PoS 设计是相当合理的,同时也减少了目前大家正在使用的 PoW主链的向后兼容。
我认为,以太坊作为公链的领头羊之一,若要同时顾虑现有生态的经济议题、治理议题(governance)、扩容议题等。大幅更新的步调不易加快,但社区的活跃度和精神文化是以太坊的资产,社区的支持是最大的动能。
大本营:作为以太坊的研究者,你怎样看待这一平台?从技术上来说,你认为以太坊的优缺点各是什么?
Wang:我很喜欢以太坊的设计哲学中的「平台一般性」(Generalization)这点。以太坊的优点是兼容并蓄,但相对来说,若是使用智能合约自行开发提供特定功能,使用者付出的成本(这里是 gas)会比其他原生链就支援此功能的成本高,而且若要新增 precompile 指令也不易维护。
此外,目前多个client 端同时开发的特性也是把双刃剑,一方面要维护各个client端之间的共识,测试一定要够完整,才不会因为代码 bug 问题而导致分叉。但多client同时刺激产生更多元的生态系,更多人在检验EIP可使协议更完备,且降低了 single client fault 的风险。鉴于此,整体而言我相信是利大于弊。
大本营:作为以太坊核心开发者,在你看来以太坊的开发者最大的诉求有哪些?
Wang:主要有两个:扩容性和可用性。
扩容性,是希望平台能支持高TPS且不堵车,这点由 Sharding 和Layer 2扩容解决方案,研发努力中。
而可用性目前要能开发优秀的智能合约应用,必须要通彻地理解 EVM 才能彻底确定合约的安全性,这方面很多对于智能合约开发者的「陷阱」,希望有更好用的工具能降低门槛。
从3个阶段理解Sharding技术
大本营:你如何看待「Sharding会牺牲掉部分的去中心化特性」这一现象?除了Sharding之外,还有哪些适用于以太坊的「扩容」技术方案?
Wang:假设一开始有 1024 个 shard chains,虽然有投票权的验证节点(validators)会被随机取样去验证(attest)各个分片,即 Validator 无法自己选择为某个 shard chain 投票,但其他 full node 是可以选择只和某些 shard chain 同步,有可能一个特别火红的应用只在某一分片上有,导致有大分片和小分片的差异。
还有一点是成为 PoS 验证者的门槛,这方面已从 deprecated Casper EIP 1011 的1500 ETH 降为新 spec 上的 32 ETH。 除了 Sharding 以外,Layer 2 的扩容方案有像是 state channels、Plasma 等。
说到其他解决方案,今年值得注意的是 STARKs 在扩容上的应用研究更加深入,透过 STARKs 技术为链下的运算建立可快速验证的证明,它除了能作为 L2 扩容应用,在 Sharding 的研究上也有所帮助。
大本营:Vitalik曾说Sharding是一项长期的技术改进,这一改进大致会分为几个阶段,不同阶段以那些进展为特征?
Wang:我们现在处在的是「第零阶段」,即Beacon chain实践,这一阶段的前提是加入与 Casper 的整合。Beacon chain 会是 Casper FFG PoS 与 Sharding 的核心链,以协议提供健全的链上随机数生成机制,作为选出 shard chains 验证者的 seed,达到足够的安全性。
从长远的计划来说,Sharding也可以被划分为几个阶段。
第一阶段是,只有数据层的分片达到扩容,此时 shard chains 为PoS主链 (即 Beacon chain)的侧链。这时我们能做到类似「去中心化的Twitter」 之类的服务,但因为没有「transaction」的结构,Layer 1 应用有限,可能只能用 Layer 2 技术做复杂的应用。
第二阶段是,加上下一代状态执行引擎,例如 eWASM 能改善一些现有 EVM 的缺点;后续会再加上「跨分片交易」,目前这个实现有多种方案,但尚未达成定论。
最终的目标是,PoS主链(Beacon chain)与shard chain能有完整的 tightly-coupling,即如果主链区块关联到的分片区快是非法的,则这个主链区块也是非法的。
除此之外,社群的意见也很重要,相信这会在第一阶段测试链上线后更加清晰,我们也会因应实际状况修正路线。
大本营:你认为作为区块链开发者,最难的部分是什么?
Wang:是在「先求有再求好」和「设计到天衣无缝后再动工」这两件事上取得平衡。
一个是主链的大的升级只能靠硬分叉,如果没有在最初就精确地设计,硬分叉程序也会很丑很痛苦……甚至根本无从更新。比如说像是对目前 State Merkle Patricia Trie 的改进优化,如果要在已在主网上运行的链上大刀阔斧的改,想必是太刺激的事。
但另一方面,我们也亟欲了解社区用户对新设计的看法,况且纸上谈兵和现实世界还是有一段距离,因此,光是 Casper FFG family 上就有许多版本的 proof-of-concept。
现在的 Ethereum 2.0 也是,目前正一边完善设计一边开发中着。由于 shard chain 是全新的子链,我们有了重新设计基础协议的机会。正因为我们有信心 Ethereum 2.0 将会长远运行着,所以在初始阶段的设计决策很重要。
大本营:你认为目前从事以太坊或Sharding相关的开发者普遍存在的思想误区有哪些?
Wang:嗯,之前有看过有人觉得 Sharding 和 Layer 2 扩容方案是竞争关系,其实不然,Layer 1 和 Layer 2 方案可以互相学习,相辅相成。第二点,不是所有现在的应用加个「区块链」和「去中心化」就会变的好棒棒,很多时候是根本没有意义的,请不要这样!
女神和她的男神们
大本营:在区块链行业中,你比较欣赏的人有哪些?
Wang:啊,很多唷。
以太坊社群内的话,我觉得 Hudson Jameson 在维护小镇村的和平上功不可没,在这里谢谢 Hudson(鼓掌)。
还有 Python小组的leader——Piper Merriam,是能同时把很多事做得很好的人,很厉害(再鼓掌)。顺便一提 Ethereum Python client Trinity 虽然今年才推出,但 Ethereum 是比 Trinity Protocol 早用这个名字的!
此外,我觉得因为开源与全球化的趋势,任何人都有机会像某个十几岁开始写白皮书的那位一样成为社区、产业领袖,不过,愿意倾听他人接纳意见的人却不多,所以能够发广纳百川、不断学习的人我都很尊敬。
大本营:在个人技术提升方面,你通常会通过哪些渠道/方法进行自我提升?
Wang:我是ethresear.ch小编之一,这是 Ethereum 前沿研究的论坛。
ethresear.ch作者页面
自己平常有订阅:
weekinethereum.com
ethfans.org
unitimes.media
zeroknowledge.fm
最后,也会看看
reddit /r/Buttcoin 哈哈。
大本营:请对我们的读者和以太坊开发者说几句寄语。
Wang:期待能看到更多以太坊上的应用,同时也希望更多开发者有兴趣投入底层链的研究!以太坊底层研发的技术领域很广,从协议设计、VM、密码学、经济学、博弈论、P2P网路、编程实作、合约语言……等等,相信你能够找到一个有兴趣的主题深入研究!
最新热文:
大力戳↑↑↑ 加入区块链大本营读者⑦号群
(群满加微信 qk15732632926 入群)
(内容转载请联系微信:qk15732632926)
(商务合作请联系微信:fengyan-1101)