ipfs的技术应用详解—ipfs可以用来做什么?

2020-03-23 16:28:20

Internet的当前迭代并没有理想化和最初认为的分散化。它也基于某些过时的协议,这些协议导致了许多问题。IPFS解决的问题围绕着与Internet当前HTTP协议相关的问题。

  Internet的当前迭代并没有理想化和最初认为的分散化。它也基于某些过时的协议,这些协议导致了许多问题。IPFS解决的问题围绕着与Internet当前HTTP协议相关的问题。


2.jpg


  HTTP于1991年发明,1996年被Web浏览器采用,它从根本上确定了如何在Internet上传输消息以及浏览器应如何响应命令和服务器处理请求。同时HTTP也是整个Internet上数据通信的基础。

  虽然HTTP已为我们提供了当今众所周知的Internet,但是在20多年后的现在,hhp普遍存在的问题变得越来越明显。

  当今HTTP实施所产生的主要问题是Internet流量的大量增加以及由此导致的压力点被放大的结果。


  在HTTP的当前实现中,出现了以下问题

  一次从单个服务器下载文件会导致内容交付效率低下。

  昂贵的带宽成本和文件复制导致存储空间过大。

  服务器和提供商的集中化程度不断提高,从而导致Internet审查制度的增强。

  Internet上存储的信息的脆弱历史记录以及网页寿命短。

  断断续续的连接导致离线开发环境和较慢的连接速度。

  问题的清单还在继续,毫不奇怪的是,在技术创新时代,已有20多年历史的技术变得越来越过时。IPFS提供了Internet实现其真正潜力所需要的分布式存储和文件系统。

  而不是从IPFS中从单个服务器下载文件,而是要求网络中的对等方为您提供文件的路径,而不是从中央服务器来。这可以实现高效率的大量数据分发,具有历史意义的版本控制,弹性网络以及通过加密散列保护和验证并在对等网络之间分布的内容的持久可用性。

  通过基于BitTorrent的协议分发文件。重要的是,IPFS是Kodemila,BitTorrent和Git的一种组合,可以创建Internet的分布式子系统。

  协议的设计提供了与Git一样的Internet历史版本。每个文件及其中的所有块均具有唯一的标识符,该标识符是加密哈希。跨网络删除重复项,并跟踪每个文件的版本历史记录。


  这将导致永久可用的内容,其中网页不会由于服务器故障或Web主机损坏而消失。

  此外,通过此机制可以保证内容的真实性,并且在查找文件时,您实际上是在要求网络查找在与该内容关联的唯一标识哈希后面存储该内容的节点。

  IPFS中节点之间的链接采用加密哈希的形式,由于其Merkle DAG(有向无环图)数据架构,这是可能的。Merkle DAG对IPFS的好处包括:

  内容寻址–内容具有唯一的标识符,该标识符是文件的加密哈希。

  无重复-内容相同的文件不能复制,只能存储一次。

  防篡改–使用校验和来验证数据,因此,如果哈希发生变化,则IPFS将知道数据已被篡改。

  IPFS使用Merkle链接将文件结构彼此链接,并且每个文件都可以使用称为IPNS的分散式命名系统通过人类可读的名称找到。

  Merkle有向无环图(DAGS)的实现对于协议的基础功能很重要,但是比本文的范围更具技术性。

  如果您想对IPFS的这一方面有更多的了解,可以在IPFS Github页面上找到更详细的信息,以及有关Merkle树如何工作的更多信息。


  每个节点仅存储其感兴趣的内容,并对信息进行索引,以使其确定谁在存储什么。IPFS框架从根本上消除了使用集中式服务器向用户交付网站内容的需求。

  最终,此概念可能完全将HTTP协议推到无关紧要的位置,并允许用户离线本地访问内容。用户将不再需要像当前的Internet基础结构那样搜索服务器,而是搜索唯一的ID(加密哈希),从而使数百万台计算机可以将文件传递给您,而不仅仅是一台服务器。

  IPFS当前的主要实现是在Go中,同时也将同时使用Python和Javascript实现。它与Linux,MacOSX,Windows和FreeBSD兼容。

  作为一个开放源代码和社区驱动的项目,您可以按照其Github页面上的说明和文档进行操作,或者操作自己的IPFS节点。


  IPFS的分布式存储模型具有明显的优势,适用于效率更高的数据存储以及不可变的永久性。

  由于服务器关闭或HTTP链接链中断,网站不再受周期性404错误消息的困扰。此外,就效率而言,对于研究人员而言,尤其是那些需要解析和分析非常大的数据集的人员,具有明显的优势。

  随着大数据在现代科学中的盛行,IPFS提供的快速性能和分布式数据归档将与加速进步相关。

  服务提供商和内容创建者还可以大幅降低与向客户交付大量数据相关的成本。这种范例的当前迭代受到带宽成本增加和数据提供商收取对等协议费用的阻碍。

  通过互联网络的集中式基础结构交付内容的相关成本仅在增加,并创造了严重的低效率和进一步集中化的环境,以试图克服这些负担。


  前面说到了ipfs的技术特点,那么ipfs可以用来做什么呢?

  上传文件

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

  随时都可以在 /ipfs 和 /ipns下载星际文件系统,系统下载好之后,那么你就可以打开另外一个世界的大门了,因为任何文件都可以存到上面,而且不受防火墙的限制,你在任何地方,随时都可以访问。

  自动备份

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

  IPFS的存储服务,可以做所有文件备份的服务,把你电脑手机硬盘各个存储盘的文件都上传到协议网络上,然后进行自动备份管理。也就是说你再也不需要用云盘、网络盘等各种第三方的云存储服务了,直接有一个IPFS网络进行存储完全足够,因为它的存储空间是没有上限的。

  加密文件

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

  可以做在线加密文件和数据共享系统,如私密通信、企业商业联系、机密传输文件等等。

  版本控制

  可以做带版本控制的软件包管理系统,一旦铺开,可能替代我们现有的各类版本管理系统,比如git等。

  虚拟机的根文件系统

  可以做虚拟机的根文件系统,作为底层应用系统,在这上面的开发价值也是巨大无比的。

  数据库

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

  加密通讯平台

  谁都别想窃听消息了。可以做加密CDN,而且这对于IPFS来说轻而易举,将会为现在的腾讯云CDN、阿里云CDN等服务提供一套革新的模式。

  永久web

  从此你可以和网页丢失的苦恼说再见了。永久不断的Web是IPFS牛逼的创新之一,全世界所有的链接都可以访问,再也不存在404那种BUG了,所以也会完善我们现有的互联网服务。

  正如IPFS的创建者Juan Benet所说:“ IPFS上的内容可以在任何不受信任的中间人中移动,而不会放弃对数据的控制或使其面临风险。”


最新推荐