【译】IPFS — The Permanent, Distributed Web

分布式网络已经吸引了我很长时间的注意力。 在对区块链进行一些研究时,我遇到了IPFS。 这引起了我的注意一段时间,我对永久的分布式Web概念感到惊讶。 虽然它不是新的,但我们都看到了它的部分内容(部分内容,将在短时间内描述)

IPFS最初由Juan Benet设计,由Protocol Lab拥有,现在已经在社区的帮助下开发了一个开源项目。

简而言之, IPFSInterPlanetory文件系统是一种点对点(P2P)超媒体协议,允许其用户设计和开发完全分布式的应用程序。 作为分布式文件系统运行,它将所有计算设备与相同的文件系统链接起来。 它支持大量数据的分发,并允许其用户为数据镜像创建弹性网络。

IPFS如何提交一切

与引用存储服务器的对象(文本文件,图片,视频)的HTTP协议不同,IPFS通过文件上的散列来引用所有内容。 这意味着它会根据文件中的内容创建文件哈希。 所以如果我们想要访问一个特定的页面,那么IPFS会询问整个网络,如果任何人有这个文件对应这个散列,并且IPFS上有这个散列的节点将返回允许你访问它的文件。

正如我刚才所说,IPFS使用HTTP层的内容寻址。 这是一种说法,而不是创建一个按位置来定位事物的标识符,我们将通过对内容本身的某种表示来解决它。 这意味着内容将决定地址。 其机制是采取一个文件并以加密方式对其进行哈希处理,这将为您提供文件的安全表示形式,以确保某人不会只是想出另一个具有相同散列的文件并将其用作地址。

虽然与HTTP协议类似,但它可以将任何类型的文件从文本传输到视频。 但是你一定在想..

它与HTTP不同

那么,传统上,HTTP遵循一个简单的客户端 - 服务器模型。 它有一个很好的属性,其中标识符是托管文件的计算机(服务器)的位置。 所以世界各地的客户端计算机都会从这个服务器上请求一个文件,而不管它们的位置。 该服务器将满足所有客户端请求并提供所有负载。 这通常工作得很好,但不是在离线情况下,或者在大部分分布式情况下,我们希望最小化网络负载。

鉴于IPFS适用于点对点分布式模型,有点类似于BitTorrent,使用类似版本控制系统的Git来管理,存储和跟踪通过HTTP的文件版本。 (正如我告诉过你,我们已经看到它的部分:))

所以人们可以认为IPFS就像HTTP web + Git + BitTorrent。

为了更多地理解它,

让我们深入IPFS的工作

让我们一步一步做 -

步骤1: 根据您的平台 下载并安装IPFS

可以从IPFS网站下载并将可执行文件移动到适当的位置。

在Mac / Linux上:

下载后,解压缩存档文件夹,并将ipfs文件移动到$PATH某处。 通过终端来做到这一点:

  sudo mv ipfs / usr / local / bin / ipfs 

对于Windows:

下载后,解压缩存档,然后剪下ipfs.exe并粘贴到%PATH%某处。 通过命令提示符执行此操作:以管理员身份运行命令提示符

  C:\>> move。\ go-ipfs \ ipfs.exe C:\ Windows 

第二步: 初始化IPFS

  $ ipfs init 
 在/Users/romiljain/.ipfs中初始化IPFS节点 
 生成2048位RSA密钥对...完成 
 同侪身份:QmWwvCycToWiUfMtoAWW9r5aEoeHK4KcmubtKhEmCGJJme 
 要开始,请输入: 
  ipfs cat / ipfs / QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv / readme 

并根据指示,当你进入

  $ ipfs cat / ipfs / QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv / readme 

你会看到这样的东西

请务必阅读警告:)

第3步:向IPFS添加文件

现在让我们添加一个文件到IPFS。 我们将从一个文件开始,第二部分将添加一个目录和多个文件来查看行为。

因此,将创建一个dir ipfsdir ,并将添加一个文件hello.txt,其内容为Hello World

  $ mkdir ipfsdir 
  $ cd ipfsdir 
  $ touch hello.txt 

现在让我们将这个文件添加到IPFS

  $ ipfs添加hello.txt 
 添加了QmWATWQ7fVPP2EFGu71UkfnqhYXDYH566qy47CnJDgvs8u hello.txt 

第4步:将文件固定到IPFS

现在我们将把我们添加到IPFS的文件固定。 由于文件存在于我们的本地机器上,但通过固定文件,IPFS网络上的其他节点知道他们可以从我们的机器访问文件。

  $ ipfs pin add QmWATWQ7fVPP2EFGu71UkfnqhYXDYH566qy47CnJDgvs8u 
 以递归方式固定QmWATWQ7fVPP2EFGu71UkfnqhYXDYH566qy47CnJDgvs8u 

第5步:启动守护程序以将IPFS机器连接到网络

在这一步中,我们将把我们的机器引入IPFS网络。 这允许网络上的其他节点/参与者收听我们的机器并从我们的机器检索文件,反之亦然。

键入以下内容以连接到网络:

  $ ipfs守护进程 

你会看到像这样的东西

 正在初始化守护进程... 
 将当前ulimit调整为2048 ... 
 成功将文件描述符限制提高到2048。 
  Swarm在/ip4/127.0.0.1/tcp/4001上监听 
  Swarm在/ip4/192.168.0.101/tcp/4001上监听 
  Swarm监听/ ip6 / :: 1 / tcp / 4001 
  Swarm监听/ p2p-circuit / ipfs / QmWwvCycToWiUfMtoAWW9r5aEoeHK4KcmubtKhEmCGJJme 
  Swarm宣布/ip4/127.0.0.1/tcp/4001 
  Swarm宣布/ip4/192.168.0.101/tcp/4001 
  Swarm宣布/ip4/71.75.18.38/tcp/23917 
  Swarm宣布/ ip6 / :: 1 / tcp / 4001 
 监听/ip4/127.0.0.1/tcp/5001的API服务器 
 在/ip4/127.0.0.1/tcp/8080上监听的网关(只读)服务器 
 守护进程已准备就绪 

打开另一个终端并检查谁连接到您的机器:

  $ ipfs swarm peers 

Protocol Labs(它拥有IPFS)有许多引导节点正在积极寻找放置在网络上的新内容。

它维护一个HTTP -> IPFS网关,我们可以从他们的网站访问我们的任何一个文件,他们已经在他们的HTTP URL上挂载了IPFS系统: https://ipfs.io/ipfs/[yourHash]. ://ipfs.io/ipfs/[yourHash https://ipfs.io/ipfs/[yourHash].

运行下面的链接检查文件hello.txt,完全加载到IPFS上: https ://ipfs.io/ipfs/QmWATWQ7fVPP2EFGu71UkfnqhYXDYH566qy47CnJDgvs8u

我们会看到Hello World

第6步:杀死守护进程

如果你想断开与网络的连接,不要忘记杀死守护进程。 这很容易。 转到守护进程正在运行的终端,然后按CTRL + C


现在你会理解IPFS的基础知识。 第二部分中,我们将深入探讨IPFS对多个文件和目录(网站结构的种类)的工作,并且了解它的基本功能。



https://medium.com/@itsromiljain/ipfs-the-permanent-distributed-web-7a0d3ede10af

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值