ipfs

IPFS初窥2

Roy

上一篇文章中初步介绍了IPFS的基本概念和使用方法,今天更深入一些了解IPFS的设计理念。

根据 第三版 白皮书,IPFS体系可以分为7层:

  1. 身份:负责节点的身份生成和认证。
  2. 网络:负责节点间的网络连接,可以配置使用各种网络协议。
  3. 路由:维护路由信息来找出特定的节点和对象。默认使用DHT,可以替换。
  4. 交换:一个新型的块交换协议(BitSwap)来高效管理块分发。有点类似超市,对数据复制有激励。交易策略可以替换。
  5. 对象:带有链接的、内容寻址的不可变对象组成的Merkle DAG,可以代表任意数据结构。比如文件层级和通信系统。
  6. 文件:受到Git启发的版本控制文件层级系统。
  7. 命名:自验证的可变命名系统。

IPFS初窥

Roy

虽然区块链有很多令人兴奋的特性,但是也有其固有的缺点。比如,文件或者长度较长的文本信息就不适合存储在链上。那么如何解决这个缺点呢?一个解决方案就是IPFS(Interplanetary File System)——星际文件系统。

本文作为简介篇不打算涉及网络及数据结构相关知识(比如什么是协议、什么是树、什么是图……),不过我相信各位看官既然能找到本文网络基础应该不是问题。