【IPFS小百科】Filecoin的技术背景

Filecoin的愿景是,通过带有激励机制的区块链,提供全网的数据存储和检索服务,以降低数据的存储和使用成本。既然它是区块链,那就同样需要共识机制,也就是需要回答“Filecoin区块链的区块是怎么产生的”。V | czdn222

我们熟知的工作量证明(POW)共识机制需要矿工依靠机器的算力来不断进行哈希计算,谁能在短时间内解出问题的答案,就有资格产生下一个区块。即矿工产生区块的概率理论上正比于机器的算力,这就催生出了专业矿机。但是,这种哈希计算的唯一作用就是提供了网络的安全性,而不产生任何其他的贡献,这也是为什么POW被诟病消耗资源。

而Filecoin中的“算力”则不仅对网络安全提供保护,且给系统提供了功能保障。Filecoin中的“算力”称之为存储算力,直白来说,即矿工为网络存储了更多的数据,就拥有更多的存储算力,那么在下一轮竞争记账权的过程中就更具有优势。可见,算力大的矿工不仅在安全层面保护了系统的稳定性,且实在给用户存储了数据,提供了功能的保障。

【IPFS小百科】Filecoin的技术背景_第1张图片

与POW不断计算哈希不同,哈希的计算虽然需要较长时间的尝试,但一旦计算成功,计算的结果是很容易可以验证的。也就是说矿工能够在短时间内对一个区块进行验证。但Filecoin的存储算力则不然,该指标是指矿工存了多少数据在本地的磁盘上,这是一件其他矿工无法亲眼验证的事情,所以Filecoin的共识机制就至少要确认两件事情:

  1. 矿工声称存储的数据是否真的存储在了其磁盘上;

  2. 矿工声称存储的数据是否在未到期之前一直存储在了其磁盘上。

为了确认这两个难题,Filecoin提出了复制证明(Proof-of-Replicaton)、时空证明(Proof-of-Spacetime)两种机制。

复制证明的核心思想是,矿工P能向全网提交PoRep证明以证实自己确实在自己的存储设备上存有某个数据的备份,且其他矿工能够较迅速的进行验证。但是,矿工可能会发动恶意攻击,例如,恶意矿工对全网宣称自己保存了一份数据n份,但实际上该矿工通过创建多个节点的方式或者通过多个矿工共享数据的方式,实际上只保存了该数据的一份备份。当需要向全网发起证明的时候使用一份备份完成所有检验。如此,对花钱购买了冗余备份的用户就缺少了数据的安全性保障,而恶意矿工使用一份存储空间赚到了n份的价钱。可见,关键在于PoRep共识算法的设计。

经过研究,PoRep共识算法需要达到以下几个要求:1矿工存储数据的时候需要进行加密操作,这个操作应是不可并行且要花费较长时间;2 当对数据进行提取的时候,对数据的解密操作应该花费较短的时间;

3 通过加密后的数据生成PoRep证明的过程应该是快速的;4对PoRep证明的验证过程应该是快速的。

对于要求一,这是为了增加矿工存储数据的时间成本,后续的生成证明等操作都是基于加密后的数据进行的,这就使得恶意矿工无法临时生成加密后的数据,以在有效时间内生成证明。对于要求二,是为了当需要提取文件时,不会造成较大的计算资源开销,否则会使得Filecoin系统的成本十分高昂。对于要求三和四,则是因为矿工需要在指定的时间内生成PoRep证明,如果矿工已经按照要求花费了较长的时间对存储数据进行了加密和保存,则生成证明的时间应该较短,以保证矿工能够在指定的时间内证明自己的存储,当然,其他的矿工也应该较快速的对证明进行验证,以保证系统告诉的运行下去。

可以看出,复制证明PoRep确保了矿工在某一时刻确实对某一份数据进行了存储。但是却不能保证矿工在一段时间内都按照用户要求对数据进行了存储,例如生成了PoRep证明之后就将数据丢弃。这就是时空证明PoSt解决的问题。简单来说,PoSt要求存储矿工每隔一段时间就生成一次证明,这就需要矿工生成一系列的PoRep证明用以确定时间区间。

总结一下,PoRep是时间点证明,证明该时刻矿工按照要求存储了该文件,PoSt是时间区间证明,证明该时间段内矿工实际存储了该文件。

4 Filecoin要如何挖矿

Filecoin测试网络Lotus已经发布了,按照官方的说法,Lotus是Filecoin的一个实验性的实现,和主网的go-Filecoin代码相互独立。但是Lotus也实现了钱包、矿工、PoRep、PoSt等一系列功能,更直白地说,Lotus是Filecoin的试验性产品,而go-Filecoin才是最后主网的完整实现。

据官方部署文档所示,Lotus测试网中一台最低硬件配置的机器也至少需要:2TB的硬盘空间、8核CPU、和128G的内存。尽管这样的硬件标准可能会随着代码的迭代而后续有所修改,但却使得广大平民矿工望而却步。但是一种可行的办法是通过部署集群的方式将一些廉价的设备进行联合,以提供类似的效果。集群部署的相关案例现在在行业内很少,我们也在逐渐尝试中!V | czdn222

你可能感兴趣的