什么是 IPFS?去中心化互联网有戏吗?

Jul 19, 2021

最近有一个叫 Brave 的浏览器宣布默认支持 IPFS 协议,这是继 Opera 之后又一个支持 IPFS 的浏览器。 IPFS 协议究竟有什么魔力,为什么能得到一个接一个的浏览器支持呢,本文就简单的聊一聊为什么会诞生 IPFS,以及中心化和去中心化网络的区别。

IPFS 翻译成中文叫做星际文件系统,它是一种网络协议和点对点网络,用于在分布式文件系统中共享和存储数据

它最早是在 2013 年由美国工程师 Juan Benet 提出构思并开始第一版开发,随后在 2014 年他又创立了 Protocol Labs 开源实验室,研究和开发了很多 IPFS 相关的技术和产品。

那么 IPFS 想要解决什么问题呢?

要回答这个问题,我们先讲一讲中心化互联网的现状,你就明白了。

简单的说,我们目前常用的网站和服务可以简化为一个中心化的 client-server 模型,其中 server 作为内容和服务提供方,通常是一个中心化的节点,所有用户需要连接到这个中心化的节点来访问内容,这样就容易出现常见的几种问题:

第一个问题,可用性和可伸缩性差

就是说,一个网站能为多少用户提供服务,很大程度上取决于这个网站肯花多少钱购买服务器和带宽, 而且一旦网站的中心服务器宕机,直接会导致所有用户无法使用。

每年都会有各种热门应用因为宕机而冲上微博和知乎热榜,比如最近刚发生的 B 站宕机事件,还有微博多次因为热点八卦事件造成服务大面积瘫痪,这样的情况还有很多。

当然,这个问题在一定程度上是可以花大量钱缓解的,但是接下来要讲的问题就不是单纯花钱可以解决的了。

第二个问题,内容可能被篡改或删除

比如很多页面保存书签后,过几年再次打开就变成四零四了。 还有更坑的是,在没有任何通知的情况下用户的数据直接被篡改, 相信很多人还记得,多年前,国内某网盘将大量用户珍藏的学习资料在一夜之间全部变成了 8 秒教育短视频,大量用户愤怒之余,却又无可奈何。

最后一个问题,也是最严重的,各种中心化的互联网服务可以拒绝对你提供服务。

2021 年 1 月,在时任美国总统特朗普连任失败,即将离开白宫之际,美国各大社交平台都以违反平台协议等理由, 对特朗普进行了全面封杀。 一顿操作猛如虎,让全世界吃瓜群众目瞪口呆。

Twitter、Facebook 这两大主流社交平台关掉了特朗普的账号,PayPal 切断了特朗普的筹款账号,甚至连 Shopify 也删除了和特朗普关联的商店。

有趣的是,有一个叫 Parler 的社交应用起初坚持几见,并没有跟随主流平台的脚步封杀特朗普,所以短时间内大量用户涌入,让它冲上了 App Store 热榜。

不过很快,苹果和谷歌直接下架了 Parler,云服务巨头亚马逊也宣布终止对 Parler 的托管服务。至此, Parler 的前端和后端全部被端掉。在下架时间长达三个月后,Parler 没有顶住压力,最终做出了妥协,才得以重新上架。

听完上面的事件,大家在吃瓜之余是否感觉到一丝震惊呢?

单纯从技术角度来说,之所以能在几乎一夜之间就让曾经叱咤风云的美国总统在互联网上没有容身之地,只能骂骂咧咧的回家卖红薯。 这在很大程度上是因为美国这几个科技巨头创造并控制了一个巨无霸的中心化网络,所以他们可以决定任何人能不能连接到这个中心化网络, 也可以随时让一个用户在他们的网络上消失。

IPFS 的特点

前面说了这么多中心化网络的缺点,现在再来看看 IPFS 这种分布式的网络是怎么解决这些问题的。

首先,IPFS 不需要使用我们现在常用的 HTTP 协议,它采用了内容寻址技术,每个资源在创建时都会按照默克有向无环图的格式进行分块存储,最终生成一个在全球范围独一无二的 CID, 其他用户可以通过 CID 来访问这个资源,而且 IPFS 默认还会对内容做防篡改校验,确保用户拿到的数据是原始的。

举个例子,
如果你想在自己的网站上存放一张宠物猫的照片,在目前的中心化网络上你需要先申请一个域名,再去云服务商那里购买一台服务器并将这台服务器的 IP 地址和刚才申请的域名通过 DNS 关联在一起,把宠物猫的照片上传到这台服务器,到这里你才可以使用这个域名访问你的宠物猫的照片。

这些步骤中任何一个出现问题,你的网站就会马上变的无法访问,比如域名过期、DNS 解析故障、云服务商故障或者服务商主动停了你的服务,又或者被 DDoS 攻击,再或者服务器被黑了,照片被黑客删除或者替换,任何一个环节都可以决定你的网站能不能正常访问。

如果换成 IPFS,则变的简单了很多,直接使用 IPFS 提供的工具添加宠物猫照片,IPFS 会按照默克有向无环图的格式将照片分块,并计算出代表这张照片的 CID,其他人只需要使用这个 CID 即可访问宠物猫的照片。

听起来太简单了?

没错,对用户来说就这么简单。

另外一个特点是,IPFS 没有中心化服务器,用户不需要向云服务商申请服务器和 IP 地址,它使用 DHT 机制来查找网络上哪些节点存放了目标资源,然后直接从这些节点下载自己需要的部分,同时会使用哈希算法验证资源的正确性,避免篡改。

资源下载到自己的设备后,默认会自动向其他用户提供服务。也就是说,IPFS 网络上每个节点既是消费方,也是内容提供方,并且同时在线的用户越多,速度越快。

没有完美的技术

经常使用 BT 协议的同学可能知道,点对点网络存在一个很严重的问题是 "内容保活",也就是如何确保一个资源一直有人上传,如果资源没有人上传,自然就无法下载,那要怎么解决这个问题呢,答案是奖励机制。

比如基于 BT 协议衍生出的 Private Torrent 就依靠奖励和惩罚机制取得了非常好的效果,用户需要保持一定的上传量,上传比例越高获得的奖励越多,所以很多 PT 用户会购买专业的 NAS 设备来保持 24 小时上传。

这种奖励机制在 IPFS 生态也有,而且结合区块链技术做得更好。

Filecoin

2020 年,Protocol Labs 正式上线了 Filecoin,它是一种基于 IPFS 和区块链技术打造的点对点网络和加密货币,同时也是一种云存储网络。

Filecoin 内置了奖励机制,用户可以向矿工支付一定费用,要求矿工帮自己存储文件, 同时其他用户取回这个文件也需要支付给矿工一定费用,只要你有足够的存储资源并且实现了 Filecoin 协议,即可加入 Filecoin 主网赚取回报。

对于 IPFS 来说,有了 Filecoin 这种基础设施,IPFS 就可以解决点对点网络带来的 "内容保活" 问题,从而获得稳定可靠的文件存储服务。

当然天下没有免费的午餐。如果用户觉得自己的内容是需要长期可访问的,需要向矿工支付一定费用,让自己的内容进入 Filecoin 主网,从而获得安全可靠的存储服务。

中心化和去中心化哪个更好呢,未来会怎么样?

技术世界没有银弹,中心化网络和点对点网络都有不同的优缺点,比如就从隐私泄露的角度来讲,IPFS 要比中心化网络更严重,当你直接使用 IPFS 协议访问资源的时候,所有你连接到的节点都可以记录下你的 IP。

还有很重要的一点,IPFS 内容不可篡改的特性和当前中心化网络普遍存在的内容过滤和审查机制有强烈冲突。

未来很长时间内肯定还是中心化网络为主,不过随着 IPFS 生态的成熟,以及利用区块链等技术的加持,相信未来会有更多有趣实用的 IPFS 应用出现。

比如当今互联网上的网盘产品都非常昂贵,并且没法保证内容的安全性,搞不好哪一天就给你删掉或者改成 8 秒教育短视频了,那么利用 Filecoin 的分布式存储、安全性等特点是不是可以打造一款价格实惠、内容安全的网盘产品呢?

这篇文章对你有帮助吗?