IPFS存储网关问题操作指南

近日,IFPS宣布了一个未来web发展计划,它用基于内容的地址替代基于域名的地址,也就是用户寻找的不是某个地址而是储存在某个地方的内容,不需要验证发送者的身份,而只需要验证内容的哈希,通过这样可以让网页的速度更快、更安全、更健壮、更持久。IPFS表示,IPFS未来将替代HTTP(以及其他的许多东西)。

IPFS从根本上改变了用户搜索的方式。通过IPFS,用户搜索的是内容。通过HTTP浏览器搜索文件的时候,首先找到服务器的位置(IP地址),然后使用路径名称在服务器上查找文件。按照这个设计,只有文件所有者可以判断这是否是用户要找的文件。此时,必须保证托管者不会通过移除文件或者关闭服务器而对文件做任何更改。当文件被添加到IPFS节点上,它得到一个新的名字。这个名字实际上是一个加密哈希,它是从文件内容中被计算出来。通过加密保证该哈希始终只表示该文件的内容。哪怕只在文件中修改一个比特的数据,哈希都会完全不同。当下一步向IPFS分布式网络询问哈希的时候,它通过使用一个分布式哈希表,可以快速(在一个拥有10,000,000个节点的网络中只需要20跳)地找到拥有数据的节点,从而检索该数据,并使用哈希验证这是否是正确的数据。    

IPFS是通用的,并且存储限制很少。它服务的文件可大可小,对于一些大的文件,它会自动将其切割为一些小块,使IPFS节点不仅仅可以像HTTP一样从一台服务器上下载文件,而且可以从数百台服务器上进行同步下载。IPFS网络是一个细粒度的、不可靠的、分布式的、易联合的内容分发网络(Content Delivery Network , CDN)。对于所有数据类型都是很有用的,包括图像、视频流、分布式数据库、操作系统、blockchains等,而对于IPFS来说,最重要的是静态web网站。    

IPFS文件也可以是特殊的IPFS目录对象,它允许用户使用人类可读的文件名,透明地链接到其他IPFS哈希。用户可以通过默认方式加载目录中的index.html,这也是标准的HTTP服务器采用的方式。使用目录对象,IPFS可允许用户采用完全相同的方式生成静态网站。将web网站添加到IPFS节点中只需要一个简单的命令:    ipfs add -r yoursitedirectory。在此之后,用户可以从任何IPFS节点访问,而不需要链接到HTML上的任何哈希。与IPFS建立联盟的数据    IPFS不需要每个节点存储所有发布到IPFS上的内容。相反,每个节点只存储自己想要的数据。如果每个节点托管一点数据,所有数据通过累积就提供了比任何集中式HTTP更多的空间、带宽和可用性。分布式网络将很快成为世界上最快、最可用、以及最大的数据存储。没有人有能力关闭所有的节点,所以数据永远不会丢失。 

从其他IPFS节点复制、存储web网站很容易。它只需要一条命令以及网站的哈希值:ipfspin add -r QmcKi2ae3uGb1kBg1yBpsuwoVqfmcByNdMiZ2pukxyLWD8。IPFS负责剩下的所有工作。    

IPFS哈希代表不可变的数据,这意味着它们是不能被更改的,否则会导致哈希值的变更。这是一件好事,因为它鼓励数据的持久性,但我们仍然需要一种方法来找到最新的IPFS哈希以表示你的网站。IPFS通过一种特殊的功能来实现,即IPNS。IPNS允许用户使用一个私有密钥来对IPFS哈希附加一个引用,使用一个公共密钥哈希(简称pubkeyhash)表示你的网站的最新版本。如果用户使用过比特币,可能会对此比较熟悉,一个比特币地址也是一个pubkeyhash。 如果该链接不起作用,不用担心。能够通过更改pubkeyhash所指向的内容,而pubkeyhash却永远保持不变。这样,网站的更新问题就得到了解决。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181024G162WZ00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

同媒体快讯

扫码关注腾讯云开发者

领取腾讯云代金券