![]()
内容推荐 这是一部从实现原理和工程实践两个维度深入讲解IPFS和Filecoin的著作。作者是中文社区内非常有影响力的3位IPFS/Filecoin布道者。本书得到了IPFS & Filecoin创始人以及IPFS官方(协议实验室)的高度认可和强烈推荐。 为最大化满足读者需求,书中不仅介绍了IPFS技术细节、区块链相关知识、Filecoin项目技术细节,还加入了大量作者们在开发中的经验和技巧。为了适配当下及未来较长时间内读者的实际使用环境,书中所有案例都是基于生态链中较新的软件开发工具和前沿的软件开发技术编写的。 本书分为三大部分: 第一部分基础篇(第1章) 全面介绍了IPFS的源起、概念、优势和应用领域,旨在帮助读者了解IPFS相关基础背景知识,从宏观层面认识IPFS技术所具有的创新性。 第二部分原理篇(第2~5章) 旨在帮助读者深入理解IPFS和Filecoin的运行原理与工作机制。首先深入分析了分布式啥希表、块交换协议、版本控制、自验证文件系统Merkle DAG和Merkle Tree等底层基础知识,然后对IPFS协议栈中包含的7层子协议进行了剖析,接着解析了Multi-Format、libp2p、IPLD三大IPFS核心模块,最后用一整章的篇幅详细剖析了Filecoin项目。 第三部分实战篇(第6~8章) 以工程化的方式,从基础至进阶,介绍了IPFS技术的实际使用,包括安装、配置、交互、入网、API、内容发布、数据保存、私网搭建等内容,之后通过两个不同风格的实际项目案例向读者展示了基于不同语言所实现的IPFS协议栈的使用方法。 目录 推荐序 赞誉 前言 基础篇 认识IPFS 第1章 认识IPFS 1.1 IPFS概述 1.1.1 IPFS的概念和定义 1.1.2 IPFS的起源 1.2 IPFS与区块链的关系 1.2.1 区块链基础 1.2.2 区块链发展 1.2.3 IPFS为区块链带来了什么改变 1.2.4 Filecoin:基于IPFS技术的区块链项目 1.3 IPFS的优势与价值 1.3.1 IPFS的优势 1.3.2 Filecoin与其他区块链存储技术的对比 1.4 IPFS的应用领域 1.5 本章小结 原理篇 理解IPFS 第2章 IPFS底层基础 2.1 分布式哈希表(DHT) 2.1.1 Kademlia DHT 2.1.2 Coral DSHT 2.1.3 S/Kademlia DHT 2.2 块交换协议(BitTorrent) 2.2.1 BitTorrent术语含义 2.2.2 P2P块交换协议 2.2.3 阻塞策略 2.3 版本控制(Git) 2.4 自验证文件系统(SFS) 2.4.1 SFS设计 2.4.2 自验证文件路径 2.4.3 用户验证 2.4.4 密钥撤销机制 2.5 Merkle DAG和Merkle Tree 2.5.1 Merkle Tree 2.5.2 Merkle DAG 2.6 本章小结 第3章 IPFS协议栈 3.1 身份层(Identity) 3.2 网络层(Network) 3.3 路由层(Routing) 3.4 交换层(Exchange) 3.4.1 BitSwap协议 3.4.2 BitSwap信用体系 3.4.3 BitSwap策略 3.4.4 BitSwap账单 3.5 对象层(Object) 3.6 文件层(File) 3.7 命名层(Naming) 3.7.1 IPNS:命名以及易变状态 3.7.2 自验证命名 3.7.3 人类友好名称 3.8 本章小结 第4章 IPFS模块解析 4.1 Multi-Format 4.1.1 Multi-Hash 4.1.2 Multi-Base 4.1.3 Multi-Addr 4.1.4 Multi-Codec 4.1.5 Multi-Stream 4.2 libp2p 4.2.1 libp2p的功能 4.2.2 libp2p核心原理 4.2.3 libp2p的用途 4.3 IPLD 4.3.1 IPLD数据模型 4.3.2 内容识别符(CID) 4.3.3 CID解码规则 4.4 本章小结 第5章 Filecoin 5.1 Filecoin项目简介 5.1.1 Filecoin项目的起源 5.1.2 Filecoin 项目的价值 5.1.3 Filecoin的价值交换市场 5.1.4 优化互联网的使用 5.2 Filecoin与IPFS之间的关系 5.3 Filecoin经济体系 5.3.1 Filecoin 的分发与使用 5.3.2 Filecoin 矿工收益结构 5.4 Filecoin技术体系总览 5.4.1 Filecoin系统基本概念 5.4.2 Filecoin交易市场运行简介 5.4.3 Filecoin区块链数据结构 5.4.4 Filecoin 区块链运行原理 5.5 去中心化存储网络协议(DSN) 5.5.1 Put、Get、Manage操作 5.5.2 拜占庭问题与存储错误 5.5.3 DSN协议中的两类基础操作 5.5.4 存储节点操作协议 5.5.5 检索节点操作协议 5.5.6 网络操作协议 5.6 Filecoin交易市场 5.6.1 存储市场 5.6.2 检索市场 5.7 Filecoin 区块链共识机制 5.7.1 共识机制概述 5.7.2 共识机制要解决的3个问题 5.8 复制证明(PoRep)和时空证明(PoSt) 5.8.1 存储证明的6种定义 5.8.2 存储证明成员 5.8.3 复制证明(PoRep) 5.8.4 时空证明(PoSt) 5.8.5 复制证明 PoRep和时空证明PoSt的实现 5.9 网络攻击与防范 5.10 其他特性 5.10.1 Filecoin智能合约 5.10.2 Bridge互联系统 5.11 本章小结 实战篇 应用IPFS 第6章 IPFS开发基础 6.1 安装IPFS 6.1.1 通过安装包安装 6.1.2 通过Docker安装 6.1.3 通过ipfs-update安装 6.2 IPFS仓库配置初始化 6.2.1 初始化 6.2.2 访问配置文件 6.3 与IPFS文件系统进行交互 6.4 加入IPFS网络环境 6.5 与HTTP Web交互 6.6 API使用 6.6.1 IPFS命令行用法 6.6.2 IPFS协议实现扩展 6.6.3 IPFS端API 6.7 本章小结 第7章 IPFS开发进阶 7.1 在IPFS中发布动态内容 7.2 持久保存IPFS网络数据 7.3 操作IPFS Merkle DAG 7.3.1 创建Merkle DAG结构 7.3.2 组装子块数据 7.3.3 块与对象的区别 7.3.4 操作Block 7.3.5 操作Object 7.4 IPFS Pubsub功能的使用 7.5 私有IPFS网络的搭建与使用 7.5.1 环境准备 7.5.2 共享密钥 7.5.3 上传密钥至节点 7.5.4 添加启动节点 7.5.5 启动并查看各个节点 7.6 本章小结 第8章 IPFS项目实战 8.1 利用go-ip |