新書推薦:
《
鸣沙丛书·鼎革:南北议和与清帝退位
》
售價:HK$
121.0
《
从康德到黑格尔的发展:兼论宗教哲学(英国观念论名著译丛)
》
售價:HK$
60.5
《
突破不可能:用特工思维提升领导力
》
售價:HK$
77.3
《
王阳明大传:知行合一的心学智慧(精装典藏版)
》
售價:HK$
221.8
《
失衡与重塑——百年变局下的中国与世界经济
》
售價:HK$
132.2
《
南方谈话:邓小平在1992
》
售價:HK$
80.6
《
纷纭万端 : 近代中国的思想与社会
》
售價:HK$
109.8
《
中国古代文体形态研究(第四版)(中华当代学术著作辑要)
》
售價:HK$
168.0
|
內容簡介: |
本书系统介绍Filecoin的原理与实现,深入分析了Filecoin的底层运行机制。主要内容分三个部分:原理篇、实现篇和拓展篇。原理篇包括第1~7章,在简单介绍Filecoin的基础知识和技术发展的基础上,着重对Filecoin的设计和原理进行比较详细的阐述。实现篇包括第8~14章,讲述Filecoin的基础技术和实现。拓展篇包括第15~17章,讲述Filecoin的技术创新和生态探索。
|
目錄:
|
推荐序
前 言
致 谢
原理篇 Filecoin原理与设计
第1章 Filecoin基础 2
1.1 Filecoin简介 2
1.2 Filecoin的使命 4
1.3 Filecoin网络基础和基本概念 6
1.4 本章小结 9
第2章 Filecoin的技术发展 10
2.1 站在巨人的肩膀上 10
2.2 《Filecoin白皮书》和技术演进 14
2.2.1 《Filecoin白皮书》 14
2.2.2 Filecoin证明系统 14
2.2.3 重构共识机制 15
2.3 主网启动 16
2.4 本章小结 17
第3章 Filecoin的证明算法系统 18
3.1 分布式存储的安全性 18
3.1.1 世纪存储的挑战 19
3.1.2 去中心化存储的优势 20
3.1.3 去中心化存储网络中可能
存在的作弊行为 21
3.2 Filecoin的复制证明 21
3.2.1 前置概念 21
3.2.2 复制证明的实现 22
3.3 时空证明系统 25
3.3.1 前置概念 25
3.3.2 时空证明的实现 25
3.4 本章小结 29
第4章 Filecoin经济系统 30
4.1 海岛经济模型 30
4.1.1 数据市场 31
4.1.2 出口经济 31
4.1.3 市场参与者 32
4.2 基础设计原则 34
4.3 Filecoin经济模型中的反馈机制 35
4.4 初始参数 37
4.5 已验证的客户 38
4.6 本章小结 39
第5章 Filecoin中的共识算法 40
5.1 共识技术基础 40
5.1.1 共识机制—领导人选举 41
5.1.2 秘密单个领导人选举 41
5.2 Filecoin共识机制的模型设计 42
5.2.1 Filecoin共识 42
5.2.2 模型化创建区块存力 42
5.2.3 用时空证明保障数据的
安全性 43
5.2.4 使用存力达成共识 43
5.3 预期共识算法的实现 44
5.3.1 预期共识中的Ticket 45
5.3.2 秘密领导人选举 45
5.3.3 生成选举证明 47
5.3.4 分布函数的选择 49
5.4 一些实现细节 51
5.4.1 生成选举证明 51
5.4.2 领导人选举核查 52
5.4.3 链的选择 52
5.4.4 共识错误 54
5.5 本章小结 55
第6章 Filecoin的其他基础组件 56
6.1 加密原语 56
6.1.1 消息及签名 57
6.1.2 ECDSA签名 58
6.1.3 BLS签名 58
6.2 可验证随机函数 59
6.2.1 随机数 60
6.2.2 从VRF中抽取票据 61
6.2.3 使用随机数 62
6.3 Filecoin引用的第三方库 63
6.3.1 Drand 63
6.3.2 IPFS协议 66
6.3.3 IPLD协议 66
6.3.4 libp2p协议 68
6.4 本章小结 68
第7章 Filecoin的存储和检索 70
7.1 存储的基础数据及构成 70
7.1.1 基础数据类型 70
7.1.2 存储市场合约 72
7.1.3 链上订单状态流转 74
7.1.4 存储及检索的数据流
传输模型 76
7.2 存储市场 78
7.2.1 存储市场运作概述 78
7.2.2 存储客户端 79
7.2.3 存储服务提供者 80
7.2.4 存储过程中的抵押及其意义 81
7.2.5 存储过程中的状态变化 82
7.3 检索市场 84
7.3.1 检索市场运作概述 84
7.3.2 检索客户端 85
7.3.3 检索服务商 86
7.3.4 检索过程中的信任建立 87
7.3.5 检索过程中的状态变化 88
7.4 本章小结 89
实现篇 Filecoin的基础技术和实现
第8章 Filecoin区块链的节点实现 92
8.1 节点类型 92
8.2 节点本地存储 94
8.2.1 私钥存储 94
8.2.2 IPLD存储 95
8.3 节点的网络协议 96
8.4 节点的接口协议 97
8.5 节点的时钟 98
8.6 本章小结 99
第9章 Filecoin区块链的文件与
数据 100
9.1 Filecoin的本地文件存储 100
9.2 Filecoin的数据片 101
9.2.1 数据片的数据结构 101
9.2.2 数据片表示 102
9.2.3 PieceStore抽象 104
9.3 Filecoin的数据传输 104
9.3.1 数据传输模块 105
9.3.2 术语 106
9.3.3 请求流程 106
9.3.4 数据结构 107
9.3.5 数据流实现样例 109
9.4 Filecoin的数据格式和序列化 114
9.5 本章小结 115
第10章 Filecoin区块链 116
10.1 Filecoin区块链系统的组成 116
10.2 区块 117
10.2.1 区块的结构 117
10.2.2 TipSet 119
10.2.3 链管理器 120
10.2.4 区块生产者 120
10.3 消息池 121
10.4 链同步 122
10.4.1 链同步概述 123
10.4.2 链同步术语 123
10.4.3 链同步状态机 124
10.4.4 对等节点发现 125
10.4.5 步进区块验证 125
10.5 存储算力共识 127
10.5.1 存储服务提供者 128
10.5.2 区块生产者 128
10.5.3 算力 128
10.5.4 信标项 129
10.5.5 随机票 130
10.5.6
|
內容試閱:
|
前 言
回望过去80年,计算机改变了人类的生活方式,网络承载了人类的大部分活动。如今,我们正在快速迈进数据时代的新纪元。从自动驾驶汽车到人形机器人,从智能个人助理到智能家居设备,我们周围的世界正在发生根本的变化,改变着我们的生活、工作和娱乐方式。希捷在《数据时代2025》中将上述人类的数字化进程描述为“全球数据圈”(global datasphere)。数据存储是数字化最重要的基础,也是发展得非常快的领域。据IDC预测,到2025年,全球数据圈将扩展至163ZB(1ZB等于1万亿GB),相当于2016年所产生的16.1ZB数据的10倍。这种超速增长是过去数十年计算技术发展的必然结果。计算能力、数据存储和可用性的巨大进步催生了数字技术与服务的全新应用类型和场景。由此产生的需求反过来又推动着我们收集、管理、处理和交付数据的能力得到进一步发展,从而顺应企业工作流程和人们日常生活的需求。
本书介绍分布式存储网络Filecoin是如何从数据出发来构建Web 3.0的。Filecoin是一个使用区块链技术的去中心化、点对点的数字存储市场,属于计算第一性原理中的存储部分。Filecoin构建在星际文件系统(IPFS)之上,并设计了具备强大可组合性的存储单元—扇区来实现互联网的通用“磁盘”,允许用户出租这些未使用的“硬盘”空间并获得通证回报,其主要目的是为世界各地的组织和个人提供一种新的数据存储方式。本书不仅介绍Filecoin的演进历程、设计细节和最新发展,还介绍第三代区块链的核心技术,比如信标链、PoW PoS的融合共识、Actor行为人模型、Gas资源定价模型、DAG链、通用虚拟机等。本书是Web 3.0工程师、科研工作者、分布式存储从业者、区块链爱好者不可多得的学习材料和案头参考书。
写作概述
焜耀研究院诞生于原力区。自2017年开始,原力区作为一个分布式存储的技术社区涉足分布式存储技术IPFS/Filecoin的推广、研究和开发工作。Filecoin是在IPFS之上建立的以区块链为技术底层的去中心化存储和检索市场,也是一套完整的协议。
作为一个区块链项目,Filecoin融合了大量的区块链相关的最新发展,以及在存储证明、共识机制和经济模型等方面的大量创新。这就使得Filecoin技术兼容并蓄,底层技术需求广泛而且比较复杂。尽管Filecoin是一个完全开源的项目,其原理、设计和实现都是公开的,但是对于一般读者而言,要理解Filecoin技术仍然比较困难,尤其在大多数技术资料都是英文论著的情况下,对于中国读者,这相当于又多了一道门槛。
幸运的是,在Filecoin协议、设计和实现发展的数年内,焜耀研究院全程参与,并作为重要的社区成员持续贡献设计和代码。焜耀研究院不仅是Filecoin技术的推广者,还是Filecoin集群架构客户端Venus的开发者和维护者。在充分理解Filecoin的原理和实现的基础上,焜耀研究院致力于将Filecoin这个最新的分布式存储技术介绍给更多的技术人员和区块链爱好者,为互联网的发展尽一份绵薄之力。
焜耀研究院在前期研究的基础上,按照从原理到实现的逻辑对内容进行组织整理。由于Filecoin一直处于发展过程中,所以我们对书稿不断修订,并终于在Filecoin主网上线一年之后完成此书。从开始筹划到完成书稿,历时16个月。
读者对象
本书所面向的读者群比较广泛,不仅适合那些希望了解分布式存储原理和实现的技术人员,也适合希望了解区块链技术原理和实践的读者。主要读者对象包括:
IPFS/Filecoin技术爱好者和生态从业者。
分布式系统的技术人员和开发者。
区块链技术爱好者。
网络协议和网络安全技术爱好者。
大型系统高效设计的技术人员。
Web 3.0爱好者和从业者。
开设相关课程的大专院校师生。
如何阅读本书
本书分为三篇:原理篇、实现篇和拓展篇。
原理篇讲述Filecoin的原理与设计,包括第1~7章。这一篇在简单介绍Filecoin基础知识和技术发展的基础上,着重对Filecoin的设计和原理进行比较详细的阐述,包括证明系统、经济系统、共识算法以及存储和检索市场的设计等,旨在帮助读者由浅入深地了解Filecoin的设计和创新。
实现篇讲述Filecoin的基础技术和实现,包括第8~14章。这一篇的重点在于Filecoin的工程实现,即Filecoin的大量创新如何落实到代码上,构建可以运行的系统和网络,包括Filecoin的节点实现、区块链的基本构建方法、虚拟机及相关角色的构建,以及存储和检索服务的保障等。本篇主要以流行的Filecoin实现——Lotus和Venus为基础进行介绍。
拓展篇讲述Filecoin的技术创新和生态探索,包括第15~17章。这一篇主要介绍Filecoin的发展创新对区块链世界的影响,Filecoin未来的可能发展方向,并对Filecoin生态发展之路进行初步探索。希望这些内容对读者有一些启发,并激励读者参与到分布式存储的建设中。
本书涵盖技术介绍和探讨,读者可以选择感兴趣的部分进行精读。原理篇提供了大量的基础介绍和设计背景知识,拓展篇关注Filecoin的发展和生态,这两篇适合所有读者阅读。实现篇包含更多的技术细节和代码,适合希望了解Filecoin的实现以及进行Filecoin开发的读者阅读。
素材、勘误和支持
Filecoin是一个开源项目,大多数设计和代码都遵循MIT Apache 2.0的开源协议,可以免费使用。Filecoin也是一个社区广泛参与的项目,此项目的贡献者达数千人之多。我们在Filecoin的设计和建设过程中一直积极参与,是核心开发者之一。
本书的素材大多来源于Filecoin的设计和研究文档,以及对Filecoin的实现代码的分析。同时,我们在参与Filecoin建设的过程中,也产出过不少技术分析成果,其中有少量的在互联网上发表过,大多数没有发表。这些技术分析成果被包含在本书中,以构建完整的知识体系。
Filecoin是一个新生事物,去中心化存储技术也处于发展初期。虽然我们一直参与Filecoin网络的设计和建设,但由于水平有限,书中难免会出现一些错误或者不准确的地方,恳请读者批评指正。为此,我们创建了GitHub仓库用于存放相关资料。如果大家在阅读本书的过程中有任何意见或建议,欢迎通过GitHub以Issue的方式提出来,以便我们进一步改进。期待得到你们的反馈和支持。
另外,Filecoin技术非常复杂,本书不可能面面俱到,Filecoin的持续更新也不可能及时反映在本书之中,建议大家经常浏览Filecoin的网站(https://f?ilecoin.io),以及Filecoin在GitHub上的代码(https://github.com/f?ilecoin-project),其中有大量的项目在持续开发中。
致 谢Acknowledgements
首先要感谢这个时代,正如在本书第2章中所描述的,技术的进步是一个长期的过程,很多前辈做出了诸多贡献来推动社会文明的进步。感谢协议实验室开创了IPFS和Filecoin这些跨时代的网络协议和区块链项目,为Web 3.0奠定了基石。
其次要感谢机械工业出版社的老师们,他们花了大量时间审阅书稿并提出了非常专业和宝贵的意见,没有他们的支持,本书无法如期顺利完成。
本书是焜耀研究院全体同人数年共同研究和通力合作的成果。从研究员到工程师,从论文到设计,从编码实现到生态建设,焜耀研究院全体同人亲历和见证了Filecoin和Web 3.0的发轫和发展,并取得了不错的成绩。本书的作者团队熔理论与实践于一炉,集理解与创造于一体,历时16个月,终成此书。特别感谢石涛声研究员在本书的素材收集和整理上所做的大量工作,本书的大部分内容都是在石涛声所整理的素材基础上完成的。李昕负责全书的技术架构、章节组织、评审和全书的校订工作。本书的作者团队还包括Filecoin资深工程师王麟、王钞、李涛、李君龙等。王钞修订和审阅了原理篇的大部分章节;李涛和李君龙作为Venus的核心开发者,主要负责实现篇的修订和审阅;王麟负责拓展篇的编写和审阅。本书的许多工作是大家在业余时间完成的,是大家通力协作、反复讨论、仔细校对的成果。感谢大家的协作精神和奉献精神。
在本书的发起和写作过程中,得到了焜耀研究院主任张成龙先生的大力支持。正是张成龙先生建立和推崇的“价值、共建、共享、荣耀”文化理念,引导大家在本书的编写过程中从价值出发,共同努力,推出一本与大家共享知识和理念的书籍,实现彼此的荣耀。感谢张成龙先生的指导和指引。另外,郝梓言女士在本书的写作过程中做了很多认真细致的协调和推进工作,感谢她一贯的支持和保障。
Web 3.0的知识体系浩如烟海,区块链和分布式存储的发展也日新月异。谨以此书献给我们最亲爱的家人,以及中国众多热爱新技术、追求Web 3.0和区块链技术的朋友们。
|
|