请选择 进入手机版 | 继续访问电脑版
查看: 410|回复: 0

[区块链技术] IPFS互联网数据之旅

[复制链接]

该用户从未签到

78

主题

78

帖子

1358

积分

技术大虾

Rank: 6Rank: 6

积分
1358
发表于 2018-12-22 16:54:25 | 显示全部楼层 |阅读模式

  我们自己的数据在互联网中到处都是,但是我们却没办法很好的管理这些数据,在中心化网络和大数据面前,我们可以做些什么呢?
  被称为下一代HTTP协议的IPFS,热度仅次于EOS。但很多人对IPFS只有一些很抽象的概念。在此为大家简单解释一下IPFS网络:“可以把IPFS网络想象成一个大硬盘,全世界就这一个硬盘,这个硬盘背后是无数个对等的点组成,我们存的文件会被冗余并且分片的存到某些点上。”
  IPFS 是一个内容寻址,有版本管理的,点对点文件系统。本系列说的IPFS包括协议实验室在github.com上ipfs和libp2p两个组织的各种项目,不包括Filecoin。工作关系一直追踪分布式存储IPFS的各种动态,分享下自己对IPFS技术的理解,会涉及到IPFS(www.ipfsfirst.com)各种工具和相关代码。
  设想下面几个情景:
  (可以发现我们自己的数据其实在互联网中到处都是,但是我们却没办法很好的管理这些数据。)
  情景1
  小A同学给小B同学传一个照片,直接能想到的都是需要通过中心化的服务,比如微信,网盘等等方式,我们给不同人分享,意味着我们会在不同app/服务商中保存同一份数据,时间长了,搞不清哪里有想找的照片。
  这里面就可以用到ipfs的内容寻址(content addressing),同一份内容永远只有一个地址。对于ipfs这样的一个点对点的网络,其实没有传统的上传和下载的概念。每个人都可以把文件保存在自己的ipfs节点中,然后把文件的地址(哈希值)广播出去,如果别人需要,会根据这个哈希值在他自己的节点保存。
  情景2
  如果小B对照片做了修改,比如去除红眼后,分享给小C。现在问题来了,小A怎么知道有最新的修改呢?小A“沟通基本靠吼”,直接问下小B或小C。如果是更多人协作呢?
  ipfs有ipns(InterPlanetary Naming System)和pubsub(订阅,发布)可以帮忙做这个事情。
  情景3
  如果小A希望网络中有三个备份,要怎么做呢?已有方法是放到不同服务提供商,某度网盘存一份,微信收藏一份,telegram存一份……如果要存10份呢?
  ipfs的ipfs-cluster可以帮忙做指定副本数量的存储。
  以上情景都可以通过IPFS解决,从设计上看,IPFS包括用DHT存储metadata,使用类似的BT的数据交换方式,使用类似git的object管理和SFS(Self-Certified Filesystems)。

楼主热帖
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则