本文写于2022年年中
Computers do three things, and only three things:
Store data
Compute over data
Send data to other computers (who in turn store data, process data, and send data to other computers, etc.)
2022年7月22日,Filecoin Meetup在巴黎举行,会议上来自Protocol Labs的Molly Mackinlay为大家介绍了Filecoin的路线图。Molly Mackinlay是从项目的角度来看待路线图的,同时将路线图划分为三个核心维度:
Capacity + Data Onboarding
Data Retrievability
Programmability and Computation
本篇文章由此出发,希望能帮助大家更加了解Filecoin的发展进程。

众所周知,Capacity + Data Onboarding,Data Retrievability and Programmability and Computation是Filecoin路线图中的重要组成部分。但是这是为什么呢?
Filecoin不同于传统的集中式存储提供商,分布式的存储节点构成了一个网络,因此从某种意义上说,Filecoin是一个双边市场,一边是存储提供商(Storage Provider),一边是客户(Client)。有多边市场,就必然会存在网络效应。根据Web2的经验,在多边市场的商业模式中,想要网络效应的飞轮转起来,企业/平台必然会选择给其中至少一方大力的扶持和补贴,帮助他们onboard。这就是为什么Filecoin如此重视data capacity and onboarding的原因,更多的供给可以吸引来更多的客户,需求的增长又会让更多的存储提供商加入,virtuous cycle由此开始。现在可以很好理解为什么Molly Mackinlay在会议上说***"Filecoin success is the the data capacity and onboarding on the network"***了。
我们存储数据不是为了收藏,而是为了使用。存储加上提取才能构成一个完整的过程,存储市场和检索市场共同构成了Filecoin的核心服务。我们上传数据时可以打包上传,这并不是一个很难的事情,但现在的问题是,我们应该怎样有选择性地取回自己想要的数据?甚至要求数据提取的时间非常快。检索并不是一个新颖的东西,但去中心化的检索呢?Filecoin在很早期就设计好了检索的结构,并为之预留了大量代币以此来推动检索市场的发展。现在,关于检索的一切事物都在有条不紊的进行中。
最后的要点是可编程性和可计算性。协议实验室花费了大量的精力去构建Filecoin Virtual Machine。编程和计算是最大化数据的重要途径,这非常有助于上层应用的构建开发。我为什么看好FVM?因为现在没有其他公链可以提供可编程性和可计算性的功能。有个这两个功能,Filecoin不仅可以做到一般公链能做到的事情,而且基于自己非常丰富的数据量,Filecoin将有机会打破现有的生态格局。除此之外,FVM is EVM-Compatibale,并且这种兼容是在字节码层面实现的,这有助于实现生态间的无缝衔接,开发者可以继续使用曾经的工具链和编程语言,大大降低了进入FVM的难度。人员的自由流通,受益的是整个web3行业。
现在我们进入文章的第二部分,它更有点像项目介绍。
这段视频中提到了三个当前的里程碑:
Moon Landing: SP Data Accelerator
Moon Landing是一个专门为Filecoin存储供应商设计的程序,以帮助登上客户数据。关于这一方面,这里有两个你可以参加的具体项目,一个是Slingshot ,另一个是Evergreen。
根据官网信息,Slingshot是一个针对存储客户端和开发人员的社区竞赛活动,旨在奖励在Filecoin网络上存储真实、有价值和可用的数据。现阶段,Slingshot V2马上就要结束了,如果感兴趣的话可以留意Slingshot V3。V3是V2的迭代,参与者可以以Data Preparers的身份参加,并且V3将更加强调数据的永久存储。
Evergreen作为一种机制,确保了通过Slingshot项目收录的数据的持久性。这些项目的参与者将学会如何载入客户的数据,并确保数据的正确状态,还会掌握在Filecoin生态中运行、迁移和复制数据的技能。
Saturn V0
Saturn是IPLD的一个去中心化的CDN,加速了从Filecoin网络中检索媒体文件。基于可内容寻址、支持IPLD数据格式、p2p网络和去中心化的特性,Saturn将有望成为web3领域顶尖级别的内容分发网络。Saturn V0是Saturn的初级阶段,目标是以极低的延迟向客户提供数据并让更多人参与到Filecoin网络中来。Saturn测试网现在有34个节点,并且能提供每天10m次的检索服务次数。
FVM M1
我们把数据的存取看做Layer0,把FVM看做L1,在存储层上构建计算层,有助于开发者构建复杂应用并且实现各种各样的解决方案落地。
自2021年11月引入FVM以来,FVM经历了三个重要阶段: M0阶段实现了主网上暂时不可编程的金丝雀版本发布; M0.5阶段实现了节点运行并同步主网的功能; M1阶段,主网将从现行的VMs转变为基于WASM的参考FVM,并且引入了一个gas model,该模型反映了WASM的执行成本。
2022年7月6日M1版本正式上线,这意味着Filecoin主网现在是运行在FVM上的。除此之外,可编程性的引入意味着将来你不仅可以编辑Filecoin网络的状态,还可以与存储的数据进行交互,这样就可以运行一些像机器学习算法之类的程序。
Filecoin团队还在努力实现另外三个里程碑:
Hierarchical Consensus Protocol MVP
共识构成了区块链网络性能扩展的主要瓶颈,当所有验证者都要处理交易时,效率就会变得低下。传统的分片解决方案存在着性能-安全的权衡问题。当前,围绕扩展Filecoin可扩展性的工作正在进行,这就是分层共识协议。用户和矿工可以自由地进入子网,每个子网都可以运行自己独立的共识算法,并设置自己的安全和性能保证。从某种意义上说,这是Filecoin的ZK-Rollup版本,你可以拆分出子链,在子链中进行独立的计算,并且可以在不同的子链间进行状态迁移,只需要偶尔将checkpoints状态备份到父链。
Scalable Threshold Encryption Network
这个项目的名字叫做Medusa,目标是构建大型的、具有鲁棒性的链上threshold网络。将web2中的诸如访问控制和私人数据管理这样的核心组成过度到web3来,这就是Medusa要做的事。在这个广义阈值加密网络中,任何人都可以编写threshold智能合约,网络按照合约的要求进行签名和解密操作。但是真正值得我们注意的是,如果在这个网络中运行一组无需许可的节点集,我们就可以做更多的事情,比如,广义的MPC。MPC将私有计算带到链上,这极有可能改变游戏的规则。
Compute Over Data MVP
使用大型数据集的一个常见需求就是在数据旁边执行并行计算,现行的解决方案并不是很理想:API不够易用,维护集群和计算成本也非常高昂。
Bacalhau是葡萄牙语中数据计算的意思。因此,什么是Bacalhau? Bacalhau的目的是提供一个可以执行公开、透明、可选择性验证计算的平台。
Bacalhau架构的核心组件有6个,分别是:Transport、Requester node、Compute node、Executor、Storage Provider、Verifier
Bacalhau为存储在Filecoin中的数据带来了有用的计算,用户可以运行任意的docker容器和wasm镜像作为任务。Lurk是一种简易的编程语言,专为递归zk-SNARKs设计。短期来看,Lurk降低了这个领域的准入门槛;长期来看,Lurk会改进的Filecoin的Hierarchical Consensus。
本次写作参考了很多官方资料,除视频内容外,我将其他资料一起罗列在下方:
https://pl-strflt.notion.site/pl-strflt/PL-EngRes-Public-b5086aea86ed4f81bc7d0721c6935e1e https://slingshot.filecoin.io/ https://v3.slingshot.filecoin.io/requirements https://evergreen.filecoin.io/program-details https://pl-strflt.notion.site/ConsensusLab-13dfe290f57c438eb03a3db52dbbb43c https://github.com/protocol/ConsensusLab https://github.com/protocol/ConsensusLab/issues/3 https://pl-strflt.notion.site/Filecoin-Saturn-efc122f123f344ff8ff0de6071954dba https://pl-strflt.notion.site/Medusa-Scalable-Threshold-Network-on-chain-b4ee719a34a44aa7b39bf32ad7dcd4f4 https://filecoin.io/zh-cn/blog/posts/filecoin-fvm/ https://filecoin.io/zh-cn/blog/posts/fvm-m0.5-fvm/ https://filecoin.io/zh-cn/blog/posts/filecoin-fvm-m1/ https://pl-strflt.notion.site/Compute-Over-Data-25fa366465ed4ddf81027498efb4a405#ae3c898f0692434bbcecd11162ac16ae https://filecoin.io/zh-cn/blog/posts/lurk-zk-snarks/

