“V神给了我1000个ETH 我用来招了两个程序员” 独立开发者做到极限就是Paul Hauner
来源 | EDCON 2019
记者 | Aholiab
出品 | CSDN、灵钛科技
在武侠世界中,有些人出身名门,凭借名门光环朋友遍天下;而有些人则是独行的侠客,行走江湖全凭手中的剑。
今天要说的Paul Hauner就是后者。出身独立开发者的他,却技术全面,尤其擅长网络安全,曾主导开发过企业级关键系统;也曾以独立开发者的身份为大型银行、政府等服务。
2015年,在欧洲旅行期间,Paul第一次听说了以太坊,并被ERC-20代币所吸引。转过年来,2016年在上海参加第二界全球以太坊开发者大会期间,与好友一起创办了Sigma Prime,聚焦于安全和测试。仅仅两年多的时间,Sigma Prime就成为了以太坊生态中最成功的项目之一。
2018年12月,V神亲自投资了三个团队,其中一个就是Sigma Prime(其他两个分别为:Prysmatic Labs和ChainSafe Systems)。三个团队每个获得1000 ETH的投资,在当时大约相当于10万美元。
由于专注以太坊开发,有些人甚至称Paul为「以太坊学家」。当然,Paul更是区块链技术通才,无论是去中心化账本还是区块链服务部署,抑或是合约开发与测试,Paul都样样精通。
近日,营长采访了这位技术天才,与他聊了自己的技术之路与对以太坊 2.0的思考。
*4月8~14日,Paul Hauner将出席在澳大利亚悉尼举行的EDCON 2019 (全球以太坊社区发展峰会),届时营长也将在前线为大家第一时间奉上干货,以及更多大咖的报道。敬请期待!
大会官网:https://www.edcon.io
独立开发者建立V神垂青的项目
营长:作为一个资深程序员,你刚开始是怎样接触到区块链的?
Paul:要是没记错的话,我第一次接触区块链应该是在高中的时候,大约是2013年,我从一个朋友那接触到了比特币。这个朋友跟我一样,也是Sigma Prime的创始人之一。
那时候我特别喜欢比特币,但是后来发现以太坊更有意思,便在2015年开始在以太坊上进行开发。2016年第二届全球以太坊开发者大会在上海举办,在此期间,我们创建了Sigma Prime。在这两年的发展中,Sigma Prime也取得了很多成绩,尤其是在安全评估、挖矿算法研究领域,以及Lighthouse项目。
当然,也接手了很多项目,包括:
-
对「Horizon State」Token合约进行安全评估(2017)
-
对「Skrilla」Token合约进行安全评估(2017)
-
对「Havven」智能合约进行安全评估(2017~2018)
-
对第四届全球以太坊开发者大会的网站进行渗透测试(2018)
-
对「Status.im」智能合约进行安全评估(2018)
-
对「ChainLink」智能合约进行安全评估(2018)
-
对「AlphaWallet」(Android版)钱包进行渗透式测试(2018)
同时,也做过一些技术研究,包括:
-
「Scalamed」的密码系统设计(2017)
-
对Zcash Equihash算法进行数学分析(2017~2018)
-
用JS实现Casper TFG二元共识(2018)
-
Solidity攻击向量和常见反面模式清单,后被收录于《精通以太坊》中(2018)
-
Lighthouse项目(2018~2019)
营长:你初次接触以太坊是什么时候?当时基于以太坊做了哪些项目?
Paul:我第一次听说以太坊这个名字应该是在2015年,那会儿我还在欧洲。当时周围的很多朋友都买入了以太币,但是由于我在旅行,没有多余的钱来买。
我记得当时以太坊称「将会改变互联网」,这引起了我的注意,随后便访问了以太坊的网站,就感觉那些代币还真的挺有意思,那些代币就是现在的ERC-20代币。
后来,我便开始参加悉尼当地的各种以太坊见面会,学习Solidity语言。那时候,我的一些朋友(也就是现在的合作伙伴)正在经营以太坊挖矿设备,我自己则致力于智能合约安全评估的研究。
2018年初,我开始为以太坊社区从PoW到PoS的转变做了些贡献。在开发以太坊改进协议EIP-1011的智能合约之前,我开始用JavaScript开发Capser TFG模拟器。此外,在支持以太坊2.0之前,Sigma Prime也在考虑建立一个验证器客户端来支持EIP-1011。 在这同时,我们也开始用Rust语言构建Lighthouse客户端。
营长:你最先接触了比特币,但为什么最后选择了以太坊的开发,以太坊生态有哪些吸引你的地方?
Paul:在我看来,以太坊最大的优点在于,它是一个没有集中控制的分布式共识系统。另外,正因为数字货币的出现,我们就可以用一种新的方式利用微观经济学,来创建一个全新的颠覆传统的新系统。
不过这并不是说以太坊是完美的,我认为以太坊开发中最不好的地方,就是要面对各种社交媒体嘈杂的声音。在这个领域中,有很多为了自身的利益或政治利益来肆意宣传或夸大自己的观点,而不是真心为以太坊的发展而发声。我个人也不太喜欢Twitter上的人气竞赛,这真的没什么成效。我自己也会尽可能避开Twitter和Reddit,因为这会让我分心。
营长:作为技术大牛,你是怎么学习区块链开发的?
Paul:刚开始的时候,我参加了当地的各种以太坊聚会和相关的研讨会。在那里,我遇到了很多有经验的开发者(特别要感谢的是Nick Addison,ConsenSys方案架构师),并从他们身上学到了很多的知识。
Nick Addison
在对区块链有了一定的了解之后,我会去思考更多的问题,创建项目并且乐在其中。那时候,我总是会去Stack Overflow网站寻找解决方案(在这里,特别感谢BokkyPooBar和他的解决方案)。其实,在众多学习网站中,我最喜欢的还是Stack Overflow。
一旦有了足够的信心和能力,我们就开始开展商业项目,这也让我们学到了很多东西,因为这些商业项目会迫使你去做一些平时不做的事情。
在那之后,我就开始逛ethresear论坛,并为github.com/ethereum做贡献,并遇到了Danny Ryan(以太坊基金会研究员),之后我们开始和以太坊基金会进行频繁的交流,最终促成了Lighthouse项目。
Danny Ryan
如果总结起来,那就是:努力尝试、多栽跟头、一点成功和Stack Overflow网站。
PoS与以太坊2.0
营长:说起Lighthouse,最近貌似你也投入了很多的经历,能谈谈你在这个项目中的主要工作吗?
Paul:与其说我的工作,不如说说我们团队的工作。在Lighthouse项目上,我们主要做了以下事情:
-
测试和实现BLS签名聚合库
-
用Rust语言实现SSZ编解码
-
扩展Rust libp2p以支持gossip/sub协议
-
用Rust修订了以太坊2.0规范
-
参与制定Eth2规范,发现bug并提出改进方案
-
参与创建统一的以太坊2.0测试储存库
-
大规模提出了以太坊2.0状态转换的基准(4M 验证器)
营长:你怎么看待Lighthouse在以太坊2.0生态中的定位?
Paul:我认为我们和其他团队并无差别,只是我们通常会和最新的规范保持一致。我们目前专注于基于规范的共识逻辑,并确保同步过程可靠且完整。
营长:你对区块链的共识机制也有很深入的研究,对于大众经常质疑的PoS算法会导致的「富者越富,穷着越穷」等观点,你怎么看待?你认为在PoS实施的第一阶段,以太坊会遇到哪些困难?
Paul:以太坊和Casper中的PoS机制是建立在大多数(即2/3)节点都是诚实的前提之下的。对于一些人来说,这比PoW时受到51%攻击的风险没有好多少,只要有人拥有了33%的权益,就可能破坏以太坊2.0生态的安全。
但这并不是说PoS机制不好,它有很多优点,比如可以让攻击者丧失资本能力(你可以硬分叉中摧毁那33%),数学上的终结当然还能节省巨大的资源。评估该算法在消费级设备上的运行效率也非常有意思。最近,我们一直在对状态转换功能进行基准测试——它现在并不是像我们希望的那么精简的运行,但我相信我们能做到这一点。
我并不认为在第一阶段(Beacon Chain)会有特别大的困难,这就是为什么得先有测试网。这和其他软件一样,也会出现bug,而且有一些不尽如人意的地方。
智能合约仍是安全的薄弱环节
营长:过去两年里,利用智能合约的漏洞进行攻击似乎是最常见的一种攻击行为。在您看来,现在情况有所改变吗?最近有没有新的风险出现?开发人员该如何应对这些安全隐患?
Paul:智能合约仍然是区块链生态系统的关键。然而,由于社会工程攻击(social engineering attack)导致了很多黑客行为,操作人员也会被黑客诱导泄露敏感信息或执行有害任务。只有通过安全意识培训,才能防止这些攻击,因为没有任何技术解决方案可以降低这些风险。
除了在智能合约级别的利用之外,区块链项目在部署时通常依赖于堆栈的其他层,包括标准数据库、 API端点、 Web和移动应用程序等,而这些层也可能会受到关键漏洞的影响。如果这些漏洞被黑客利用,就会执行欺诈任务。我经常会建议客户在执行安全评估时采用更为全面的方法,这就意味着我们不仅要评估智能合约,还得评估技术堆栈的其他层。
在我看来,开发人员的安全教育与培训仍然是目前将安全漏洞最小化的最佳方式,当然,除此之外,每个项目上线之前也应该进行适当的安全评估。
营长:那么这半年来有哪些令你印象深刻的攻击事件?
Paul:这很难说,因为在过去几个月里真的发生了太多的安全事故!其中最令我印象深刻的就是奇偶校验多重签名错误,也是我最擅长的错误之一。
不过,在过去半年里,以太坊的安全事故有了明显的改善,在我看来,以太坊平台的黑客事件已经在减少了。
营长:在你们的客户中,最常见的安全问题有哪些?
Paul:到目前为止,我们最常遇到的三个漏洞就是:熵的问题(如何产生伪随机数)、合约升级能力问题和用户/矿工非法预先交易问题。
V神给的1000ETH,我们招了两个程序员
营长:去年,V神给了包括Sigma Prime在内的三个项目各1000 ETH的投资,这笔钱你们是怎么用的?
Paul:我们非常感谢V神的大力支持!他送给我们的1000个ETH对我们有很大的帮助。考虑到像我们这样的团队不应该持有不稳定的加密货币,所以我们决定在24小时内就将其兑换成了澳元。
利用这笔资金,我们招到了一个新的开发人员—— Michael Sproul,他有特别强的验证专业背景,也为整个团队带来了很多的专业知识和经验。几个月前,这笔资金还帮我们签下了一个Rust语言开发人员。
这笔资金我们还没有使用完,加上以太坊基金会的赠款,最终这笔资金将会用来支持我们在2019年6/7月成立Lighthouse。
营长:在区块链领域中,有哪些你欣赏的人?
Paul:中本聪:没有他,就没有我们今天的发展!
V神:他在PoS方面的研究成果为这个领域带来了巨大的变化。
Danny Ryan:Ethereum 2.0时代的一个真正的天才领导者。
以太坊钱包Parity:它为Rust语言铺平了道路。
营长:请跟中国的开发者说几句话吧。
Paul:我们非常希望Lighthouse团队中拥有有中国的贡献者,我知道语言可能会是一个小小的障碍,但是我希望有才华的中国Rust开发人员能帮助我们共创以太坊Serenity!
在采访中,营长感觉Paul是个特别实干的开发者,并且对技术有信仰。作为以太坊开发者,他不断学习和适应最新的标准,结识更多优秀的开发者,并且通过实践和摸索来不断打磨自己的技术。
也只有更多这样的人存在,以太坊社区和区块链的发展才能走向新的阶段。
最后,营长再次提醒大家,4月在澳大利亚悉尼举行的EDCON 2019(全球以太坊社区发展峰会)上,Paul Hauner和更多以太坊技术大咖也会出现!
点击「阅读原文」登录大会官网查看大咖名单,把想问的问题留言告诉营长,营长会带着你的问题,与大咖面对面交流!
特别鸣谢:EDCON 主办方灵钛科技(LinkTime Tech)对本次采访的协助!