IPFS 生态总结

IPFS Ecological Summary

Posted by Jin on September 7, 2020

IPFS 生态总结

IPFS 简介

IPFS(星际文件系统)是一种基于区块链内容的去中心化存储解决方案。IPFS 主要利用散布在众多电脑以及节点上的点对点(Peer-to-Peer)网络模型来进行文件共享。通过这一网络模型,文件会分解成不同的部分并存储在网络节点上,节点再利用哈希表来对文件进行追踪。当根据各部分的哈希值再一次将零散的信息组合起来时,就相当于原始文件的重建过程。

IPFS 定义

  • IPFS 是协议

定义了基于内容寻址的文件传输协议,并结合了来自 Kademlia、BitTorrent、Git 等想法来协调内容传输。在这个网络协议下,访问文件或数据的依据,是一串串与文件匹配的唯一哈希值。

  • IPFS 是文件系统

有文件夹、文件和基于 FUSE 的可挂载文件系统。虽然在此协议下,检索文件是依据哈希值而非 IP,但具体文件依然存储在以树状层级文件夹系统为基础的文件系统。

  • IPFS 是互联网

文件可以通过 HTTP 网关来访问,例如 http://localhost:8080/ipfs/QmU7r9CTAK9zs5YqfpC9V6WWgt8FUfUe3FCTbLk1cEprLG, 哈希寻址保证了内容的真实性。

  • IPFS 是 P2P(点对点通讯)

支持世界范围点对点文件传输,具有完全分散的架构,没有中心点故障。掠过所有中间节点的端对端直达传输。

  • IPFS 是 CDN

在本地库中添加一个文件,立即对世界可用,并拥有对缓存友好的内容哈希地址和 BitTorrent 一样的带宽分发。访问此网络下的文件就像访问本地文件一样迅速。

  • IPFS 是云服务

基于分布式存储结构,集合全节点存储能力,以供存储检索需求。

IPFS 特性、创新与解决的核心问题

特性

  • 去中心化文件存储

IPFS 的核心创新理念旨在利用分布式哈希表(DHT)进行文件系统的存储和检索。IPFS 类似于 BitTorrent 协议,但在指向共享文件的方式上有所不同。它将以键值对的形式将文件储存在区块链上。所有数据将被分割成256千字节的区块,散布在节点或计算机网络中,只能通过有效协调来支持节点之间的高效访问和查找。BitTorrent 并没有采用区块链技术,而是依靠种子文件来指向对应文件。你可以选择使不同的种子文件指向同一文件,但是在 IPFS 文件系统中,你只需要一个指向文件的哈希地址。

在 IPFS 上发布文件的方式与云端发布文件的方式有所不同。IPFS 上的所有数据都可以通过其哈希地址进行寻址。当有人申请访问数据时,他们是通过访问哈希地址获取数据的,而并非直接接触到实际文件本身。也就是说,IPFS 提供了文件实际地址的抽象概念,因此实际储存单元对应用程序都是无关紧要的。这种抽象概念为应用程序的开发人员消除了复杂性。

  • 存储寻址方案

IPFS 系统与典型的基于网络的云存储系统的区别在于,它是以内容为基础的(内容寻址),而不是以地址为基础的(地址寻址)。地址寻址存储系统的一个案例是超文本传输协议(HTTP)。如果存储系统是以地址为基础的,就需要使用域名服务器的主机名来对服务器进行标示。它可以通过映射到友好用户名称的逻辑寻址方案(如IP地址)来跟踪主机。如果主机更改了名称或地址,它还必须在对应的名称服务表中进行修改。

基于内容的寻址存储适用于从网络获取数据。这需要一个内容标识符来确定文件的实际存储位置。在这种情况下,用户是根据密码散列而非逻辑地址对数据进行访问的,这就相当于文件的数位指纹。不管谁上传了文件,上传时间和地点有什么区别,网络都会根据哈希值返回相同的内容。

在速度和可靠性方面,IPFS系统的性能优于HTTP协议。与依赖服务器地址获取文件的方式不同,内容寻址存储系统可以从用户附近的各种服务器(例如,IPFS网络上的对等点或节点)提供文件。换句话说,用户可以简单地对文件进行搜索,而无需搜索引擎提供坐标,即服务器名称或地址。相反,用户可以通过文件的哈希值对其进行引用,而且可以通过网络附近的可用节点获取到相应文件。

创新

IPFS 最大的创新是使用 DAG 技术将数据以种子文件的组织形式改造成了以文件系统的组织形式,由于 IPFS 所使用的 HASH 路径具有无限多的命名空间,所以理论上全世界的人可以把所有的文件放在同一个文件系统之下,这也是 IPFS 星际文件系统的命名来历。

IPFS 第二大创新是 Dweb 的概念,我们今天的网络以 HTTP 协议为基础, HTTP 是一种中心化的流量模式,即严重浪费了带宽资源,又严重依赖于全球主干网络,当然这也为某些大国控制网络提供了方便。黑客也更方便了,看你不爽了就 DDos 你。而 IPFS Web 是没有特定服务器的 P2P 节点网络。

解决的核心问题

IPFS 的出现主要是想解决中心化存储的一些问题,比如数据安全,网络效率,作用在数据安全上数据分片和数据恢复技术并保证数据尽可能的安全。IPFS 星际文件系统,可以从根本上解决目前互联网数据存储的安全性低、速度慢、成本高等问题,在这个数据大爆炸的时代,具有广阔的应用前景和市场空间。

IPFS 应用场景

下面整理并介绍部分的IPFS应用场景。

搜索引擎

  • Firefox 火狐浏览器

火狐 WebExtensions 产品经理 Mike Conca 在 Mozilla 官网发布了文章表示浏览器扩展应用支持包括 IPFS 在内的分布式协议,即对“ipfs://”协议的支持。

  • Google 谷歌浏览器

IPFS 伴侣(IPFS Companion)是由 IPFS 官方应用社区孵化出来的一个浏览器插件,在谷歌浏览器扩展应用里可以找到。可以用来简化 IPFS 资源访问的浏览器扩展,帮助用户在本地更好的运行、管理自己的节点,并随时查看 IPFS 节点的资源信息。

  • Opera 浏览器

Opera 与 IPFS 合作已久,预计其 Android 版 Opera 浏览器中推出 IPFS 支持并在浏览器中开发了加密钱包,有 Android、iOS 和桌面版。

  • IPSE

IPSE 是一款基于 IPFS 网络的搜索引擎,致力于打造下一代互联网的流量入口。在 IPSE 上可以搜索 IPFS 网络的文件,由于采用哈希标注技术,可以让内容的哈希地址转化为文字标题,快速访问。

文件传输

  • Partyshare

Partyshare 是构建于点对点超媒体协议 IPFS 之上的开源文件共享应用程序,它允许用户使用 IPFS 共享文件。用户只需将所需文件拖到 PartyShare 文件夹中,系统将对其进行哈希处理/分配地址即可,其他人便可以使用用户给他们的地址来请求文件。

  • IPWB

ipwb 通过将 WARC 文件的内容传播到 IPFS 网络中来促进 Web 存档中的持久性和协作。IPFS 是对等内容可寻址文件系统,其固有地允许重复数据删除并促进选择复制。ipwb 在将 WARC 响应记录的标头和有效负载分散到 IPFS 之前,以利用重复数据消除功能,使用返回的 IPFS 哈希的引用构建 CDXJ 索引,并在重播时将 IPFS 的标头和有效负载合并。

内容平台

  • Netflix

Netflix 主要提供超大数量的 DVD 并免费递送,除此以外它的用户也可以通过电脑、电视、iPad、iPhone 等联网收看其电影、电视节目。近日,IPFS 宣布与全球最大的流媒体平台 Netflix 达成合作。将 IPFS 系统中的对等服务等技术整合到网飞的工具中,利用 IPFS 的技术加速云的构建、设计和测试。作为一家地位和实力非同一般的企业为什么选择和IPFS进行合作呢?Netflix 想要解决的容器分发挑战:如何在大规模,多区域环境中有效地提取容器图像。图像层通常位于不同的区域,利用 IPFS 作为点对点 CDN,可以使 Netflix 基础架构内的节点进行协作并将共同的种子播种到相邻节点,从而有助于更快地分发容器。

  • DTube

DTube 是第一个加密分布式视频平台,建立在 STEEM 区块链和 IPFS 点对点网络之上,未来会支持 FIlecoin 网络,它旨在成为 YouTube 的替代品,允许用户在 IPFS/FIlecoin 基础上观看或上传视频,并在不可变的 STEEM 区块链上进行分享或评论,同时赚取加密通证。

社交类

  • Indorse

Indorse 是一个基于以太坊平台的社交网络,它旨在改变当前职业社交网络的现状。Indorse 使用了 IPFS 网络用做数据存储,保证用户数据安全,杜绝职场欺骗现象,重现一个真实的职场社交平台。

  • Steepshot

Steepshot 是一款区块链驱动的社交平台,你可以使用它与家人和朋友分享照片。最重要的是,你可以为策划的所有内容以及其他人参与的活动获得通证奖励。其所有上传到平台的数据都安全保存在 IPFS 系统中。

  • 3Box

基于 IPFS 构建的 3Box 聊天插件,使区块链开发人员更容易参与包括私人聊天,上传照片,喜欢帖子以及与用户生成的内容和社交互动相关的其他常见活动。

  • Peepeth

Peepeth是一个分布式社交平台,可以看作是区块链版推特。

电商类

  • Origin

Origin 电子商务商店以 IPFS 网关和一个以太坊节点为依赖项。整个前端应用程序逻辑,产品数据库和支持媒体都托管在 IPFS 上。

  • Open Bazaar

Open Bazaar 是一个结合了 eBay 和 BittTorrent 特点的去中心化商品自由交易市场。OpenBazaar 平台没有一个中心服务器,运用加密学做担保,信任来自于代码和数学,而不是人。

其他应用

  • Ethlance

Ethlance 是一个基于区块链的去中心化就业市场,其数据库分布在以太坊公共区块链上,源文件位于 IPFS 上。所有人都可以永远免费使用 Ethlance,而没有任何中央机构对其进行控制。

  • Textile

Textile 是一款开源照片备份手机软件,支持在设备上整理照片或远程备份照片,可以将照片发布给朋友,家人或喜爱的社区。用户上传的照片全部存储在 IPFS 分布式存储网络中,旨在永久保存,且照片都经过私钥加密,不用怕出现当年苹果 iCloud 照片泄漏的事件。

  • Peergos

Peergos 是建立在 IPFS 之上的一个加密和访问控制,对标的是百度网盘,端对端加密,对等文件存储,共享和通信网络。Peergos 旨在让您对数据进行控制。它是一个开源,安全,可自托管的文件存储和共享平台。您的所有文件都在本地加密,您的私钥永远不会离开您的计算机,能最大程度上保护个人隐私。

IPFS 生态发展情况

IPFS 于2014年上线,作为新兴网络技术,一直被广大技术爱好者研究,并尝试运用到生活场景中。2019年下半年数据,全球 IPFS 节点已超过百万,存储于 IPFS 网络的数据达100亿份。

IPFS 协议发布至今近6个年头,技术也越来越成熟,作为下一代互联网底层通信协议,IPFS 已经成功应用在数据存储、文件传输、网络视频、社交媒体、去中心化交易等各个领域,而这些正在重构整个互联网。

在2019年的 ETHDenver 峰会上,在提交给 ETHDenver 委员会的52个参会项目中,有24个使用 IPFS 构建!这说明了 IPFS 在基于 Web3 思想构建产品生态的组织里已经形成一种浪潮,各方开发者都在研究如何让自己的产品去中心化,或者如何更好的取代现有的中心化应用。

IPFS 应用层目前还多为当前互联网商业业务突出的产品的区块链版,有音视频娱乐服务,电子商务等,但结合 IPFS 特性及中心化社会的痛点,未来但凡涉及数据量大,带宽压力,数据安全,文件版本等基本诉求的业务,皆向去中心化甚至 IPFS 靠拢。

另外,Filecoin 毋庸置疑肯定是 IPFS 最受人关注的生态之一,Filecoin 如果能够成功,将为 IPFS 提供最为坚实的网络基础设施支持。而据最新消息,Filecoin主网上线时间已经定为2020年9月中下旬。

出生近6年的 IPFS 其实已经从一个婴儿长成了孔武有力的青年,不仅是 IPFS 协议本身得到了完善和升级,IPFS 的生态也愈加庞大、蓬勃、欣欣向荣。早在2014年 juan benet 就发起了 IPFS 项目,2015年成立了协议实验室,后续发布了数据传输层 Libp2p,数据加密和具象的 IPLD,用于定义和查找数据的 multiformats等模块,截止现在,整个 IPFS 网络已经存储了上百亿份文件,目前基于 IPFS 网络搭建的应用比如 Dtube 视频分享网站,discussify 点对点的论坛平台,Arbore 朋友之间的文件共享程序等等,基本具备了早期互联网的雏形,但很重要一点,这些都是基于分布式的网络存储,它的下载速度更快,实现了全球存储,安全,数据永存等,解决了现有互联网架构存在的一些问题。

同时生态应用端基于 IPFS 的开发已经逐渐成熟,开发者可以更简单容易的在上面开发应用,比如 Berty 这个项目,创建了基于安卓,ios 的程序包,能更快的在移动端上使用 IPFS 节点进行数据存储和传输。