un.Block

Posted on Oct 09, 2021Read on Mirror.xyz

区块链数据存储 Filecoin

P2P 网络必须要有奖惩分明的激励机制才能健康地运行下去。

上一期我们说到,将 NFT 数据交给中心化存储是不可依靠的,我们要用 IPFS 来存储。而 IPFS 也不完全可靠,因此就有了一系列的数据存储托管服务诞生,今天我就来看看比较出名的 Filecoin。

Filecoin

Filecoin 是一个在互联网上存储文件的点对点网络,其内置的激励机制可以确保文件长期可靠地存储。

在 Filecoin 的网络中,用户通过支付 Filecoin 将数据存储在矿工的硬盘中,矿工负责存储用户上传的数据,并证明这些数据在约定时间内一直存在。存储空间的大小和价格不受中心化机构控制。

工作机制

上图清晰地阐述了一次使用 Filecoin 网络完成数据存和取的流程,对于用户来说,只要支付足够的 FIL,就能享受到稳定可靠的文件存储服务;对于矿工来说,他们可以通过完成数据的存储、验证、取回工作来赚取 FIL。

下面我们讨论工作流程中一些比较有意思的内容:

存储矿工与检索矿工

目前在 Filecoin 网络中主要有两类矿工,存储矿工于检索矿工:

  • 存储矿工:负责在网络上存储文件和数据
  • 检索矿工:负责文件的快速检索工作

存储矿工通过为客户存储数据和计算相关加密证明来赚取 FIL,提供的存储空间的大小决定了它能赚取的 FIL 的数量。

检索矿工通过为客户取回数据来赚取 FIL,FIL 的数量由文件大小和市场价格决定,矿工的网络带宽和网络延迟决定了它的工作能力。

使用复制证明与时空证明

存储矿工需要完成两种证明计算来确保数据的存储正确无误,他们需要确保:

  • 存储了用户上传的全部数据
  • 在交易有效期内,数据是被有效存储的

通过使用 复制证明 (Proof of Replication),矿工可以证明他们已经收到了全部的用户数据,并且矿工会对数据进行编码,使其他矿工无法复制这一份数据,因此相同数据的两笔交易不能使用同一个硬盘存储。复制证明需要在交易开始时完成。

一旦交易被激活,矿工就要开始进行 时空证明(Proof of Spacetime) 矿工需要证明他们存储的数据的任意一部分部分仍然存在。Filecoin 客户和其他矿工会不断验证该时空证明是否有效,以提供比较多安全性,不履行交易责任的矿工将受到惩罚。

关于证明的更多内容,可以阅读 What sets us apart: Filecoin’s proof system

IPFS 和 Filecoin

简单来说,Filecoin 可以理解为在 IPFS 的基础上引入用户激励机制

IPFS 需要用户自己架设 IPFS Node 来存储数据 (pinning),数据存储工作也可以交给一些可信赖的第三方托管机构来完成,数据只要在任意一个 Node 中,就能够被访问到,存储该数据的 Node 越多(热门数据),访问速度就越快,但 IPFS 并无任何机制来激励用户持续存储数据,因此它更适合存储大家都喜欢的,热门的内容。

在 Filecoin 上存储数据,需要支付费用,和矿工之间达成交易,网络会确保你的数据是被稳定存储,不履行交易合约的矿工会收到惩罚,因此它更适合存储大量的数据。

IPFS 就像我们熟悉的 BT 协议,它提供了一个相对简单的点对点数据存储传输模型。Filecoin 则在 IPFS 的基础上引入了用户激励机制,建立了一个长期存储数据的交易市场,鼓励拥有大量存储空间的用户为他人提供存储服务。Filecoin 有点类似 PT 社区,用户下载需要消耗积分,提供服务(做种)的用户可以获得积分奖励。

基于 Filecoin 的数据存储服务

  • Slate: 允许用户直接从浏览器上传数据到 Filecoin 网络,支持一次性交易,有 50 GB 的免费使用空间
  • ChainSafe Files: 在类似 Dropbox 的界面中提供具有端到端加密的分散式云存储。
  • Space Storage: 开源的、由用户控制的、使用 IPFS 和 Filecoin 的加密文件存储和共享平台,使用 Ethereum 钱包地址或传统的 OAuth 方式绑定账户

相关阅读: