首页 > IPFS > 入门篇:IPFS/Filecoin小白请往这里看,简单明了入门指南
IPFS星际数据  

入门篇:IPFS/Filecoin小白请往这里看,简单明了入门指南

摘要:IPFS是一种基于内容寻址、版本化、点对点的超媒体传输协议,允许网络中的参与者互相存储、索取和传输可验证的数据,对标http的新一代通信协议。来源于火星财经专栏作家IPFS星际数据

大千世界,浩瀚文海,有幸你能看到我的文章,或许从此刻起,我们之间就产生了微妙的“感情”。这篇文章有点长,作为小白的你:请认真仔细的阅读,对于你后期的一个项目投入是非常有帮助的。那么作为技术派系的IPFS是一个明星项目,其激励层Filecoin主网上线,在2020年热度飙升,捕获了巨大的流量与关注度。记住那个不断地和你分享IPFS /filecoin的人,你以后会感谢TA的。如果你错过IPFS/filecoin ,将错过一个时代,他不是一个什么普通项目,因为他是互联网2.0时代的未来,也是区块链3.0时代的王者,是真正对人类社会非常有价值的。 投资是个长久之计,不是一朝一夕,所以不可操之过急。

IPFS(Inter Planetary File System即星际文件系统)是一种基于内容寻址、版本化、点对点的超媒体传输协议,允许网络中的参与者互相存储、索取和传输可验证的数据,对标http的新一代通信协议。IPFS的目标是打造一个更加开放、快速、安全的互联网。

IPFS产生的背景

2014年5月,斯坦福大学计算机硕士毕业的Juan Benet创立了协议实验室(Protocol Lab)。协议实验室是一个网络协议的研究、开发和部署的实验室,致力于构建协议、系统和工具来改进互联网的工作方式,并关注如何存储、定位和传输信息。协议实验室的目标是用新的技术突破、伟大的用户体验设计和开源的方法来解决传统互联网的种种弊端,并创建了IPFS、Filecoin、libp2p、IPLD、Multiformats等五个项目。

IPFS概述

IPFS(InterPlanetary File System即星际文件系统)是一种基于内容寻址、版本化、点对点的超媒体传输协议,是一个P2P的分布式文件系统,对标http的新一代通信协议,目标是打造一个更加开放、快速、安全的互联网。IPFS可以被视为一个单一的BitTorrent群,交换对象在一个Git仓库,提供了一种高通量处理的依托于内容寻址超链接的块存储模型。对于一个存放在IPFS网络的文件资源,通过这个文件资源的内容生成的唯一编码去访问。IPFS可以讲数据分片存储到分布式的存储节点,与BitTorrent类似,在访问时不需要关系存储在哪里,可以从多个存储节点分片获取。

IPFS继承了Git版本管理技术,从而可以使用内容的升级变化。为了实现真实性、不可篡改性,IPFS维护一个分布式的哈希表,实现一种Merkle DAG的数据结构,还结合了自我证明单命名空间。IPFS中没有单节点故障,且众多节点无须信任彼此。所以,IPFS是集合了BitTorrent—BT协议技术、Git—版块化技术、DHT—分布式哈希表、SFS—自认证命名技术这四个成熟技术组合形成的一种通讯协议方式,允许网络中的参与者互相存储、索取和传输可验证的数据。IPFS的目标是取代HTTP,打造一个更加开放、快速、安全的互联网。

HTTP协议的弊端

我们现在使用互联网都是在http或https协议下运行的,http协议也就是超文本传输协议,是用于从万维网服务器传输超文本到本地浏览器的传送协议,从1990年提出至今已经近30年了,他对于目前互联网的爆炸性成长居功至伟,成就了互联网的繁荣。但是HTTP协议是基于C/S架构下的互联网通信协议,基于主干网络中心化运行的机制,也存在诸多弊端。

首先,互联网上的数据经常因为文件被删除或服务器关闭而永久被抹去。有人统计过目前互联网上的web页面平均保存寿命只有100天左右,我们经常看到一些网站出现“404错误”。近几年,新浪网盘、腾讯微云、金山快盘等网盘纷纷关闭,如果你不把数据下载到本地硬盘的话,你在网盘上的数据就会被清零。IPFS提供了文件的历史版本回溯功能,可以很容易的查看文件的历史版本, 且数据无法删除,可以得到永久保存。

其次,主干网络运行效率低,使用成本高。由于中心化的通讯模式导致所有终端都要从一个Web服务器查找数据,相同的文件会在不同的服务器上重复存储,这就要求服务器的带宽很大。使用HTTP协议每次需要从中心化的服务器下载完整的文件,速度慢、效率低。IPFS是基于内容寻址的存储模式,相同的文件都不会重复存储,它会把过剩的资源挤压下来,包括存储空间都释放出来,数据存储成本就会降低。如果改用P2P的方式下载,带宽使用成本可以节省近60%。

第三,主干网络并发机制制约互联网访问速度。这种中心化主干网络的模式也导致在高并发情况下网络访问时候的拥堵,最典型的就是春运抢购火车票以及双11剁手节的时候。

第四,中心化限制了web的成长。现在的互联网是由数百万个分布在世界各地的服务器构成的,是一个高度中心化的网络。在现有的http协议下,所有的数据都保存在这些中心化服务器上,互联网巨头们不但对我们的数据有绝对的控制权和解释权,各种各样的监管、封锁、监控一定程度上也极大的限制了创新和发展。建立在去中心化的分布式网络上的IFPS很难被中心化管理和限制,互联网将更加开放。

第五,HTTP对主干网络依赖严重,存在严重的安全隐患。所有数据存储在一个地方,为寻求规模效应,机房就会建设在一个地方,就会非常依赖一个主干节点,一旦“单点式”的中心被摧毁或者发生数据丢失、造假的情况,那么整个网络都会随之瘫痪,或者接收到错误的信息,用户的信息安全和隐私容易受到威胁。

为了支撑HTTP协议,服务器7*24小时开启,对于大流量公司,比如百度、腾讯、阿里等,投入大量资源维护服务器和安全隐患,防止DDoS、XSS、CSRF等攻击。主干网络受制于战争,自然灾害,中心服务器宕机等因素,都可能造成整个互联网中断服务。IPFS分布式存储可以极大的降低对中心主干网络的依赖。

Juan Benet指出两个关键:“我们使用的是内容寻址的技术,也就是说内容可以从源服务器分离出来,并永久储存。这就意味着内容可以在距离用户非常近的地方储存和托管,甚至是储存在同一个房间里面。内容寻址还可以让我们校验数据,因为其他主机可能是不受信任的。一旦内容被下载到用户的设备之后,它就可以被无限期的保存。”

IPFS还可以解决困扰HTTP互联网多时的安全问题:内容寻址和内容签名技术可以保护基于IPFS的网站,杜绝DDoS攻击发生的可能。IPFS还可以归档重要的公共记录内容,避免网站终止运营所带来的损失。IPFS的最后一个核心改进是去中心化的内容分布,这点可以让人们在分散的互联网服务(甚至是离线的情况)之下获取互联网的内容。“我们让网站和网页应用摆脱了源服务器的牵制。”Juan Benet解释,“它们可以按照比特币网络的模式进行分布。”这是HTTP无法做到的这一点,而且对于网络条件欠佳的地方和市郊地区来说是一个极大的好处。

IPFS包含的内容

节点身份。每一个IPFS节点都有一个独一无二的身份ID,利用节点的公钥生成的加密哈希,节点的活动都需要使用这个ID,就像是IPFS网络里面节点的身份证。

网络。IPFS节点要和网络里面成百上千的其他节点通讯,现实中的网络结构如此复杂,IPFS使用ICE NAT穿透技术来保障网络的连通性。

路由。IPFS网络的路由使用的事DHT,借鉴了S/Kademlia,使用一个节点可以快速地查找到其它节点。

数据交换协议。IPFS借鉴BitTorrent协议,使用了叫做BitSwap的数据交换协议,该协议使用两个列表,想要的数据块(want_list)和我有的数据块(have_list)与其他节点进行数据交换。

对象存储。IPFS存储数据私用的事MerkleDAG结构,这赋予了IPFS内容寻址、防篡改、去重功能。

版本控制系统。IPFS在MerkleDAG上面添加了Git版本控制功能,这使得IPFS文件拥有了时光机功能,可以轻松查看文件的变动历史。

自认证命名系统。IPFS使用了SFS自认证系统给文件命名,同时提供了IPNS解决传播问题,而且还兼容了现有的域名系统。

IPFS的技术架构

IPFS有八层子协议栈,从低往高分别为身份、网络、路由、交换、对象、文件、命名、应用,每个协议栈各司其职,又互相搭配。

身份层和路由层

对等节点身份信息的生成以及路由规则是通过Kademlia协议生成制定,KAD协议实质是构建了一个分布式松散Hash表(distributed hash table),简称DHT,每个加入这个DHT网络的人都要生成自己的身份信息,然后才能通过这个身份信息去负责存储这个网络里的资源信息和其他成员的联系信息。

网络层

lib2p可以支持任意传输层协议。ICE NAT traversal框架整合STUN、TURN和其他类型的NAT协议,该框架可以让客户端利用各种NAT方式打通网络,从而完成NAT通信,这对于IPFS的p2p网络非常重要。

交换层

类似迅雷、电驴这样的BT工具,IPFS团队把BitTorrent进行了创新,叫作Bitswap,它增加了信用和帐单体系来激励节点去分享,用户在发送给其他节点数据可以增加信用值,从其他节点接受数据降低信用值。如果用户只去接收数据而不分享数据,信用分会越来越低而被其他节点忽略掉。

对象层和文件层

对象层共同管理IPFS上80%的数据结构。大部分数据对象都是以Merkle DAG的结构存在,这为内容寻址和数据去重提供了便利。文件层是一个新的数据结构,和DAG并列,采用Git一样的数据结构来支持版本快照。

命名层

具有自我验证的特性(当其他用户获取该对象时,使用指纹公钥进行验签,即验证所用的公钥是否与NodeId匹配,这验证了用户发布对象的真实性,同时也获取到了可变状态),并且加入了IPNS这个巧妙的设计来使得加密后的DAG对象名可定义,增强可阅读性。

应用层

IPFS核心价值就在于上面运行的应用程序,可以利用它类似CDN的功能,在成本很低的带宽下,去获得想要的数据,从而提升整个应用程序的效率。

IPFS的关系图谱

协议实验室团队在开发IPFS时,采用高度模块集成化的方式,像搭积木一样去开发整个项目。其中IPLD、LibP2P、Multiformats这三个模块服务于IPFS底层。下面这张是IPFS的关系图谱。

Mutiformats是一系列hash加密算法和自描述方式的集合,用以加密和描述nodeID以及指纹数据的生成,它在现有协议基础上对值进行自我描述改造,即从值上就可以知道是如何产生的。libP2P是IPFS核心中的核心,面对各式各样的传输层协议以及复杂的网络设备,它可以帮助开发者迅速建立一个可用P2P网络层,快速且节约成本。libp2p的主要功能包括:发现节点、连接节点、发现数据、传输数据。它类似现实世界的快递公司,连接着千千万万个节点,除了负责分发数据,还负责查找数据。

IPLD是一个转换中间件,将现有的异构数据结构统一成一种格式,方便不同系统之间的数据交换和互操作。现在IPLD支持比特币、以太坊的区块数据。IPLD中间件可以把不同的区块结构统一成一个标准进行传递,为开发者提供了成功性比较高的标准,不用担心性能、稳定和bug,这也是IPFS为什么受到区块链系统欢迎的重要原因。

IPFS应用了这几个模块的功能,集成为一种容器化的应用程序,运行在独立节点上,以Web服务的形式,供大家使用访问。IPFS允许网络中的参与者互相存储,索取和传输可验证的数据。但是由于IPFS是开源的,可以被免费下载和使用,并且已经被大量的团队使用。运用IPFS及技术各个节点可存储它们认为重要的数据;但目前没有简单的方法可以激励他人加入网络或存储特定数据,IPFS的推广普及的速度明显很慢。

IPFS是如何工作的

IPFS是基于文件内容进行寻址的。IPFS为每一个文件分配一个独一无二的哈希值(文件指纹:根据文件的内容进行创建),即使是两个文件内容只有1个比特的不同,其哈希值也是不相同的。所以IPFS是基于文件内容进行寻址,而不像传统的HTTP协议已于基于域名寻址。

文件版本管理。IPFS在整个网络范围内去掉重复的文件,并且为文件建立版本管理,也就是说,每一个文件的变更历史都将被记录,可以很容易回到文件的历史版本查看数据。

文件查询。当查询文件的时候,IPFS网络根据文件的哈希值(全网唯一)进行查找。由于每个文件的哈希值全网唯一,所以查询将很容易进行。每个节点除了存储自己需要的数据,还存储了一张哈希表,用来记录文件存储所在的位置,用来进行文件的查询、下载。

IPNS。如果仅仅使用哈希值来区分文件的话,会给传播造成困难,因为哈希值不容易记忆,就像IP地址一样不容易记忆,于是人类发明了域名。IPFS利用IPNS将哈希值映射为容易记的名字。IPFS哈希代表不可变的数据,这意味着他们是不能被更改的,否则会导致哈希值的变更。IPFS通过一种特殊的功能来实现,即IPNS。IPNS允许用户使用一个私钥来对IPFS哈希附加一个引用,使用一个公钥哈希表示你的网站是最新版本。如果你使用过比特币,可能会对此比较熟悉,一个比特币地址也是一个公钥,如果该链接不起作用,不用担心,能够通过更改公钥所指向的内容,而公钥却永远保持不变。这样,网站的更新问题就得到了解决。接下来,只需要保证这些网站的位置是人类可读的,所有问题就解决了。

人类可读的可变地址。IPFS/IPNS哈希是一些很大的、难看的字符串,而且不容易记住。所以IPFS允许用户使用现有的域名系统(Domain Name System,DNS)来为IPFS/IPNS内容提供人类可读的链接。它允许用户通过在域名服务器上将哈希插入TXT记录来实现这一点。

IPFS HTTP网关,新旧网络之间的桥梁。通过一个HTTP网关,IPFS可以实现从HTTP到IPFS的过渡,在浏览器完全支持IPFS之前,现在已经允许当前的Web浏览器访问IPFS。用户很快就可以切换到IPFS,完成Web网络的存储、分发和服务。

IPFS可以用来做什么

在/ipfs和/ipns下面挂在全球永久文件系统。就是说所有的文件都可以存到上面。挂在个人同步的文件夹,可以自动进行版本管理、自动备份,也就意味着未来将拥有无限空间的网盘,不用担心数据丢失和隐私泄露

作为带版本控制的软件包管理系统。

作为虚拟机的根文件系统。利用管理程序,把IPFS作为虚拟机的引导文件系统、在线操作系统。

作为数据库。应用可以直接操作IPFS的MerkleDAG数据结构,并且可以使用IPFS的版本控制、缓存,自动备份、永不丢失、安全加密、无限空间、高速连接。

作为加密通讯平台。

作为加密CDN。

永久Web。不存在不能访问的链接,不会出现404错误。

IPFS与Filecoin

协议实验室在创建IPFS的时候就提出了与IPFS相辅相成的Filecoin,Filecoin是一个共有区块链,是IPFS的经济激励系统,承载着IPFS的价值传递,维系着IPFS生态的发展。在Filecoin的激励机制下,用户通过支付Filecoin获得存储数据以及检索数据服务,而矿工们则通过存储数据并以加密方式证明数据存储来获得付款和奖励。IPFS和Filecoin的关系有点类似于区块链与比特币之间的关系。

Filecoin用户与矿工交互图

Filecoin基于时空证明的共识机制,其存储数据的区块由矿工创建。Filecoin协议通过一个独立的存储提供者的网络提供数据存储与检索服务,它并不依赖于单一的协调组,在这里,用户为存储与检索数据而付费,存储矿工按存储报价获得Tokens奖励,检索矿工按服务数据获得Tokens奖励。Filecoin是基于区块链的存储网络和加密货币,我们讲的挖矿,其实就是Filecoin挖矿。薇丨hugoschan

对于任何一件事,尝试了、努力了不一定能获得成功,但是我知道不去尝试,不去努力一定不会成功。学会让自己重新选择,我在这里等着你,你愿与我携手同行吗?永不止步IPFS投资理念:投入项目最重要的不是你一次能够赚取多少,而是你能不能稳定地获利,长久地立足生存。Filecoin正在兴起,未来是一路高歌猛进,还是平淡无奇,只需翘首以待。

星际数据

帮你打造当下最火的ipfs独立节点,让你完全拥有自己的独立节点,336T,包含硬件和软件,不拉人,不集资,不出租算力,一站式服务,关键是机器是归你所有,永久产权,投资没风险,技术赋能,不吹牛逼,不摆踩坑!有可以组团或者财力雄厚的可以考虑!蚂蚁可以战大象,才是区块链思维。给你最全面的盈利机会,一起共享财富盛宴!

如果你想了解更多IPFS/Filecoin最新资讯,参与Filecoin挖矿,加客服微信:hugoschan,手机:13590349103

免责声明
世链财经作为开放的信息发布平台,所有资讯仅代表作者个人观点,与世链财经无关。如文章、图片、音频或视频出现侵权、违规及其他不当言论,请提供相关材料,发送到:2785592653@qq.com。
风险提示:本站所提供的资讯不代表任何投资暗示。投资有风险,入市须谨慎。
世链粉丝群:提供最新热点新闻,空投糖果、红包等福利,微信:msy2134。