互联网是人类历史上最重要、最具影响力的发明,如今,足不出户,我们便可以接受来自全世界的讯息。而谈到互联网,我们就不得不提及HTTP。自1960年美国人Ted Nelson首创了HTTP协议以来,HTTP就成为了互联网世界应用最为广泛的基础性协议,但近年来,随着技术能力的进步,人们对于互联网安全、可信任的诉求也不断增加,HTTP协议的不足也逐渐暴露了出来。就在这个时候,IPFS闪亮登场!
IPFS全称The InterPlanetary File System,由美国 Protocol Lab 实验室推出,中文翻译成“星际文件系统”。IPFS是一个面向全球的、点对点的分布式文件系统,能将所有具有相同文件系统的计算设备连接在一起,其诞生目标就是取代HTTP。
IPFS的本质是一个分布式存储和共享文件的网络传输协议,是一种内容可寻址的对等超媒体分发协议,利用基于内容的地址来替代基于域名的地址。简单来说,用户想要寻找的是存储在某地方的内容,而不是地址本身,所以只需确认验证内容的哈希,这样就能够更快速、更安全地获取网页内容。
很显然,IPFS的主要作用是提供数据的存储和传输,但是它真的能够取代HTTP吗?
取代HTTP?是痴心妄想还是势在必行
在我们的日常生活中,无论是上百度还是逛淘宝(网站),都是基于HTTP协议,HTTP的底层TCP协议是一种典型的中心化的网络,即不论内容分发以何种分布式的方式进行,其本质仍然是中心化,而中心化这一点则是我们此次要讨论的关键。
举个例子,我们平时要储存文件的话,可以直接储存在我们的笔记本上,也可以上传到云端(目前排名靠前的云服务提供商有AWS、微软Azure、谷歌云、阿里云等),这就是典型的中心化的服务器模式。虽然正常情况下也不会丢,但是如果服务器中断或者服务提供商借由违反规定移除你的文件,都会引发一系列问题。而IPFS所使用的分布式存储则不会出现这类问题。
IPFS上载文件时,仅上载从原始文件中提取的元数据,然后将原始文件分为几部分分布式存储在网络上。上传完成后,用户将从IPFS收到哈希值,之后就可以直接使用这个哈希地址对同一份文件进行访问。简单地说,就是先将整个文件进行拆散,然后储存在全球的不同节点,需要数据的时候,通过文件的索引,从原来存储的位置找回来。IPFS将数据碎片化存储,没有中心处理器去处理分析,并且相较于云存储,IPFS储存的成本更加低廉。
IPFS vs HTTP,两者有何区别
(1)从成本角度来看,HTTP是中心化服务器运行,运维成本较高,只要中心化数据库受到DDOS攻击,或者是遭受到不可抗力的损害,其所有数据会全部丢失;IPFS能很大程度上降低服务器存储成本,同时还能降低带宽成本。
(2)从效率角度来说,HTTP依赖中心化服务网络,服务器必须是24小时开机状态才可运行;IPFS是 P2P网络拓扑,整个网域内所有计算机均可作为存储节点,就近分布式存储大大提高了网络效率。
(3)从安全性方面来看,HTTP所有流量都直接搭载在中心化的服务器上,承载的压力极大,容易造成系统崩溃,HTTP还容易遭受DDOS攻击;IPFS的存储方式是去中心化的分布式存储,黑客难以攻击,文件不易丢失,安全性高。
(4)从客户体验角度来看,HTTP的客户网络访问很大部分不是本地化,存在网络延时;IPFS较大程度使得网络访问速度加快,时延减少,体验感会明显提升。
因此,IPFS被称为颠覆HTTP的协议也不是没有理由的。事实上,目前IPFS已经成为了分布式HTTP协议的工业标准。
IPFS+区块链:相辅相成、相得益彰
说到IPFS就不得不提起区块链,我们上百度随便搜一搜,十篇IPFS的文章里有八篇都能谈到区块链,那本文也不能免俗,一起来看看IPFS跟区块链有什么不得不说的故事。
什么是区块链?
区块链技术伴随着比特币的出现而诞生。区块链发展至今,一共经历了三个时代。可以说,比特币是区块链1.0时代,以太坊是区块链2.0时代,而区块链3.0时代的到来,必将是一种完全去中心化互联网时代的来临。
那么区块链到底是什么呢?在最早期,区块链仅仅被认为是比特币的底层技术之一,是一种不可篡改的链式数据结构。经过几年的发展,区块链从单纯的数据结构变成了分布式账本的一系列技术的总称,整合了加密、共识机制、点对点网络等技术。近几年,区块链的非账本类应用开始逐渐兴起,大家开始将区块链描述为分布式的数据库,旨在维护各个相互不信任的节点中数据库的一致性,并且不可篡改。
目前,区块链仅仅是用来智能记录一些简单的交易数据,尽管如此,随着时间的推移,区块链上的数据已经越来越多,如果要在一条区块链网络上存储其他类型的数据、文件,显然会非常低效,成本也非常高。区块链本身并不适合存储大量的数据,这就到了IPFS出场的时候了。
IPFS,区块链的最佳拍档
很多人会把IPFS和区块链混为一谈,但是IPFS并不是区块链,它是一种分布式的、点对点的新型超媒体传输协议,主要作用是提供数据的存储和传输,鉴于区块链不适合存储大量数据的特性,IPFS可以成为区块链的底层基础设施,为区块链、DApp 提供数据存储服务。
区块链的诞生本是为了做到去中心化,在没有中心机构的情况下达成共识,共同维护一个账本。IPFS与区块链协同工作,能够补充区块链的两大缺陷:一是区块链存储效率低,成本高;二是跨链需要各个链之间协同配合,难以协调。
IPFS和区块链是最佳拍档,我们可以使用IPFS来处理大量数据,并将不变的、永久的IPFS链接放置到区块链事务中,而不必将数据本身放在区块链中。毕竟,区块链的本质是分布式账本,本身的瓶颈之一就是账本的存储能力。目前大部分公链的最大问题是无法存储大量的数据在自己的链上,运用IPFS技术解决存储瓶颈是可行方案之一。
IPFS是王婆卖瓜还是真的有落地
尽管很多人对于IPFS技术还持一些怀疑态度,但截至目前,已经有不少企业基于IPFS开发出了应用。
1. Filecoin
Filecoin是让大众参与 IPFS 的一个解决方案,是运行在 IPFS 上的一个激励层,是一个基于区块链的分布式存储网络。Filecoin 和 IPFS 一样,都是 Protocol Lab 实验室推出的。
Filecoin把云存储变为一个算法市场,代币在这里起到了很重要的作用。代币是沟通资源(存储和检索)使用者(IPFS用户)和资源的提供者(Filecoin矿工)之间的中介桥梁,Filecoin协议拥有两个交易市场—数据检索和数据存储,交易双方在市场里面提交自己的需求,达成交易。IPFS和Filecoin相互促进,共同成长,解决了互联网的数据存储和数据分发的问题,特别是对于无数的区块链项目,IPFS和Filecoin将作为基础设施存在。
2. DTube
DTube是一个去中心化的视频共享平台,用户可以拥有完全的控制权。DTube创造了一个新的模式,让用户能够信任他们所使用的社交媒体平台。为此,他们开发了一个具有去中心化构架的社交视频平台,利用IPFS存储和分发,视频上传采用了STEEM区块链以经济来激励视频创作者的作品和内容策展人的策划工作。
3. Cancer Gene Trust
Cancer Gene Trust癌症基因凭证是一个基于IPFS的分布式共享医疗数据项目,用于快速存储和共享体细胞癌症数据和相关的临床信息。这个项目旨在从全球范围内的医疗数据中提取关键数据,并使研究人员,临床医生和科学家能够在实时,公开和可信的环境中访问数据。CGT会将数据存储在IPFS上,并且将数据的哈希提交至网络中,这些哈希可以永久地保存在任何区块链中,会有一个Dapp通过ETH上的智能合约管理含有这些数据的名单。
未来,新基建的加持
4月20日,国家发改委召开新闻发布会,明确“新基建”具体范畴主要包括信息基础设施、融合基础设施、创新基础设施。其中,信息基础设施主要是指基于新一代信息技术演化生成的基础设施,比如,以5G、物联网、工业互联网、卫星互联网为代表的通信网络基础设施,以人工智能、云计算、区块链等为代表的新技术基础设施,以数据中心、智能计算中心为代表的算力基础设施等。
然而,不论是5G、人工智能还是数据中心,都需要庞大的数据作为支撑,这些数据通常以每年50%的速度快速激增,想要存储这些数据,需要非常高性能、高吞吐率、大容量的基础设备。但现在的中心化存储,无论在技术和设备上都无法满足。
IPFS分布式存储作为一项十分具有突破性的区块链技术,能够很好地解决当下互联网数据存储瓶颈及数据存储安全问题。同时,IPFS分布式存储还可为5G时代物联网、人工智能等服务提供支持。
未来,IPFS的到来或将引发新一轮的数据存储方式变革,从而带来整个互联网的革新。