采写:cynic,极客web3贡献者

受访者:响马,fibjs创始人

编辑:Faust,极客web3联创

加密技术名人响马:公链追求高TPS毫无意义,DID+可验证凭证或是未来新方向

导语:响马,FIBJS项目创始人,92年从事软件开发至今,已有30年经验。响马在1994年接触互联网相关技术,1998年创办华语圈首个大型综合社区网站——西祠胡同,2012年创办孢子社区,2018年涉足EOS生态,目前专注于fibjs和EOS相关的底层设施开发。

加密技术名人响马:公链追求高TPS毫无意义,DID+可验证凭证或是未来新方向

本次访谈从响马对EOS的回忆开始,引申到区块链背后的政治哲学。他认为:

  • 追求极端TPS的是伪区块链,高性能其实是最不重要的一环;
  • POS的核心是如何选出长老,本质趋于联盟链。而EOS通过治理来分配出块权,涉及到公共治理权的来源;
  • POS链的股权制存在剥削,原生Token持有者有治理权,持有其它资产的人却没有。这是引入智能合约所引发的问题,以太坊为首的智能合约区块链,从保护私权,变成管理公共资产,引申出了一系列复杂模糊、不好解决的问题。比如头重脚轻,上层资产太重。
  • 支持智能合约和Defi的以太坊管辖了公共资产,但相关权力分配不明晰合理,比如借贷协议凭什么采用并相信某些预言机。Permissionless的合约部署及采用,授予了许多个体以没有被充分监督的权力,这连锁反应产生了一系列问题。
  • 用户并不关心底层技术,他们想要的往往是简单、得心应手的产品,而不必是最完美的。
  • 太坊现在其实是通过去中心化技术形成的一个中心化的信任中心。
  • DID+可验证凭证也许是一个未来方向,它可以连接分散的网络,无需信任与边界。
  • 只要有链就有共识,有共识就有边界,有边界,就无法做到互通。我们要做的就是一个没有边界的,没有信任的协议,这才是下一代互联网的属性。

加密技术名人响马:公链追求高TPS毫无意义,DID+可验证凭证或是未来新方向

访谈全文

1.Cynic:我们从一个问题引入本次对EOS乃至新公链的讨论吧。我们都知道,EOS在2018年曾无比疯狂,其IC0募资规模达到42亿美元,一度震惊区块链乃至传统金融圈,让无数上市公司都黯然失色。但时至4年后的今天,EOS生态已然势微,市值缩水98%,甚至逐渐被世人遗忘。

在此,您能否靠着对“2018之夏”的记忆,简单讲述下您对EOS的回忆与其跌宕起伏?

加密技术名人响马:公链追求高TPS毫无意义,DID+可验证凭证或是未来新方向

响马:我的经历代表了很多从传统技术圈进入区块链的人的经历——当时总是被“教育”到,BTC很慢,使用成本很高,但它的价格却涨得很高。这个时候,我们想让区块链能够承载更广泛的业务和更大规模的市场,显然就要让区块链的吞吐量变得更高。

EOS在这样的时代背景下,提出了每秒100万TPS的惊人指标,虽然现在大家知道,仅就单链而言EOS远做不到这一点,但在那个时代,它却给了大家以幻想的余地。EOS是不是真的解决了区块链的效率问题?区块链可以变得很快,可以重新容纳更多业务,可以创造更大的市场?

在单链生态上,EOS在一段时间内的表现其实不错。单从性能来看,经过我们的优化后,可以达到3万TPS。EOS无论是从性能还是在生态上,其实都曾是一个不错的项目。但我认为区块链的核心不是性能,而EOS过于注重交易处理速度和吞吐量问题。对高性能区块链的叙事,我的观点大概是在2019年前后开始转变的。

2.Cynic:我记得您之前曾说,EOS用了半年时间,堵死了高性能公链这条路”,这个应该就是您提到的思想转变?

响马:这个转变的过程是什么?EOS的发展,让我们在技术实践中发现了问题。我们可以和其他链进行对比,比如说BTC,到现在为止,BTC的数据量规模是比较稳定的,我们甚至可以在几小时内验证完历史数据。但对于EOS,哪怕只同步18年到19年底这部分的历史数据,我们跑一个全节点都会感觉到同步时间的漫长。这其实违背了区块链和密码学的宗旨: Don’t trust,verify.也即自己去验证数据,不必信任其他人。但过长的历史数据同步时间,抬高了运行全节点的门槛,意味着你无法快速完成验证交易的过程,大多数用户最后只能长期信任第三方节点的数据验证结果。

加密技术名人响马:公链追求高TPS毫无意义,DID+可验证凭证或是未来新方向

(gavin wood在solana首次宕机后发表的评论,指出用户能低门槛运行全节点才是区块链的真谛)

我们发现,在越来越多的区块链项目中,用户只有依赖云服务商,才能验证区块链账本数据。

这个时候我们就会反思——区块链的第一性到底是什么?什么样的业务应该用区块链,什么样的业务不该用区块链?要不要为了TPS去牺牲安全?要不要为了高性能去牺牲可验证性?当我们失去了数据的可验证性、资产的可验证性,区块链跟支付宝还有什么区别?我为什么不用支付宝而去用区块链?

后来我意识到,追求极端TPS的是伪区块链。区块链应在效率和安全之间找到平衡,高性能实际上是区块链中最不重要的一点。

3.Cynic:EOS创始人BM之前还做过两条链,和EOS一样用的都是DPOS共识。您怎么看DPOS及其背后的哲学? 因为DPOS中的D:Delegate委托机制,似乎让EOS天然具备了链上治理能力。

加密技术名人响马:公链追求高TPS毫无意义,DID+可验证凭证或是未来新方向

响马:共识机制在我的定义里只有两种,要么POS,要么POW。POW来源于计算能力,而POS来源于股权。POW更Permissionless,而POS的核心是如何选出长老,本质上会向联盟链靠拢。

同为POS体系的公链,以太坊简单的通过质押,通过随机选拔共识节点,然后去尽量避免人为主观介入的比重;EOS考虑更多的则是通过公开治理来分配出块权。

POS总会产生一个问题:公共治理权的来源是什么?在POS中,Token是这个权力的来源,大家通过Token质押量来决定个人的治理权,也就是股权制。这不像国家治理,国家政府的权力来自于人权的让渡,采用的是人权制。

股权制存在剥削问题,原生Token持有者有治理权,持有其它链上资产的人却没有。这是引入智能合约本身带来的巨大难题。以太坊为首的智能合约区块链,从保护私权,变成管理公共资产,必将遇到更多问题。

加密技术名人响马:公链追求高TPS毫无意义,DID+可验证凭证或是未来新方向

4.Cynic:您提到的“引入智能合约带来了巨大问题”,是指?

响马:可以这么打比方,比特币只是个账本,没有智能合约,使得比特币只是个记账工具,只记录私有财产的转移,只涉及私权,这比较简洁,权力模型是合理的;但以太坊引入智能合约后,本质成了去中心化的云服务。

支持智能合约的以太坊实际管辖了公共资产,不再是比特币那样单纯管辖私有财产,这引申出了一系列极其复杂和模糊、不好解决的问题。

首先,以太坊链上有原生资产ETH和流通的其他资产(或称为寄生资产),“寄生资产”只有使用权没有底层链的治理权,随着这类流通在链上的“寄生资产”越来越多,以太坊难免出现“头重脚轻”的现象,即底层安全和上层承载的巨量资产不匹配。pow转pos后,这个头重脚轻的问题更明显了,整个体系的治理权更集中;

更重要的是,智能合约赋予了以太坊公共资产管理属性,Defi相关的各种交易,涉及到公共资产相关的权力再分配,可以延伸到治理权。举个例子:

某个Defi借贷协议采用了一组预言机节点联盟来提供喂价服务,确定哪些用户的抵押率不足需要清算,这其实就赋予了预言机节点以公共资产管理权;但我们凭什么相信这些预言机是可信和安全可靠的,凭什么把公权赋予他们,很多时候都没有用户参与的空间,稀里糊涂就把权力赋予给了一些没有被充分监督和充分披露的个体。考虑到过去频繁出现的预言机喂价操纵攻击,这个问题其实比较严肃。不被监督、没有被许可的权力往往是不可信的。

加密技术名人响马:公链追求高TPS毫无意义,DID+可验证凭证或是未来新方向

但凡涉及到公共资产管理权,其实需要充分监督,需要充分披露,但目前没有充分监管各种智能合约项目的机制。

归根结底我认为,Permissionless只应该针对私权,不应该针对公权,Permissionless的合约部署及采用,授予了许多个体以没有被充分监督的权力,这连锁反应产生了一系列问题。Multichain跨链桥的例子或许是更直观的。

EOS相关的治理权分配思路和来源其实比较明晰,但Defi协议等智能合约项目的权力分配来源不明晰,甚至消失了;如果像EOS那样搞明确的公开治理,把公权力进行明晰合理的分配,又会使得项目本身开发难度变大,变得很重。这是个难点。

所以,只要涉及公共资产的管理权,就涉及权力边界的问题,比如德国人的事情不可能让法国人去管理。引入智能合约使得以太坊实际管辖了公共资产,不再是比特币那样单纯管辖私有财产,这引申出了一系列极其复杂和模糊、不好解决的问题。

5.Cynic:EOS提出独特的资源模型,模仿计算机分配网络带宽NET、算力CPU、内存RAM等资源。您认为这个设计对EOS有何影响?

响马:BTC、以太坊所使用的银行账本式的模型,运行机制相对简单,更受欢迎,同时也会面临状态膨胀(状态爆炸)问题。而在EOS的设计里,占用存储空间的话,会持续消耗资源(类似于gas),这种设计能够避免状态膨胀,模拟计算机资源收费的设计让它更贴近云服务的体验。

尽管资源模型可能对服务提供者而言更合理,但复杂的设计超出了大多数用户的理解能力,不容易被接受。用户并不关心底层技术,他们想要的往往是简单、得心应手的产品,而不必是最完美的。

6.Cynic:EOS计划改用HotStuff共识,您认为这个改动的目的是什么?(注:Hotsuff是PBFT的一种流水线式实现,每个区块完成一轮2/3比例的出块节点确认,再出下一个块)

响马:EOS之前的设计不追求交易的即时确定性,需要3分钟时间才能完成交易的最终确定Finalize(注:EOS为了加速出块 + 降低节点间信息传递的复杂度,新区块不必等2/3的人确认完,就可以出下一个块;接收者也不会立刻广播自己的确认结果。这些延长了区块的最终确认时间。一个新区块产生后,要再过355个区块才被敲定)。

EOS修改共识算法是为了改善交易确定性,这项改动对整个项目的影响有限,因为基本架构是不变的,对出块没有产生本质影响,还是原先DPOS的大致流程。只是利用HotStuff以更快达成共识,可以看作在DPOS基础上扩展了交易确定性Finality的相关功能。

7.Cynic:能为我们介绍一下您目前进行的与EOS相关的技术工作吗?

响马:我们在EOS上实现了EVM智能合约,修改了跨链功能。EOS官方的EVM实现,是在WASM虚拟机上实现EVM,除了速度慢,还无法复用原先的基础设施。

EOS的RPC(远程过程调用)设计也存在缺陷,写RPC是通过封装,将以太坊交易提交到EOS上;读RPC为了实现方便,直接将EOS.evm的数据同步到一个独立的以太坊节点上,架构过于复杂,基本没有多少人能够提供API服务,只有项目方自己在支持。

我们的EVM是原生实现的,节点可以直接调用EOS资产,并且兼容web3.js, ethers.js等开发工具,使用体验接近以太坊。我们修改后的项目会逐步开源。

8.Cynic:您也算是经历过一套主流叙事从萌芽到爆发再到归于沉寂的全过程,从您的角度出发,整个行业的未来将何去何从?

响马:我一直说web3.0和web3不是一个东西,web3.0是下一代互联网想要解决的一些问题的总和,web3是一群人希望能够用区块链解决所有互联网出现问题的一种尝试。

但是互联网现在真正遇到的问题,其实是一个原有的旧互联网的信任机制的问题。因为在原有的互联网中,大家不能够摆脱对中央服务器的信任假设,导致所有的用户被被中央机构绑架。

我们有没有办法去把互联网重新变成一个去信任化的分布式的网络?这才是关键,而不是说我们重新信任一个由去中心化技术形成的中心化网络。以太坊现在其实是通过去中心化技术形成的一个中心化的信任中心。

IPFS也是个同样的例子,以前我们说数据存在中央机构,我们的数据被绑架,为了解决这个问题,我们要把数据存储变得去中心化。但我们现在看IPFS并不是一个去中化存储,它只是一个用去中化技术形成的中心化存储,它还是服务,只要是服务它就是中心化的。

我们需要回归互联网的本质,而不是信任新的(通过去中心化技术构建的)中心化网络。DID+可验证凭证也许是一个未来方向,它可以连接分散的网络,无需信任与边界。

DID本身它并不是一个身份,而是身份协议。在DID中并没有存在一个大家都必须认可的机制,我自己生成一个公钥,那DID就已经有了,并不需要别人的认可。我们怎么样去用DID去解决实际问题,通过可验证凭证。

一个最重要的一个突破点,就是它不再是两个机构之间进行数据共享,而是由信息主体来主导信息共享。这时你会发现,虽然它没有共识,没有所谓的去中心化的概念,没有区块链,但是你会发现它很去中心化,中间只有三个人参与:信息的控制者、信息的接收方和信息主体。

我们最初设计这套协议的时候,也是有链的。后来我们反复的被问到:链是谁建的?你说谁建这条链是能够被大家都认可?只要有链就有共识,有共识就有边界,有边界,就无法做到互通。我们要做的就是一个没有边界的,没有信任的协议,这才是下一代互联网的属性。