注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络行业软件及应用IPFS原理与实践

IPFS原理与实践

IPFS原理与实践

定 价:¥89.00

作 者: 董天一,戴嘉乐,黄禹铭 著
出版社: 机械工业出版社
丛编项:
标 签: 暂缺

ISBN: 9787111628804 出版时间: 2019-07-01 包装: 平装
开本: 16开 页数: 260 字数:  

内容简介

  本书由国内IPFS社区公认*的领袖撰写,从技术、原理与实战3个维度讲解了IPFS。 全书一共分为3个部分: 第壹部分:准备篇(第1章) 从宏观角度简单介绍了IPFS的概念、价值以及与区块链的关系; 第二部分:原理篇(第2~5章) 分别深入讲解了IPFS的工作原理、底层基础、协议栈和架构。 第三部分:实战篇(第6~8章)——应用IPFS 讲解了IPFS应用开发的技术、方法,并配合有个综合性的案例。 第四部分:扩展篇(第9章) 前瞻性地讲解了IPFS与其他领域的知识的一些扩展。

作者简介

  董天一(飞向未来)毕业于北京大学软件工程专业,资深IPFS技术专家、架构师,国内IPFS、Filecoin技术领域的先驱者和布道者,过去两年在国内举办相关线下活动30余场,对 IPFS 技术在中国的推动和普及起到了关键作用,在 IPFS 社区享有很高的声誉。现就职于电商行业,在中型电商系统的架构、设计与实现方面有丰富的经验,擅长高并发、微服务、ServiceMesh等技术。曾就职于Oracle亚洲研发中心,专注于数据库相关的设计与开发工作。资深区块链技术专家,早期的参与者,对区块链和分布式存储技术有着深刻的认识和见解,为多家大型上市公司提供过区块链技术的咨询和培训服务。戴嘉乐资深IPFS技术专家,国内首批IPFS技术布道师,“中国IPFS开发者沙龙”系列活动创办人。毕业于电子科技大学软件工程专业,曾担任百度地图高级后端研发工程师,参与构建过高并发下的高可用分布式后端系统和基于地理围栏和实时通勤路线的位置推荐系统。黄禹铭国内IPFS和Filecoin领域早期的研究者、布道者和投资人。新加坡国立大学博士生,主要研究方向为分布式计算和区块链。目前的研究兴趣包括区块链的共识机制、证明机制和激励模型。

图书目录

推荐序
赞誉
前言
基础篇 认识IPFS
第1章 认识IPFS2
1.1 IPFS概述2
1.1.1 IPFS的概念和定义2
1.1.2 IPFS的起源4
1.2 IPFS与区块链的关系8
1.2.1 区块链基础8
1.2.2 区块链发展10
1.2.3 IPFS为区块链带来了什么改变14
1.2.4 Filecoin:基于IPFS技术的区块链项目15
1.3 IPFS的优势与价值16
1.3.1 IPFS的优势16
1.3.2 Filecoin与其他区块链存储技术的对比21
1.4 IPFS的应用领域23
1.5 本章小结25
原理篇 理解IPFS
第2章 IPFS底层基础28
2.1 分布式哈希表(DHT)28
2.1.1 Kademlia DHT29
2.1.2 Coral DSHT36
2.1.3 S/Kademlia DHT38
2.2 块交换协议(BitTorrent)41
2.2.1 BitTorrent术语含义42
2.2.2 P2P块交换协议43
2.2.3 阻塞策略44
2.3 版本控制(Git)46
2.4 自验证文件系统(SFS)54
2.4.1 SFS设计55
2.4.2 自验证文件路径57
2.4.3 用户验证58
2.4.4 密钥撤销机制58
2.5 Merkle DAG和Merkle Tree59
2.5.1 Merkle Tree60
2.5.2 Merkle DAG63
2.6 本章小结65
第3章 IPFS协议栈66
3.1 身份层(Identity)67
3.2 网络层(Network)68
3.3 路由层(Routing)69
3.4 交换层(Exchange)71
3.4.1 BitSwap协议71
3.4.2 BitSwap信用体系75
3.4.3 BitSwap策略75
3.4.4 BitSwap账单76
3.5 对象层(Object)77
3.6 文件层(File)79
3.7 命名层(Naming)83
3.7.1 IPNS:命名以及易变状态83
3.7.2 自验证命名83
3.7.3 人类友好名称84
3.8 本章小结85
第4章 IPFS模块解析86
4.1 Multi-Format86
4.1.1 Multi-Hash87
4.1.2 Multi-Base90
4.1.3 Multi-Addr92
4.1.4 Multi-Codec95
4.1.5 Multi-Stream 98
4.2 libp2p98
4.2.1 libp2p的功能99
4.2.2 libp2p核心原理101
4.2.3 libp2p的用途108
4.3 IPLD109
4.3.1 IPLD数据模型110
4.3.2 内容识别符(CID)112
4.3.3 CID解码规则115
4.4 本章小结116
第5章 Filecoin117
5.1 Filecoin项目简介117
5.1.1 Filecoin项目的起源117
5.1.2 Filecoin 项目的价值118
5.1.3 Filecoin的价值交换市场119
5.1.4 优化互联网的使用120
5.2 Filecoin与IPFS之间的关系120
5.3 Filecoin经济体系122
5.3.1 Filecoin 的分发与使用122
5.3.2 Filecoin 矿工收益结构123
5.4 Filecoin技术体系总览124
5.4.1 Filecoin系统基本概念125
5.4.2 Filecoin交易市场运行简介125
5.4.3 Filecoin区块链数据结构127
5.4.4 Filecoin 区块链运行原理129
5.5 去中心化存储网络协议(DSN)130
5.5.1 Put、Get、Manage操作130
5.5.2 拜占庭问题与存储错误133
5.5.3 DSN协议中的两类基础操作134
5.5.4 存储节点操作协议138
5.5.5 检索节点操作协议141
5.5.6 网络操作协议143
5.6 Filecoin交易市场145
5.6.1 存储市场146
5.6.2 检索市场148
5.7 Filecoin 区块链共识机制151
5.7.1 共识机制概述151
5.7.2 共识机制要解决的3个问题152
5.8 复制证明(PoRep)和时空证明(PoSt)157
5.8.1 存储证明的6种定义157
5.8.2 存储证明成员159
5.8.3 复制证明(PoRep)160
5.8.4 时空证明(PoSt)163
5.8.5 复制证明 PoRep和时空证明PoSt的实现164
5.9 网络攻击与防范173
5.10 其他特性176
5.10.1 Filecoin智能合约176
5.10.2 Bridge互联系统177
5.11 本章小结177
实战篇 应用IPFS
第6章 IPFS开发基础180
6.1 安装IPFS180
6.1.1 通过安装包安装180
6.1.2 通过Docker安装183
6.1.3 通过ipfs-update安装184
6.2 IPFS仓库配置初始化185
6.2.1 初始化185
6.2.2 访问配置文件186
6.3 与IPFS文件系统进行交互190
6.4 加入IPFS网络环境193
6.5 与HTTP Web交互195
6.6 API使用 196
6.6.1 IPFS命令行用法197
6.6.2 IPFS协议实现扩展200
6.6.3 IPFS端API200
6.7 本章小结202
第7章 IPFS开发进阶203
7.1 在IPFS中发布动态内容203
7.2 持久保存IPFS网络数据206
7.3 操作IPFS Merkle DAG208
7.3.1 创建Merkle DAG结构208
7.3.2 组装子块数据209
7.3.3 块与对象的区别210
7.3.4 操作Block210
7.3.5 操作Object211
7.4 IPFS Pubsub功能的使用212
7.5 私有IPFS网络的搭建与使用215
7.5.1 环境准备216
7.5.2 共享密钥216
7.5.3 上传密钥至节点217
7.5.4 添加启动节点217
7.5.5 启动并查看各个节点217
7.6 本章小结219
第8章 IPFS项目实战220
8.1 利用go-ipfs优化Git分布式服务220
8.1.1 依赖安装221
8.1.2 初始化Git仓库222
8.1.3 IPFS网络挂载223
8.1.4 用Git从IPFS网络克隆仓库225
8.2 基于js-ipfs搭建一个流媒体播放系统227
8.2.1 构建Node.js开发环境227
8.2.2 使用Webpack构建项目229
8.2.3 开发播放器模块231
8.2.4 开发状态栏模块233
8.2.5 引入js-ipfs模块235
8.2.6 实现拖拽上传237
8.2.7 从IPFS中读取流媒体至播放器238
8.2.8 处理流媒体播放状态240
8.2.9 开发总结241
8.3 本章小结242

本目录推荐