Web3 是互联网的下一次迭代,将建立在去中心化技术之上,跨越三个基本支柱:共识、存储和计算。
“Web3 是支持完全去中心化应用程序的协议栈。” ——纳德·达比特
就像 Web2 一样,Web3 是多种技术的复杂组合,这些技术共同构成了 Web3 生态系统。尽管它很复杂,但我们可以将生态系统分解为三个关键的基础设施支柱,这些支柱需要开发以实现互联网的完全去中心化:共识、存储和计算。
自 2009 年比特币推出以来,共识迅速成熟,此后数十种其他成功的去中心化共识模型得以实现。随着时间的推移,已经出现了去中心化存储和计算的尝试,旨在补充这些以构建真正去中心化互联网的下一个支柱。
图 1:支持每个 Web 3 支柱的项目示例
去中心化云存储的需求
在本节中,我们将仔细研究为什么需要去中心化存储的问题。首先,我们从区块链的角度来看去中心化存储。然后,我们从去中心化、不变性和永久性的角度仔细研究 NFT 和 dApp,以了解为什么去中心化存储比中心化的 Web2 存储方法更受欢迎。
从区块链的角度来看,去中心化存储的需求可以从两个主要角度来考察:
经济:在链上存储数据非常昂贵。不需要存储在区块链上的数据就不应该存储在区块链上。
技术:将数据存储在链上效率非常低,并且区块的大小有限。为了防止区块被无用的数据填满,我们需要将这些数据卸载到其他地方。
经济视角:存储数据的成本是多少?
图 2:具有活跃主网的项目。选择 200 年存储期限以符合 Arweave 对永久性的最低定义。来源:Arweave 存储计算器
如果我们进一步将这些成本与在去中心化存储网络上存储相同数据的成本进行比较,我们很快就会发现,专用存储网络在存储文件方面更具成本效益,同时还确保了永久性、不变性和抗审查性–稍后会详细介绍。
技术视角:我们为什么要避免将数据直接存储在公共区块链上?
但是为什么不将文件存储在中心化的网络上呢?
前面的观点解释了为什么我们不应该在区块链上存储数据,然而,下一个问题变成了:为什么要在去中心化网络上存储数据?数据可以很容易地存储在 Web2 中心化服务器上。答案很简单:为了确保不变性和去信任性,并实现数据的持久性和抗审查性。
NFT 的案例
图 3:区块链、区块、NFT 和链下元数据的简化图示。
图 4:基于上次销售的 Crypto Punk 底价(撰写本文时无底价)
Crypto Punk 图像大小基于 Crypto Punks V2 链上字节字符串的字节长度。数据截至 2022 年 5 月 10日。来源:OpenSea、链上数据、IPFS 元数据。
可以说,NFT 的主要价值不是由它们所指的图像数据驱动,而是由围绕其收藏建立运动和生态系统的社区驱动。尽管如此,如果没有元数据,NFT 就没有意义,没有意义的社区就无法形成。
NFT 不仅限于艺术收藏品。存储在元数据中的数据可以是任何东西,只要它可以保存为数据:表示有形资产所有权的法律文件,例如财产契约或金融工具的所有权证书可以在 NFT 中引用。此类数据具有外在的链下价值,每个字节数据的保存至少与整个 NFT 一样有价值:如果仅更改一个字节,整个数据集可能会失效,那么原始数据的不变性就更重要了.
NFT 元数据到底有多安全?
图 7:MAYC NFT 集合智能合约和元数据存储地址。
最后,MAYC 将所有 NFT 元数据存储在一个中心化的网络服务器上,该服务器指向托管在 IPFS 上的图像。虽然可以通过 IPFS CID 检索图像,但可以随时更改存储在网络服务器上的元数据。这意味着 MAYC NFT 集合中的所有 NFT 都可以删除其特征和图像,或者将其图像替换为其他图像。
在前三个集合中,MAYC 是最不安全的,缺乏元数据不变性、永久性和审查阻力。
最终,开发人员如何实现元数据托管将决定 NFT 元数据的安全性。链上是最安全的,但极其昂贵,因此并不总是一个好的选择。中心化服务器存在无常和可变性风险。去中心化存储网络提供了一个中间立场,可以平衡更便宜的成本与永久性、不变性和审查阻力。
dApp 的案例
dApp(去中心化应用程序)与 NFT 有着根本的不同,因为 dApp 支持促进与区块链交互的服务。一个 dApp 由一个前端用户界面和一个后端组成,以启用和促进与智能合约的交互。智能合约是去中心化区块链网络上的一段自动执行代码,用户可以与之交互。与 dApp 相比,常规应用的后端代码位于单个设备上的中心化服务器上。
智能合约的特别之处在于,智能合约运行的所有方面都直接写入代码中,并且可以在与代码交互之前进行公开审查。然而,直接与智能合约交互需要一些技术背景,并了解该区块链的区块链和智能合约引擎是如何工作的。为了弥合这一差距,dApp 为用户提供了一个简单的界面,以便与去中心化的区块链网络进行交互。
图 8:dApp 与区块链交互的简化图示。
在支持智能合约执行的去中心化网络上,每次写入操作都是有代价的。有时这些操作可能非常复杂——这就是 dApp 后端的用武之地。dApp 后端与智能合约不同,因为它们的存在主要是将输入转换为智能合约兼容的输入,或者将某些计算负载从智能合约转移到优化降低gas成本。
dApp 的价值主张与 NFT 的价值主张根本不同,因为它们为用户提供服务,而不是将其价值锁定在资产中。dApp 处于不断变化的状态:定期应用改进和错误修复,这会导致基础数据随时间变化。因此,无法根据基础数据的价值来衡量 dApp。相反,需要在特定 dApp 的上下文中衡量服务的价值。对于 DeFi(去中心化金融)dApp,价值可以根据通过 dApp 促成的资产转移量或锁定的总价值(TVL)来衡量,而社交 dApp 可能更关注交互和用户指标。
图 9:截至 2022 年 5 月 11日, DappRadar 报告的按美元数量计算的最受欢迎的 dApp 。
DappRadar 的上述列表显示了按交易量计算的前十名 dApp,在撰写本文时的过去 30 天内共同促成了超过 1500 亿美元的转移。虽然此处列出的 dApp 主要是 DeFi 和 Exchange dApp,但 dApp 可以实现任何目的。只要应用程序通过某种用户界面通过智能合约与区块链进行交互,就可以将应用程序视为 dApp。其他流行的 dApp 类别包括游戏、元界、市场、社交媒体和名称服务。
但是,如果用户可以通过区块链上的智能合约与 dApp 的核心机制进行交互,那么为什么 dApp 应该去中心化呢?答案在于确保服务的可用性和持久性。通过将数据副本复制到数十个节点的去中心化存储网络,dApp 减少了由于服务器故障而脱机的可能性,提高了对 DNS 黑客攻击的抵抗力,并且即使开发结束,也可以继续生存。此外,根据分散的存储网络,还引入了一定程度的审查阻力,因为没有一个中心化的实体可以轻易地删除数据。
图 10:Aave 创始人 Stani Kulechov 在推特上表示,Aave dApp 前端于 2022 年 1 月 20日下线,但仍可通过 IPFS 托管的网站副本访问。https://twitter.com/StaniKulechov/status/1487754439691845633
dApp 到底有多去中心化?
在服务可访问性的背景下衡量 dApp 的去中心化程度时,需要考虑以下几个因素:
-
dApp 前端是否可以通过去中心化网络访问?
-
如果是,这些网络上的数据在多大程度上是不可变和永久的?
-
用户是否可以在本地托管 dApp 前端以访问服务(即 dApp 源代码是否开源?)
如果我们更深入地研究上述前三个 dApp 的数量,我们会发现在前三个 dApp 中,所有 dApp 都发布了它们的源代码,允许个人将 dApp 前端部署到去中心化存储提供商。此外,Uniswap 和 Curve 更进一步,直接在其 ENS(以太坊名称服务)记录中提供定期更新的 CID。
图 11:在 IPFS 上部署的 Uniswap 和 Curve,并在其 ENS 记录中更新了最新链接