2018-03-21

2018-03-21

IPFS的的”宏伟”目标是取代HTTP,那么先来看看IPFS是如何工作的。IPFS为每一个文件分配一个独一无二的哈希值(文件指纹:
根据文件的内容进行创建), 即使是两个文件内容只有1个比特的不相同,
其哈希值也是不相同的。所以IPFS是基于文件内容进行寻址,
而不像传统的HTTP协议一样基于域名寻址。IPFS在整个网络范围内去掉重复的文件,
并且为文件建立版本管理,
也就是说每一个文件的变更历史都将被记录(这一点类似版本控制工具git,
svn等), 可以很容易个回到文件的历史版本查看数据。当查询文件的时候,
IPFS网络根据文件的哈希值(全网唯一)进行查找。
由于每个文件的哈希值全网唯一,
查询将很容易进行。如果仅仅使用哈希值来区分文件的话, 会给传播造成困难,
因为哈希值不容易记忆, 就像ip地址一样不容易记忆, 于是人类发明的域名。
IPFS利用IPNS将哈希值映射为容易记的名字。每个节点除了存储自己需要的数据,
还存储了一张哈希表, 用来记录文件存储所在的位置。
用来进行文件的查询下载。IPFS相对于中心化服务器的优点1. 下载速度快,
不再依赖主干网, 中心化服务器整个IPFS系统是一个分布式的文件存储系统,
那么在下载相关数据的时候, 将从多个节点同时下载,
相比于HTTP从中心服务器的下载速度要快很多, 大家都用过P2P下载(比如:
迅雷, BitTorrent), IPFS下载过程跟这个类似。2.
存储空间变得非常便宜:由于IPFS使用的是区块链技术, 利用
Filecoin(为了的文章中会将如何获取filecoin,
也就是挖矿)来激励矿工分享自己的硬盘,
并且IFPS从全网去掉了冗余存储(从整个网络空间考虑,
这将大大节省网络存储空间),
将来的IPFS存储将会变得非常便宜(与我们现在的云盘,
各种中心化的CND相比较)。3. 安全:中心化服务器目前很难抵挡DDoS攻击,
当大量的访问请求从四面八方涌来, 中心化的服务器几乎会在一瞬间瘫痪,
做过运维的同学应该深有感触, 比如每年双11, 不能睡觉的除了阿里,
腾讯的技术同学, 还有整个银行业的小朋友。
巨大的访问量随时可能造成服务器宕机。 IPFS天生就拥有抵挡这种攻击的能力。
因为所有的访问将会被分散到不同的节点。 甚至攻击者自己也是节点之一。
某种程度上讲, IPFS甚至能抵挡量子计算的攻击。4. 开放:众所周知,
比特币是一种去中心化, 匿名的数据货币, 这些特性使得比特币无法被管制,
交易无法篡改。 IPFS同样, 由于是建立在去中心化的分布式网络上的,
所以IFPS很难被中心化管理, 限制。 互联网将更加开放。

1 什么是IPFS

安徽星际领域科技有限公司报道:

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

现如今的区块链处在发展早期,就如上个世纪90年代的互联网。区块链技术必将带来一场风暴,成为改变我们日常生活的技术。HTTP协议作为互联网底层通讯协议,基于中心化网络服务器,经过这么多年发展,已经老态毕现,新一代IPFS技术正在挑战HTTP的地位。

2 为什么有IPFS

新萄京娱乐网址2492777 1图片发自简书App

新萄京娱乐网址2492777,众所周知, 互联网是建立在HTTP协议上的. HTTP协议是个伟大的发明,
让我们的互联网得以快速发展.但是互联网发展到了今天HTTP逐渐出来了不足.

星际文件系统IPFS是一个分布式的web,点到点超媒体协议,可以让我们的互联网速度更快,更加安全,并且更加开放。IPFS协议的目标是取代传统的互联网协议HTTP。

HTTP的中心化是低效的, 并且成本很高.

新萄京娱乐网址2492777 2图片发自简书App

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

既然提到IPFS的目标是取代HTTP,那我们先来了解一下HTTP的工作原理,HTTP协议是用于从网络服务器传输超文本到本地浏览器的传送协议。当你要访问一个网页时,HTTP协议文件会告诉你要访问哪个服务器里的哪个文件,地址分别是什么。那这个协议规则下会有什么问题呢?

Web文件经常被删除

新萄京娱乐网址2492777 3图片发自简书App

回想一下是不是经常你收藏的某个页面,

首先,它是不安全。HTTP是一种明文传输协议无法加密数据,当浏览器用户与网站进行HTTP链接时,两者之间传输的数据容易被第三者的窥视、窃取和篡改等网络攻击,这是导致网络安全问题的重要原因。

在使用的时候浏览器返回404(无法找到页面),
http的页面平均生存周期大约只有100天. Web文件经常被删除(由于存储成本太高),

新萄京娱乐网址2492777 4图片发自简书App

无法永久保存. IPFS提供了文件的历史版本回溯功能(就像git版本控制工具一样),
可以很容易的查看文件的历史版本, 数据可以得到永久保存

中心划限制了Web的成长,其次,它也是不稳定的。相信大家都有在访问网页的时候遇到过404页面吧,您访问的页面不存在就是因为相关文件已经被删除了,找不到了。HTTP协议下存储成本太高,Web文件是无法永久保存的。HTTP协议是基于中心化的,这就导致互联网应用高度依赖主干网。中心机房一宕机的话,就可能会使我们的互联网服务中断。前段时间腾讯就有过一次很多网页和应用都访问不了的情况,事故原因就是某机房宕机了。

中心化限制了web的成长

IPFS从根本上改变了用户搜索的方式。我们知道,通过HTTP浏览器搜索文件的时候,首先找到服务器位置,然后使用路径名称在服务器上查找文件,但是通过协议IPFS,用户可以直接搜索内容。这里是怎么实现呢?

我们的现有互联网是一个高度中心化的网络. 互联网是人类的伟大发明,
也是科技创新的加速器. 各种管制将对这互联网的功能造成威胁, 例如:
互联网封锁, 管制, 监控等等.
这些都源于互联网的中心化.而分布式的IPFS可以克服这些web的缺点.

新萄京娱乐网址2492777 5图片发自简书App

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

IPFS从根本上改变了用户搜索的方式

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

首先,IPFS网络里的文件,会被赋予一个哈希值,这个哈希值类似于我们的身份证号,他是独一无二的,它是从文件内容中被计算出来的。

3 IPFS的目标

IPFS在网络范围内去掉重复文件建立管理版本

IPFS不仅仅是为了加速web. 而是为了最终取代HTTP协议,
使互联网更加美好(野心真的很大).

然后,当用户向IPFS分布式网络询问哈希的时候,它通过使用一个分布式哈希表,可以快速地找到拥有数据的节点,从而检索到该数据。简单来讲,就是以前我们是通过跳转多层网站才能找到一个文件,但是在IPFS上存储的文件,我们只需查询它的哈希值,便能快速找到。那这种设计是否足够安全呢?理论上来讲,IPFS分布式存储会比中心化存储更加安全。因为如果是采用传统的http协议,黑客通过转译就可以轻而易举的找到网址所对应的服务器的IP地址,接下来黑客通过IP地址就可以对服务器进行攻击,目前所有中心化存储都遇到这样的风险。

4 IPFS的的”宏伟”目标是取代HTTP, 那么先来看看IPFS是如何工作的?

新萄京娱乐网址2492777 6图片发自简书App

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

IPFS分布式存储会比中心化存储更加安全

IPFS在整个网络范围内去掉重复的文件, 并且为文件建立版本管理,
也就是说每一个文件的变更历史都将被记录(这一点类似版本控制工具git,
svn等), 可以很容易个回到文件的历史版本查看数据.

但是如果是采用了IPFS协议,由于所有的访问将会被分散到不同的节点,黑客其实是完全不知道这个文件是存在哪个服务器,根本没有办法进行攻击,如果要攻击某个服务器,基本上就要攻陷某个网络。

当查询文件的时候, IPFS网络根据文件的哈希值(全网唯一)进行查找.
由于每个文件的哈希值全网唯一, 查询将很容易进行.

另外,用户还可以通过私钥对存储的文件进行进一步的加密,这样即使别人拥有此文件的哈希值,还需要私钥才能查看数据。

如果仅仅使用哈希值来区分文件的话, 会给传播造成困难,
因为哈希值不容易记忆, 就像ip地址一样不容易记忆, 于是人类发明的域名.
IPFS利用IPNS将哈希值映射为容易记的名字

那这样的存储结构下,用户访问的速度是否可以得到保证?

每个节点除了存储自己需要的数据, 还存储了一张哈希表,
用来记录文件存储所在的位置. 用来进行文件的查询下载.

IPFS对于一些大的文件,它会自动将其切割为一些小块,使IPFS节点不仅仅可以像HTTP一样从一台服务器上下载文件,而且可以从数百台服务器上进行同步下载。所以,只要所存储的节点通电且网络正常,那么这个访问速度就可以非常快。

5
我们在<什么是IPFS?(一)>里面说了
HTTP 及一些中心化服务器的缺点.

讲原理这些可能有点枯燥,那我们来看看IPFS对区块链的应用价值。

那么问题来了, IPFS是如何来解决这些缺点的?

为内容创作带来一定的自由

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

第一,为内容创作带来一定的自由。Akasha是一个典型的应用,它是一个基于以太坊和IPFS的社交博客创作平台,用户创作的博客内容通过一个IPFS网络进行发布,而非中心服务器。

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

同时,用户和以太坊钱包账户进行绑定,用户可以对优质内容进行ETH打赏,内容创作者能以此赚取ETH,如同人脑挖矿一样。它没有太多监管的限制,也没有中间商抽成,内容收益直接归创作者所有。

2 存储空间变得非常便宜: 

可以降低存储和带宽成本

        由于IPFS使用的是区块链技术, 利用
Filecoin(为了的文章中会将如何获取filecoin,

第二,可以降低存储和带宽成本。例如做视频比较成功的项目「Dtube」。它是一个搭建在Steemit上的去中心化视频播放平台,其用户上传的视频文件都经过IPFS协议进行存储,具有唯一标识。相较于传统视频网站,它降低了同资源冗余程度,同时大大节约了海量用户在播放视频时所产生的带宽成本。

也就是挖矿)来激励矿工分享自己的硬盘,
并且IFPS从全网去掉了冗余存储(从整个网络空间考虑,
这将大大节省网络存储空间),

新萄京娱乐网址2492777 7图片发自简书App

将来的IPFS存储将会变得非常便宜(与我们现在的云盘, 各种中心化的CND相比较).

与区块链完美的结合

3 安全:

第三,可以与区块链完美结合。区块链的本质是分布式账本,本身的瓶颈之一就是账本的存储能力,目前大部分公链的最大问题是没法存储大量的超媒体数据在自己的链上。比特币至今全部的区块数据也才30-40G左右,以太坊这样可编程的区块链项目也只能执行和存储小段合约代码,DApp想发展成超级App,受到了极大的限制。

        中心化服务器目前很难抵挡DDoS攻击,
当大量的访问请求从四面八方涌来, 中心化的服务器几乎会在一瞬间瘫痪,

运用IPFS技术解决存储瓶颈是目前来看的过渡方案,最典型的应用就是EOS。EOS引以为傲的是可以支持百万级别TPS的并发量,其中除了DPOS共识机制的功劳之外,还归功于其底层存储设计是采取IPFS来解决大型数据的传输效率。

做过运维的同学应该深有感触, 比如每年双11, 不能睡觉的除了阿里,
腾讯的技术同学, 还有整个银行业的小朋友.

EOS将自己打包好的区块数据通过IPLD进行异构处理,统一成一种便于内容寻址的数据结构类型,并挂载到IPFS的link上,让IPFS网络承担存储和P2P检索的逻辑,而不消耗EOS区块链系统本身太多的计算资源。

巨大的访问量随时可能造成服务器宕机. IPFS天生就拥有抵挡这种攻击的能力.
因为所有的访问将会被分散到不同的节点.

分布式缓存方案

甚至攻击者自己也是节点之一. 某种程度上讲, IPFS甚至能抵挡量子计算的攻击.

第四,可以为传统应用提供分布式缓存方案。IPFS-GEO
是一个为传统LBS应用提供分布式缓存的项目,可以将地理位置坐标数据通过GeoHash算法转化成一维字符串,并将与之相关联的具有检索价值的数据存入IPFS网络,由IPFS网络标识唯一性,并分布在各个邻近节点上。

4 开放: 

当检索请求到来时,系统先通过字符串近似度范围比较,缩小检索范围,加快检索效率,通过NodeID从附近节点拿到超媒体数据,达到类似分布式缓存的效果,大大提高了LBS应用整个检索动作的效率。

        众所周知, 比特币是一种去中心化, 匿名的数据货币,
这些特性使得比特币无法被管制, 交易无法篡改. IPFS同样,
由于是建立在去中心化的分布式网络上的, 所以IFPS很难被中心化管理, 限制.
互联网将更加开放.

网站地图xml地图