IPFS/Filecoin(基本面篇)

IPFS是一个旨在创建持久且分布式存储和共享文件的网络传输协议。在IPFS网络中的节点将构成一个分布式文件系统,目的是解决区块链不能存储大体积文件的问题,以实现真正的去中心化应用Dapp。

作为重点关注的主线投资机会,我们一向提倡要了解其技术原理,毕竟区块链的价值基于技术而不是各种机构、国家的背书。因此今天为大家介绍IPFS的基本原理,以及近期的发展。


通过这些分析,我们就能知道IPFS为什么确实能解决问题,以及为什么IPFS比别的同类项目好。

1、基本原理

IPFS其实是传统常用的BT网络的一种改进,嗯,就是BT种子下载。BT网络已经实现了文件的分布式存储和P2P点对点传输,但是有一个很大的问题,就是经济激励。

一旦你下载了某个资源,如果不关闭网络,BT网络会向你的本地PC请求这个资源,消耗你的计算资源和带宽。因此不少人下载完成后就关闭了网络或种子,这不能支持一个网站的分布式文件存储的持久运行。

因此,IPFS提出了解决方案。

(1)首先,每个文件及其中的所有块都被赋予一个称为加密散列的唯一指纹。IPFS网络可以通过哈希值识别不同的文件文件,通过计算是可以判断哪些文件是冗余重复的。并跟踪每个文件的版本历史记录。

(2)其次,IPFS运行一条链。这条链实际是一个索引,记录了不同哈希值的文件存储的地址。每次有网络访问,即要在链上查询该内容(文件)的地址。

(3)最后是激励层。如果矿工通过提供硬盘和带宽提供文件存储,会获得Filecoin经济激励。相应的,如果你需要IPFS存储数据,也需要支付Filecoin。

这样,小体积的索引数据就记录在链上。大体积数据冗余地存储在不同的矿工硬盘中,实现大体积文件的存储和调用(图1)。

因为存储的文件需要调用上传等,因此带宽在IPFS网络中非常重要。这是传统的区块链挖矿所不同的。

举个例子:

(1)加入IPFS网络,在网络中搜索叫“一起去看流星雨”的文件。

(2)IPFS网络迅速索引区块链上的哈希值,反馈出搜索结果。

(3)支付一定FileCoin代币, 获取文件下载到本地。

(4)文件下载来源可能是离你最近的一个网络节点,这样的好处就是网络效率最快。

(5)这个文件存储在自己PC后,也可以为其他人提供资源,获得Filecoin。

通过这样的方式,实现了整个网络的文件利用达到最优效率

2、优势:可能一定程度取代HTTP

我们知道,目前HTTP是互联网的应用层基础协议。这个协议基于C/S架构。简单来说,就是PC发送请求给服务器,服务器返回数据。但是服务器一定是中心化的,这是区块链要解决的问题。

而IPFS则是PC向整个去中心化网络请求数据,具有很大优势:

(1)抗审查。可以建立一个永不关机的网站,发布一篇永不被删帖的文章。一个不会被抹除数据的网络对于言论自由、自由市场的意义有多大,不言而喻。

(2)低成本高效率。以视频传输为例,可以节省带宽成本的60%。

在一些应用上,IPFS一定更收用户和服务供应商的青睐。

3、竞争者:只不过是模仿

IPFS也有很多同类项目。比如有币友提到的Genaro,号称是第一个具有图灵完备公有链的分布式存储区网络。

有网友在github上找到了Genaro_eden客户端代码,发现Genaro_eden只是 Storj的一个js实现客户端。Storj也是一个去中心化存储项目。这类新项目利用前人的成果,拼接一下就成了“第一”。实际上代码全是山寨,太容易了。

在github里,IPFS热度远远超过其他竞争对手。

4、实际应用

Filecoin币还没有上线,但很多项目已经迫不及待再开始使用IPFS。

根据官方17年四季度的报告:

OpenBazaar 发布了由IPFS支持的2.0版本,并将其网络扩展到了25,000个节点。

在Brave浏览器中直接有了一个新的IPFS集成。计算正在用IPFS构建一个分布式超级计算机。

澳大利亚的研究人员已经把Hadoop放在了IPFS上用于点对点数据分析。构建这样的应用程序越来越容易。

PeerPad是一个开放源代码的应用程序(alpha),展示了开发人员如何使用IPFS构建自己的无服务器,实时,离线优先的协作dapps。

Cloudy是一个围绕分散化和社区网络建立的GNU / Linux发行版。

越来越多的区块链生态系统依靠IPFS和libp2p。新的这样的项目包括:DTube,一个分散的视频平台; 布卢姆,一个分散的信用评分系统; Decentraland,一个虚拟现实平台; Decentraland也是我们非常看好的项目。

此外,

EOS也推出模仿IPFS的

EOS.IO存储系统。

Vitalik顾问的AKASHA社交网络项目,也基于IPFS开发。

ETH的新分叉币ETZ也号称号引入IPFS协议。

一个项目好不好,从模仿者数量就能看出。