原文标题:《一文介绍 Filecoin 虚拟机 FVM,它将为网络带去什么?》
撰文: Protocol Labs
翻译:分布式资本
目前的 Filecoin 网络是一个可通过验证存储并访问 NFT、公共数据集、web3 和 Metaverse 资产的强大网络。你可以将其视为 web3 的 I/O 层,然而这只是冰山一角。将通用的智能合约编程功能引入 Filecoin 网络,可以释放出网络更多的价值和潜力。将计算层架构在存储层之上也为跨链提供了无需信任的互操作性和集成。
最近,Protocol Labs 研究员 Raúl Kripalani 向 Filecoin 社区介绍了 Filecoin 虚拟机 – FVM。FVM 将成为推动去中心化存储的核心支柱。
本文来源于 Protocol Labs 官方,分布式资本翻译。
为什么要在 Filecoin 中引入智能合约
智能合约(在 Filecoin 亦被称为 actors)可以提供智能和动态的存储解决方案,而使用现有的 web2 技术则很难实现。例子包括:
- 对存储在 Filecoin 中的数据进行去中心化计算(在数据所存储的空间直接进行计算而无需转移数据)
- 对众筹的数据集进行保存(每个人对重要的社会性数据进行存储,例如犯罪统计或环境变暖的数据)
- 更智能的存储市场(例如:按时间、复制级别或区域可用性对存储进行动态定价)
- 跨时代存储和永久托管(例如:存储几代人都会流传使用的数据)
- 创立 Data DAO 和数据集的通证化(例如:为数据存储的通证化建立经济模型,并组建 DAO 对其进行计算和协调)
- NFT 的本地存储(例如:将 NFT 的内容与跟踪其内容的注册表共存)
- 时间锁定的数据检索(例如:仅当公司公开结果时才解锁此数据集)
- 抵押贷款(例如:向存储供应商提供贷款,如接受特定客户的 FIL+交易,在特定时间点进行交易)
智能合约还可以让开发人员建立跨梁桥实现互操作性 – 共享流动性和为部署在其他链上的 dapp (例如:Ethereum, Near, Solana, Flow 等)与 Filecoin 网络进行集成,提供存储功能。
作为 Layer0 的存储
目前,Filecoin 平台是数据存储和检索的中心。我们认为这两个特性使 Filecoin 网络成为了协议的 Layer 0。
尽管系统设计简洁明了,但不能满足那些试图通过可编程智能合约来构建更复杂的应用程序和解决方案的开发者的需求。
Layer 0 之上的 Layer 1,则实现智能合约的可编程性。目前,Filecoin 网络的逻辑是编死在系统定义的合约中。这意味着用户自定义的智能合约只能通过其他可以被编程的区块链协议,例如 Ethereum 和 Solana (通过类似 Textile Bridges 的解决方案) 进行部署。Filecoin 虚拟机则能够实现原生的用户自定义智能合约。
与以太坊兼容的 Filecoin 虚拟机
最早的技术讨论在 Filecoin Improvement Proposal 113 推出以后的 2021 年 6 月开始。受到通过虚拟机监视器来建立多虚拟机设计的启发,Filecoin 虚拟机(FVM)的目标是成为一个多语言虚拟机。当时也考虑了许多方法,其中包括 EVM as-is, LLVM-IR, eBPF, Secure EcmaScrip 等等。
FVM 原生的运行时(Runtime)是 WASM。我们认为 WASM 是未来非常有前景的编程语言。这使得用任何编程语言编写的原生智能合约都可以编译成 WASM (尽管并非所有语言都适用,但参考的 SDK 是用 Rust 编程的)。可以让 web2 的开发者能够更快地进入 web3 世界并达到与前者同样的开发水平,并避免特定编程语言的学习曲线。
此外,我们正在添加对模拟外部运行时的支持,第一个是以太坊虚拟机(EVM)。主要原因在于 Filecoin 的开发者社区要求 FVM 支持 EVM/Solidity,对源代码进行最小甚至是零更改。
随着时间推移,我们看到以太坊社区建立了大量有用的,且最重要的是经审计的,高强度测试使用过的智能合约,例如 ERC-20 代币、NFT、DAO、flashloan 等。如能将这些合约在 Filecoin 网络上进行重复使用,将推动各种创新且可组合方案的快速启动。另外,让 Solidity 开发者通过桥和预言机进行跨链作为解决方案可以增加共同价值和效用。
还需要提到一点的是,EVM 兼容性针对的是字节码层,因此可以在 Filecoin 环境中充分利用成熟以太坊工具,如 Truffle, Remix,Hardhat, VSCode 插件等等。除了部署现有的智能合约外,开发者还可以以 Solidity 编写新的只能合约来进行快速启动,或者在需要性能优化的情况下使用原生的智能合约来进行升级。
扩大 Filecoin 网络的影响
Filecoin 网络除了现有存储能力外,还将通过 FVM 获得计算能力。我们设想在 Filecoin 网络上运行两种计算:基于状态的链上计算和基于数据的链下计算。FVM 将成为构建这两方面的关键模块。
我们很高兴在 Filecoin 中看到的项目包括:
- 以数据为中心的去中心化自治组织(Data DAOs):通过汇集个人和组织的资源,人们将能够通过激励对共享 / 公益数据集进行保存、管理、扩充和处理。Data DAO 以通证和 NFT 为单位对服务进行计价,并交易这些通证以请求服务、授予访问权限等。
- 复制客户端:根据用户定义的规则,自动化机器人程序将以一定的激励机制确保 Filecoin 网络中的数据达到一定的复制级别。
- 另类的数据存储市场:基于拍卖、奖金或其他工具,存储市场可以为数据提供纠错码,以确保数据在中断时的可恢复性。它们还可以实现自动重试交易,以确保数据交付。
- 抵押贷款:向供应商提供的无需信任或特定目标的抵押贷款,例如,贷款资金只能用于接受特定客户的 FIL+交易。
- 基于数据的计算:在大规模计算中的有一个很大问题在于每项操作增加了数据传输的成本和延迟。通过将计算任务交给提供数据托管的存储提供商并奖励协调节点来制定整个 Filecoin 网络的执行计划,可以实现高效的执行并行任务,计算结果存储回 Filecoin 网络,下游计算执行。
此外,将会是第一次 Filecoin 网络的 L2 解决方案能够通过 FVM 将其状态提交到 L1,从而实现更安全、更可被追踪的覆盖网络。我们特别希望在 Filecoin 上看到一些 L2 解决方案运行,包括内容交付网络(CDN)、声誉系统和支付渠道网络。
如果你是对这些用例有兴趣做原型设计的开发者,请联系我们!
Filecoin 近期阶段的路线如下:
Phase 0 :通过功能发布控制或者以分叉参考实现(Lotus)的方式 , 使不可编程的 FVM 以金丝雀启动形式上线主网,只会运行系统的智能合约。与现有协议兼容且不需要协议升级。这一阶段预计在 2021 年 Q4 上线。
Phase 1 :分叉协议以为用户可编程性之上做一些准备性的改变,其中包括 Gas 计划和架构的调整。在这一阶段的终期,100% 的网络将会运行 FVM-支持的系统智能合约。这一阶段预计在 2022 年 Q1 上线。
Phase 2 :原生及外部的 EVM 将实现用户可编程性。这一阶段预计在 2022 年 Q2 上线。
Phase 3 :重新设计系统的智能合约并对协议进行深度改造以便开发的。这一阶段预计在 2022 年 Q2 上线。
如果您有兴趣帮助 FVM 的开发,或者想了解更多关于该项目的信息,请关注 filecoin 项目 /FVM 项目 GitHub repo 和 filecoin Slack 上的#FVM 频道。