什么是IPFS

来源:至联云  作者:至联云  时间:2020-05-28

  一.什么是IPFS

  IPFS,全称“星际文件系统(InterPlanetary File System)”, 是一个分布式的web,点对点超媒体协议.。可以让我们的互联网传输速度更快, 更加安全, 并且更加开放。

  什么是IPFS

  IPFS目前集成的系统

  1.DHT(distributed hash tables):分布式哈希表

  2.Git:版本管理工具

  3.BitTorrent:数据交换协议

  4.SFS(self-certified filesystems):自认证文件系统

  IPFS 协议是如何设计的,都包含什么

  1 节点身份

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

  2 网络

  IPFS 节点需要和网络里的其它节点通讯。

  3 路由

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

  4 数据交换协议

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

  5 对象存储

  IPFS 存储数据使用的是 Merkle DAG(Merkle directed acyclic graph)结构,这一点赋予了IPFS内容寻址,防篡改,去重的功能。

  6 版本控制系统

  IPFS 在 Merkle DAG上面添加了Git版本控制功能,这使得IPFS文件拥有了时光机功能,可以轻松查看文件的变动历史.(COOL!)

  7 自认证命名系统

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

  二.为什么需要IPFS

  众所周知, 互联网是建立在HTTP协议上的。 HTTP协议是个伟大的发明, 让我们的互联网得以快速发展。.但随着互联网的进步,HTTP逐渐显示出其不足之处.

  (一) HTTP 存在缺点

  1.HTTP 存在中心化的低效 并且成本很高.

  使用HTTP协议,每次需要从中心化的服务器下载完整的文件(网页, 视频, 图片等), 速度慢, 效率低. 如果改用P2P的方式下载, 可以节省近60%的带宽. P2P将文件分割为小块, 从多个服务器同时下载, 速度快。

  2.Web 文件经常被删除

  回想一下,是不是经常你收藏的某个页面, 在使用的时候浏览器返回404(无法找到页面), http的页面平均生存周期大约只有100天. Web文件经常被删除(由于存储成本太高), 无法永久保存. IPFS提供了文件的历史版本回溯功能(就像git版本控制工具一样), 可以很容易的查看文件的历史版本, 理论上,只要数据所有人不删除,数据可以永久保存。

  3. 现在的互联网应用高度依赖互联网主干网

  主干网受制于诸多因素, 战争, 自然灾害, 互联网管制, 中心化服务器宕机等等, 都可能使互联网应用中断服务. IPFS可以极大降低互联网应用对主干网的依赖。

  (二) IPFS 如何解决 HTTP 的缺点 ?

  1 .不再依赖主干网和 中心化服务器, 下载速度快

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

  2. 存储空间变得更便宜

  IFPS从全网去掉了过多的冗余存储(从整个网络空间考虑, 这将大大节省网络存储空间), 相比于现有的云盘和CDN,未来的IPFS存储将会变得非常便宜。

  3. 安全,天生抵御DDOS攻击

  中心化服务器目前很难抵挡DDoS攻击, 当大量的访问请求从四面八方涌来, 中心化的服务器几乎会在一瞬间瘫痪,。比如每年双11, 不能睡觉的除了阿里, 腾讯的攻城狮, 还有银行业. 巨大的访问量随时可能造成服务器宕机. IPFS天生就拥有抵挡这种攻击的能力. 因为所有的访问将会被分散到不同的节点. 甚至攻击者自己也可能是节点之一。

  三.IPFS如何工作

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

  IPFS在整个网络范围内去掉重复的文件, 并且为文件建立版本管理, 每一个文件的变更历史都将被记录, 可以很方便地回溯文件历史版本。

  当发出文件查找请求时,IPFS网络会根据文件的哈希值执行查询, 由于每个文件的哈希值全网唯一, 文件查询将变得更容易。

  如果仅仅使用哈希值来区分文件的话, 会给传播造成困难, 因为哈希值不容易记忆, 就像ip地址很难记一样, 于是人类发明了域名. IPFS利用IPNS将哈希值映射为容易记的名字。每个节点除了存储自己需要的数据, 还存储了一张哈希表, 用来记录文件存储所在的位置. 用来进行文件的查询下载。

  四.IPFS可以用来做什么

  上传文件 在 /ipfs 和 /ipns 下面挂载全球文件系统:我们所有的文件都可以存到上面.。

  自动同步自动备份 类比某度和某企鹅的云盘服务,国外的dropbox等。

  加密文件和数据共享系统IPFS似乎天生就具备这样的能力。

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

  虚拟机的根文件系统

  云端操作系统 类比阿里云,AWS等

  数据库 应用可以直接操作IPFS的Merkle DAG数据结构, 并且可以使用IPFS的版本控制, 缓存。

  加密通讯平台 谁都别想窃听消息了。

  作为加密CDN CDN 功能,对IPFS来说轻而易举。

  永久web从此你见到的404页面将大幅度减少。

  IPFS为我们解决的是数据存储问题,它能够极大的降低数据存储的成本,提升数据下载速度。凡是需要优化数据存储的地方几乎都可以使用IPFS来提升效率。

  IPFS现有应用

  IPFS网络现在已经可以使用,可以在线看电影,参考《IPFS 看片指南:几部IPFS网络中的电影》,搜索对应的哈希值,即可在线观看高清. 在线观看亲测不卡,有点像快播...

  还可以参考/ipfs/awesome,有一些开发者上传的应用。据说官方团队太忙了无暇维护这个小角落,所以只有一些比较旧的内容。

  五.IPFS系统 和 filecoin**系统的关系

  Filecoin是运行在IPFS系统上的一个激励层, IPFS跟Filecoin实际是两套不同的系统,两者都由 Protocol Labs(协议实验室)开发维护。我们都知道,P2P网络节点越多下载越快,IPFS有巨大存储需求和节点需求,如果没有激励机制,谁愿意贡献如此多的节点和存储呢,这时Filecoin的想法被提出来了。Filecoin可以为IPFS贡献很多很多节点,同时Filecoin带着一个巨大的分布式存储空间,于是IPFS跟HTTP对比拥有了更强的优势。

  Filecoin协议的代币也叫Filecoin,符号FIL,代币是沟通资源使用者(用户)和资源提供者(矿工)的中介桥梁,Filecoin协议拥有两个交易市场,数据检索和数据存储,双方在市场里面提交自己的需求,达成交易。

  六.FIL代币分配

  FIL代币总共有20亿枚. 分配方案, 总共四部分组成:

  3bpEVWzFiDkPLIMfKBPqlj1EJzrKuk2N1ioafmY7.pngFilecoin 分配

  70%——矿工回报: 像比特币一样,根据挖矿的进度逐步分发

  15%——Protocol Labs: 作为研发费用, 6年逐步解禁

  10%——ICO投资者: 根据挖矿进度, 逐步解禁

  5%——预留给Filecoin基金会: 作为长期社区建设, 网络管理等费用, 6年逐步解禁

  FIL的ICO:

  FIL的投资跟普通ICO不一样, 它是按照"美国投资人资格"(U.S. Accredited Investors)进行的, 投资门槛较高, 例如: 年收入20万美元或者家庭年收入30万美元或者家庭净资产(不算自主的房产)超过100万美元. 更看中项目的长期发展.

  ICO成本: 预售阶段 0.75美元, 正式阶段 1.3~5美元

  ICO时间: 2017.8.2 ~ 2017.8.5

  投资人数: 2100+

  筹集资金: 2.05亿美元

  ICO网站: https://coinlist.co/filecoin

  Filecoin 系统的主要参与者

  1. Filecoin存储市场(Filecoin Storage Market)

  存储矿工的主要任务就是提供存储空间和形成数据资源库以此来获得代币奖励,同时在验证者要求验证数据的时候提交存储证明,如果未能及时提交存储证明或者存储证明出现问题,那么将会接受系统的惩罚机制,即扣除交易前的抵押物。

  抵押:存储矿工向区块链抵押与其声明的存储空间对应的抵押物。存储矿工通过在抵押交易中存放抵押品来保证向区块链提供存储。如果矿工能够及时提交存储证明,抵押品就会返还。如果存储证明出现了问题,系统将会扣除抵押品。

  接受订单:存储矿工设置合适的报价订单提交到存储市场的订单薄中,一旦匹配到合适的客户投标订单,客户就会将数据发送给存储矿工,存储矿工接收数据并存储在硬盘中,最后双方签署交易订单并提交到存储市场的订单薄中。

  存储证明:存储矿工向系统证明他们已经存储了客户数据。当存储矿工分配数据时,必须重复生成复制证明以保证他们正在存储数据,并发布在区块链中,由网络来验证.

  2. Filecoin数据检索市场(Filecoin's Retrieval Market)

  检索矿工的主要任务是响应客户Get请求并提供检索服务。检索矿工在收到用户的读取请求后会寻找合适的存储矿工的报价订单,在合理的范围促成交易的达成。

  收到订单:检索矿工从检索市场收到客户读取请求。检索矿工需要实时跟踪Filecoin中的需求挂单,并及时抢到客户订单进行匹配,在合适的范围内确定存储矿工.

  发送:一旦订单匹配成功,检索矿工就通过存储矿工将数据发送给客户。当数据被接收完成,矿工和客户就签署交易订单并提交到区块链.检索过程完成.

  3. 用户

  对于用户来说其实就是通过支付代币来享受Filecoin网络中庞大的存储功能和数据资源等服务,即用户一方面可以上传数据并永久存储在Filecoin网络中,一方面也可以获取网络中已存在的数据。具体来说是通过网络中的put协议和get协议来匹配合适的矿工完成存储或检索交易。未来这些用户可能更多的是企业。就像现在的互联网企业替终端购买了IDC机房的设备,将内容存储在这些中心化服务器上一样。

  Put协议:客户将数据存储在Filecoin网络中。客户通过put协议在存储市场的订单簿中添加投标订单,当找到合适的存储矿工报价订单时,完成匹配。这时客户就可以将数据发送给存储矿工,存储矿工将客户数据存储在自己的硬盘中,并且双方签署交易订单并提交到存储市场的订单薄中,这就是一次完整的数据存储流程。

  Get协议:客户在filecoin网络中检索数据。客户通过get协议在存储市场中提交投标订单,检索矿工收到投标订单并寻找合适的存储矿工的报价订单,在合理的范围内促成双方交易的达成,当匹配完成后,客户会收到来自存储矿工的碎片(数据文件),同时双方对交易订单进行签名并提交到区块链来确认交易的成功,客户数据检索过程完成。

  七. 有关Filecoin和挖矿的传言和疑问

  最近听到一些关于IPFS & Filecoin 的传言,此处选取最常见的疑问进行列举分析,并非官方解答,各位请自行判断。

  1.IPFS主网2018年6月上线?

  IPFS的上线时间是2015年:)

  2.Filecoin主网2018年6月上线?是否会推迟上线?

  官方并没有明确上线时间,也就没有提前或推迟这一说,只说最晚2022年7月前会上线。2018年6月是大家(非官方)推测出来的,实际有待验证。

  3.目前在gate.io交易所上的FIL是什么?

  期货合约,不是实际的FIL代币

  4.是否需要提前购买矿机?买什么矿机?

  Filecoin还没出来呢,现在出来打广告的都是矿机厂商,利益相关,原因不言自明。购买矿机的风险是客观存在的,最怕的是Filecoin跟你买的硬件不匹配,这就尴尬了。

  5.是否需要提前买硬盘?

  Filecoin上线后,硬件在短时间内可能会供不应求,价格上涨。但长期来看,只要越来越多的人使用Filecoin & IPFS网络,硬件的价格最终会降下来。

  6.主网上线后如何更好地布局挖矿

  有数据存储需求,矿工的硬盘才真正有价值。目前IPFS在国外的使用率比在中国高,有可能到时候国外的初始收益率会比中国的高。真正的挖矿细则出来之前,一切有关挖矿的想象都是耍流氓,多看看白皮书了解基础知识,谋定而后动。

  7.挖矿初期会不会有补贴?

  分析同上。

相关信息:
您可能喜欢
Copyright © 2017 iIPFS.com IPFS/FileCoin资讯站