首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

你透彻的了解过IPFS吗?

第一,我们现在是如何从网上获取内容这是你需要了解的,如果你想从网上下载某个文件,也就是文件所在的IP地址或是域名,这就叫“地址寻址”。你可以告诉电脑去哪里寻找信息,一旦这个地址不存在了,也就是说服务器关闭了,那么你就无法获取那个文件了,然后很可能有人之前已经下载过那个文件了。并且在他的电脑中仍然保存着备份,可你的电脑却无法从那个人那里获得该备份。

IPFS为了解决这个问题,把“地址寻址”改为“内容寻址”,这样一来,你不用再告诉电脑去哪里寻找资源,而只需告诉它你想要什么资源。

我们怎么做到这一点呢

每个文件都有其独特的哈希值,我们可以将其理解为指纹。当你想下载某个文件时,你只需问网络“谁有含有这个哈希值的文件?”,然后IPFS网络上的某个人就会将文件提供给你,现在你可能会冒出一个想法:等一下,我怎么知道那个人没有篡改过该文件呢?

这个你不用担心啦。因为你使用哈希值获得了文件,所以当你收到文件时,你可以检查该文件的哈希值是否符合你要求的哈希值,内嵌防伪功能!

自动删除重复数据这是使用哈希值来定位内容的另一大好处。当多个人在IPFS上发布同样的文件时,该数据只会被生成一次,这就使得网络效率极高,避免资源浪费。

文件查询。在查询文件的时候,IPFS网络根据文件的哈希值进行查找。由于没一个文件的哈希值都是唯一,所以查询将很容易进行。每个节点除了存储自己需要的数据,还存储了一张哈希表,用来记录文件存储所在的位置,用来进行文件的查询,下载。

文件版本管理。IPFS在整个网络内去掉重复的文件,并且为文件建立版本管理,也就是说,每一个文件的变更历史都将记录,可以很容易回到文件的历史版本查看数据。

IPNS的诞生

IPFS是一个内容可寻址的分布式文件系统,它保证由其加密散列标识的文件内容的固定性。文件通过对等网络延迟解决。然而,内容寻址引用本质上是不可变的,因此在每个应用程序中都不实用。例如,如果HTML网页使用其引用嵌入图像,则每次更新图像时都需要更新引用,否则网页仍将引用旧版本的图像。如果许多网页中包含相同的图像,则所有这些图像都需要更新,因此它们自己的哈希值也会改变。这具有级联效应,并且通过引用而非价值来杀死包括对象的主要目的,以实现关注和重用的分离。

1

为了解决这个问题,IPFS使用InterPlanetary命名系统(IPNS),该系统提供从人类可读URI到其对应的当前IPFS哈希的映射。域名的所有者可以通过用他/她的私钥对请求进行签名来更新该域下所有URI的映射。IPNS可以以多种方式实现,但其当前的实现使用分布式哈希表

2

(DHT)。因此,只有每个URI与其对应的散列的最近映射才可用于解析,而忽略任何历史映射。从档案的角度来看,这并不好,因为以前的文件版本可能仍然存在于IPFS存储中,但是其对应的URI映射却会丢失。

3

传统的网络档案可能仍然有一些历史观察,可以使用给定的URI来检索旧版本的文件,但这些记录将在IPFS系统之外,并且历史可能是稀疏的而不是事务性的。

4

我们可以通过对IPNS记录使用区块链来解决这些问题。通过这样做,IPFS可以像事务性存档引擎一样工作,同时将所有历史“URI - >哈希”映射保留在公共区块链中。使用IPNS Blockchain解析URI应该返回当前映射,而使用Datetime解析URI应该返回当时存在的映射。该备忘录框架可用于基于时间的脉冲中子源的分辨率。

5

人类可读的可变地址。IPFS/IPNS 哈希是一些很大的、难看的字符串,而且不容易记住。所以IPFS允许用户使用现有的域名系统来为IPFS/IPNS内容提供人类可读性的链接。它允许用户通过在域名服务器上将哈希插入TXT记录来实现这一点。

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

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券