(天空下的柏树,梵高)
随着加密领域基础设施的逐步完善,目前的叙事由DeFi走向元宇宙,走向web3的星辰大海。不过,如果说DeFi已经有了相对可以支撑的基础设施,而web3和元宇宙则还有很远的距离。
区块链本身的结构无法完全支撑web3的发展,不管是Layer2也好,还是分片也好,目前看,要支撑数百万级别的tps还是存在很多障碍,这也是它自身对安全和分布式追求所决定的。
那么,web3需要什么样的基础设施?它跟区块链有哪些关系?这些都是极其宏大的问题。要回答这些问题,需要我们的实践探索和思维实验,最终会一步步地展现在我们面前。今天我们先从一个点入手,web3下的计算基础设施建设开始,我们之后会逐步介绍更多的web3的发展。
web3与区块链
人们为什么喜欢web3?首先什么是web3?社区有人给web3最精简的定义:
Web1:read(可读)
Web2:read+write(可读+可写)
Web3:read+write+own(可读+可写+可有)
虽然这是简而化之的说法,但点到了精髓。web3的重要主题是关于用户的数据所有权,而数据所有权的拥有需要区块链的帮忙,区块链可以实现无须信任、无须许可、用户控制。这就是人们聊到web3时候,无法绕过区块链的原因。如果从历史贡献看,区块链真正开启了web3时代,并形成了web3最重要的基础构建块。
但是,区块链并不是万能的。它也有自身的局限,它天生无法承载高吞吐量。随着智能合约平台的发展,区块链通过L2、侧链、分片以及EVM兼容链等多种方式,推动了dApp的兴起,目前的DeFi和GameFi都实现了一定程度上的落地,有快速的发展,从Aave、Compound、Uniswap、SushiSwap、Perpetual、dydx等,再到Axie等,给人们展示了基于区块链的各种可能性。
但以太坊的费用高昂以及速度缓慢,让人们了解到基于区块链很难满足当前大规模应用的落地,即便是Arbitrum、Optimism以及starware等的推出,也无法做到这一点。这跟区块链自身的内在特点有关系。它为了解决安全和分散化的问题,无法兼顾效率。因为它需要有共识算法、需要有分布式的众多节点参与,它无法像中心化的服务器那样可以高效解决问题。
那么在这种情况下,Web3是不是无法通过区块链来推进?是不是无法实现由用户拥有数据所有权的web3,无法实现无须许可无须信任的web3?
在这种情况下,人们开始探索各种可能性,在存储、计算以及网络等多个领域进行探索。仅计算领域而言,其中一种思路是分层的链外计算;还有一种思路是,不仅分层,还利用可信硬件的技术以寻求突破。可以说,为了满足Web3的大规模计算需求,开发者们绞尽脑汁去探索各种可能性。
web3下的计算不是中心化的云计算,也不是简单将节点分散化的云计算,更不是昂贵和慢速的计算,web3的计算意味着无须许可、分布式、无须信任、安全、速度快,规模大、费用低,效率高等。
Truebit的链外计算
为了解决以太坊链上计算费用高和速度慢的问题,Truebit协议提出将密集计算的任务放到链下来执行,而将执行结果提交到链上。
Truebit构建了链下的计算市场,让计算任务接单人来执行智能合约的计算任务,由于没有所有节点执行的冗余和达成共识的效率低下,可以节省结算费用,提升速度。为了确保链下计算提交结果的正确性,Truebit引入“可验证的博弈机制”,允许任何第三方对执行结果提出挑战。任何以太坊节点可以进行仲裁,各种角色的参与者会因为其贡献行为而获得奖励,而作恶者将遭受经济惩罚。
随着Web3需求的增加,Truebit的链外计算为以太坊的可扩展之路提供了一条探索的方向。更多的可以参考《简单读懂TrueBit》这篇文章的简单描述。
不过只有链外计算,依然无法满足最高频应用的大规模计算需求,Tea项目(TeaProject)
则提出了新的解决方案。
它的解决方案跟Akash等分布式云计算市场不太一样,这些云计算市场的项目大多数只是把节点进行更多分散化,处理架构上还是延续了云计算市场的模式。
Tea的可信计算
Tea项目(TeaProject)的想法是既然无法在软件层面实现根本突破,那么是不是可以通过硬件技术来实现突破?
Tea试图用一个根本不同的思路在做这个事情。这也是完全不同的范式。在区块链中,分布式的节点需要通过密码学和共识机制来实现信任,带来高昂费用和较慢的速度。Layer2的方案则是分层,目前看,分层可以缓解拥堵的问题,但依然无法彻底解决问题。基于区块链的分层在完成链外计算之后,依然需要将执行结果提交到链上。
而Tea项目的思路则是通过将分层+可信硬件融合起来,也就是融合了分层和可信硬件的技术。由于有了可信硬件的技术,它无需将计算执行结果提交至链上,可以实现传统App的运行速度。
*分层
跟Truebit一样,Tea项目也有分层,它将信任和计算进行解耦,将信任放在Layer1来解决,将计算放到Layer2来承载。这样做目的是,保证了Layer1的可信和无须许可,也解放了大规模计算的任务,从而实现dAPP达到目前web2的App类似的效率。
在Tea中,其一层的区块链也是由节点网络组成,一层节点会收到来自二层的可信硬件提供的PoT,并
采用拜占庭共识的算法,
以验证这些硬件是否可信。
这些节点由于其完成验证任务获得验证的奖励。
奖励是TEA代币,它是一种跟计算资源(CPU计算指令数量、网络传输字节、存储大小时长)挂钩的代币,同样数量的TEA代币可以支付相同规模的计算任务。
由于TEA跟计算资源挂钩,因此它不仅是媒介,更是用途代币,无法凭空产生,它会根据对计算资源的需求而增长。
计算需求越大,其数量越多。
Tea项目中,还有一种代币为CML,它是一种非同质化的资格代币。只有拥有CML代币的机器才有资格参与计算市场的服务(为了形象,在Tea项目中,也被称为种茶。种茶者称为茶农,也就是提供计算资源的参与者)。有了CML,节点可以进入计算任务市场,可以托管应用,从而获得相应的用途代币TEA。
Tea也是DAO项目,CML也具有治理的功能,拥有CML才有机会参与DAO治理。CML有不同的种类,具有生命周期和信用历史记录。这些可以用来调节供需平衡。后续有机会再详细阐述其经济机制。
*信任根的来源
Tea的构想中,跟其他的Layer2分担计算任务不同的是,它试图通过利用可信硬件的解决方案来达成目的。在Tea中,首先会基于波卡的Substrate构建一条区块链,这条链负责对layer2上节点硬件进行安全的认证。L2上的节点硬件上的安全芯片会发出PoT(Proof of Trust),也就是信任证明。这条链对这些节点的可信硬件进行验证,以达成可信的共识。一旦达成共识,就意味着具有可信的执行环境。
在可信的执行环境下,dAPP可以高效执行,环境可信,结果即可信。也就是,其信任根来自于可信硬件,而不是仅靠密码学和共识算法。
可信的执行环境由可信硬件、L1以及可信时间三者来支撑。首先是可信的硬件,这也是当前相对成熟的技术,其中主要包括TPM芯片的技术等,其次是上面说的区块链L1,通过Tea区块链来实现可信硬件的验证;最后是可信时间,在区块链中,对于交易顺序需要达成共识,为了实现这一点,在没有中心化节点的机制下,区块链设计了复杂的共识机制,这导致效率的低下。在这一点上,Tea项目的思路是利用GPS时钟来保证系统内时间的一致性。所有的可信计算硬件除了检查节点上运行的软件,也可以检查GPS硬件,验证GPS时间戳的可信。
*Tea是可信计算的市场
在Tea上,它本身是由多个可信硬件组成的网络,这些可信硬件为各种应用提供可信计算,由于可信计算无须像L1一样需要在多个节点达成共识,因此其执行的成本和速度都有很大的提升。
在Tea网络中,L2的节点可以获得来自应用程序支付的计算费用,L1的节点可以获得来自验证可信硬件的服务费用(来自于DAO的区块链增发奖励)。
L1会根据L2可信硬件提供的计算消耗证明来发放TEA奖励,上面也提到,具体的TEA奖励数量跟计算消耗挂钩。
Tea跟传统的云计算市场不一样,它不是中心化托管的计算服务市场,它有无须许可,无须信任的特点;Tea跟Truebit这样的链外计算市场也不一样,它无需将计算执行结果提交到链上。
此外,Tea跟Akash等分布式的云计算市场也不一样,它是由可信硬件网络组成的计算市场,在满足大规模计算需求的同时,还试图实现无须信任和无须许可等特性。
目前类似于Akash的这样的分布式云计算市场越来越多,它类似于云计算市场的uber,将原来的Amazon的中心化云计算市场,变成由众多的节点组成的分布式云计算市场。Tea跟它们有什么不同?Tea是由可信硬件组成的网络,这些可信硬件只是负责计算任务,但对于正在运行什么计算任务是不了解的。这样的处理模式更具安全性以及隐私性。
只有大规模应用实现无障碍运行,才能说是web3时代的到来
目前区块链只能运行一些DeFi或GameFi项目,只有大规模计算得到解决,高频的应用,如游戏、电商、社交网络、人工智能等才能运行。只有到了那个时候,才能算得上是真正的Web3时代。当然,这里的前提是无须信任和许可。
Tea采用的是分层+可信硬件结合的模式,放弃通过分片或Rollups的方法实现扩容的思路,其一层是针对二层硬件可信的验证,在这个基础上,所有大规模计算运行在由可信硬件组成的二层,让应用有机会在确保无须信任的情况下实现可扩展性。一层负责安全验证,二层负责可信计算和执行。
Tea跟之前的扩容思路不同,当然,它最终能否成功,还取决于很多的因素。一是,可信硬件+分层的解决方案本身不会出问题,在逻辑上和过去二十多年的实践是值得尝试和探索的,但是否存在不可知的漏洞,还需要进一步实践;二是,它需要更多开发者参与进来,以构建出开发者生态。开发者们的选择决定了模式的成功与否。
最后,无论是谁,web3基础设施总会向前突破,这个趋势不会停止下来。