• 已删除用户
Administrator
发布于 2022-07-31 / 3 阅读
0

星际文件系统 IPFS

百科定义

IPFS(InterPlanetary File System,星际文件系统)是一个将现有的成功系统分布式哈希表(Distributed Hash Tables (DHTs))、BitTorrent、版本控制系统 Git、自认证文件系统(Self-Certified Filesystems - SFS)与区块链相结合的文件存储和内容分发网络协议。这些系统的综合优势给它带来的显著特性:

  1. 永久的、去中心化保存和共享文件 (区块链模式下的存储 DHTs)

  2. 点对点超媒体:P2P 保存各种各样类型的数据(BitTorrent)

  3. 版本化:可追溯文件修改历史(Git - Merkle DAG 默克尔有向无环图))

  4. 内容可寻址:通过文件内容生成独立哈希值来标识文件,而不是通过文件保存位置来标识。相同内容的文件在系统中只会存在一份,节约存储空间。

现有 HTTP 协议的弊端

互联网是建立在 HTTP 协议上的,而 HTTP 有以下几个缺点:

  • 高度依赖主干网与中心机房
    该文章还在编写时,佩洛西窜访台湾,微博服务器叒炸了。正式以为几乎所有的网站服务器都是中心化的,互联网的服务高度依赖主干网、中心机房,战争、自然灾害、互联网管制、中心化服务器宕机等等, 都可能使我们的互联网应用中断服务。

  • 文件存储成本高
    互联网文件经常被删除, 无法永久保存。360 云盘政策不让继续运营,但老用户的数据一直帮忙备份着需要付出高昂的成本,只得要求所有用户下载自己的文件进行本地存储或转存其他云盘。

  • 存储数据安全
    经常会在新闻上看到新闻,某公司服务器遭遇攻击,泄露了多少数据。或是某公司服务器故障,丢失了客户资料。因为数据都是中心化存储(虽然可以做异地的灾备备份,但也只是依赖少数几个机房),数据盗取或是数据的丢失都时有发生,这对于常规资料数据都难以忍受,更能何况之前说的具备货币价值的 NFT 数字藏品。

  • 低效与高成本
    使用 HTTP 协议每次需要从中心化的服务器下载完整的文件(网页、视频、图片等),速度慢,效率低。如果改用 P2P 的方式下载,可以节省近 60%的带宽。P2P 将文件分割为小的块,从多个服务器同时下载,速度非常快,比如迅雷(虽然现在限速了)、快播(亡了。。。)。

IPFS 解决了哪些问题

  • 去中心化存储,不再依赖主干网、中心化服务器
    下图做个对比,解释了HTTP协议和IPFS协议组网的本质区别:
    HTTP vS IPFS

  • 数据存储成本大幅降低
    IPFS使用的是区块链技术,利用 Filecoin(简称FIL) 来激励矿工分享自己的硬盘,并且 IFPS 从全网去掉了冗余存储(从整个网络空间考虑,这将大大节省网络存储空间),将来的 IPFS 存储将会变得非常便宜(与我们现在的云盘,各种中心化的 CND 相比较)。

  • 高效下载
    整个 IPFS 系统是一个分布式的文件存储系统,那么在下载相关数据的时候,将从多个节点同时下载,相比于 HTTP 从中心服务器的下载速度要快很多,大家都用过 P2P 下载(比如: 迅雷、BitTorrent),IPFS 下载过程跟这个类似。

  • 更加安全
    中心化服务器目前很难抵挡 DDoS 攻击,当大量的访问请求从四面八方涌来,中心化的服务器几乎会在一瞬间瘫痪。IPFS 天生就拥有抵挡这种攻击的能力,因为所有的访问将会被分散到不同的节点。

  • 开放(在国内是个伪命题~~)
    比特币是一种去中心化,匿名的数据货币,这些特性使得比特币无法被管制,交易无法篡改。IPFS 同样,由于是建立在去中心化的分布式网络上的,所以 IFPS 很难被中心化管理、限制,互联网更加开放。
    正式由于这种开放性,导致政府监管困难,

IPFS 的运作模式

刚刚有讲到IPFS利用 Filecoin 来激励矿工分享自己的硬盘,进行数据存储。

  • 为什么不常用法币进行结算?
    因为这是面向全球的项目,所有人都可以参与其中。很显然没有办法用任何一个国家的法币给大家进行结算。使用虚拟货币至少保证了除中国、朝鲜等少数社会主义国家的以外的大多数国家均可以参与。

  • 为什么出现了 Filecoin?
    在 Filecoin 出现之前,IPFS 是没有方法可激励他人加入其网络或存储特定数据的。需要一种货币激励机制,鼓励他人贡献自己的闲置宽带与存储资源(当然有了货币激励也可以是非闲置资源)。

  • Filecoin 如何约束存储服务提供商?
    利用区块链的合约机制,FIL 网络设计了极其严苛的惩罚机制,约束存储服务提供商(矿工)长期或永久的保存客户数据。

官方发布了 IPFS 的唯一结算通证Filecoin(FIL),存储服务提供商提供存储服务获取相应的收益。在二级市场实时变现成自己的想要的法币。

技术应用

随着FIL的发布,国外 IPFS 除了用在 NFT 的元数据存储(详见上次分享的NFT存储现状)外,“常规”应用类目也已经初见雏形,例如:区块版Youtube:D·Tube去中心化音乐软件应用:Spotify等。

由于国内政策限制,我们无法直接参与官方IPFS项目,个人学习参与也需要搭梯子并开通MetaMask钱包(别的数字货币钱包应该也可以,比如OKXWeb3钱包,但OKX平台坑过我就不太推荐了)。

好在IPFS技术本身是开源的,基于Go 语言的官方开源项目Kubo(go-ipfs 更名为 Kubo)可以轻松搭建起自己的IPFS私链用于入门学习,探索与应用的结合。但是实际应用中,服务器买的少了中心化的问题就有凸显了,买的多了成本问题就凸显了。在现公司业务场景里,利用10万+智能门禁设备的闲置宽带和存储构建IPFS私链,才是有意义的突破(对硬件的操作系统、配置及实例有着极高的要求~~~)。

参考文章

知乎 什么是 IPFS?(一)
知乎 什么是 IPFS?(二)
知乎 为什么这么多人坚信 FIL 会飙升?
知乎 最全 IPFS 的落地应用介绍
知乎 手把手教你在 IPFS 上部署个人网站
知乎 搭建 IPFS 私有网络
GitHub IPFS
GitHub IPFS KUBO
IPFS DOCS(官方)