具体描述
本书从工作原理、架构设计、工程实践三个维度,对Stellar做了全方位深入剖析。
三位作者均是区块链领域的资深技术专家,均是Stellar社区的早期参与者、深度参与者和技术布道者,为Stellar在中国乃至全球的发展做出了重要贡献。本书得到了Stellar创始人Jed McCaleb、 Stellar亚太区负责人Michael Ran等Stellar官方团队成员的高度评价和推荐。
全书共9章,从逻辑上可分为5个部分,内容涵盖Stellar区块链基础协议剖析、两层场景案例应用、应用系统架构设计、Stellar区块链网络搭建和快速业务系统集成等方面。
第一部分(第1~3章)
重点从工程实践角度来审视区块链技术,介绍了区块链的基础概念和Stellar区块链基础协议的技术原理。
第二部分(第4~5章)
给出了两个典型的应用场景案例:一个是数据确权的应用场景,一个是基于数据确权的价值流通应用场景,展现了区块链的两层应用,引导读者结合区块链开展工程实践应用。
第三部分(第6章)
讲解了基于Stellar区块链技术的系统架构设计,从业务架构设计、逻辑架构设计、物理架构设计、数据架构设计和账户架构设计等方面给出了关键架构设计要点和最佳实践。
第四部分(第7~8章)
详细说明了如何将一个stellar-core区块链节点接入已有的Stellar区块链网络中,并搭建horizon实例以实现对外提供访问区块链网络的服务能力,同时,给出了搭建一个全新Stellar区块链网络的详细步骤,并介绍了对关键代码的定制化改造。
第五部分(第9章)
介绍了Stellar技术社区已有的工具,以及将Stellar区块链技术和已有业务系统快速集成的方法。
作者简介
宋文鹏(扶摇)
Stellar技术社区早期参与者,中国区块链技术和产业发展论坛技术专家,IEEE 区块链标准组P2418.2 副主席,ISO/TC307 区块链&分布式账本标准组技术专家。
参与了《区块链:参考架构》《区块链:数据格式》《区块链:智能合约实施规范》和《区块链:存证应用指南》等团标、国标和国际标准的制定。
梁然(Liang Ran)
中国区块链早期的探索者,区块链技术专家。擅长研究区块链中资产的发行和交易,参与编写了《ChinaLedger技术白皮书》、工信部《中国区块链技术和应用发展白皮书》等著作,对区块链和分布式账本技术在国内的普及和发展做出了很大贡献。
在2014年创立RippleFox社区,该社区已发展成为中国最大的Ripple和Stellar社区。在2017年创立共赢链信息科技(深圳)有限公司,将区块链技术应用到企业自金融生态。开发的“链单”系统在多家上市公司上线,在供应链金融领域取得了良好的效果。
韩丰(老翅)
Stellar技术社区深度参与者,Stellar区块链技术布道者,Stellar中文维基创始人,萤火生态联合创始人。积极推进Stellar技术在国内的应用与发展。自Stellar项目启动即运行网络节点,该节点已成长为最受信赖的节点之一。
目录信息
序
前言
第1章 区块链基础 1
1.1 关键特征 1
1.2 适合场景 2
1.3 关键组成 3
1.3.1 P2P网络 3
1.3.2 共识机制 4
1.3.3 密码学 6
1.3.4 智能合约 9
1.4 网络类型 10
1.5 安全性考量 11
1.6 性能考量 13
1.7 常见基础协议 13
1.7.1 BitCoin 13
1.7.2 Ethereum 15
1.7.3 Ripple 16
1.7.4 Tendermint 16
1.8 标准化 19
1.9 本章小结 21
第2章 Stellar概述 22
2.1 主要特点 22
2.2 关键部件 23
2.2.1 网络结构 23
2.2.2 stellar-core 23
2.2.3 horizon 24
2.3 常用工具 27
2.3.1 Account-Viewer 27
2.3.2 Laboratory 29
2.3.3 Dashboard 32
2.4 Hello New World 34
2.5 联邦拜占庭共识 36
2.6 本章小结 38
第3章 Stellar详解 39
3.1 数据大图 39
3.1.1 账本数据 39
3.1.2 实体数据 41
3.1.3 形态数据 41
3.2 账户 43
3.3 账页 46
3.4 数字资产 50
3.4.1 原生资产 50
3.4.2 通货膨胀 51
3.4.3 发行资产 53
3.4.4 信任资产 53
3.4.5 资产锚点 55
3.5 分布式交易 56
3.5.1 交易挂单 56
3.5.2 被动挂单 58
3.5.3 路径支付 58
3.6 智能合约 58
3.6.1 多签名 58
3.6.2 阈值 62
3.6.3 时间事件 64
3.7 管理数据 64
3.8 事务&操作 65
3.8.1 事务 65
3.8.2 操作 66
3.9 其他概念 75
3.9.1 序列号 75
3.9.2 通道 75
3.9.3 事件 77
3.10 本章小结 79
第4章 数据存证 80
4.1 场景需求 81
4.2 实现原理 82
4.2.1 实名认证 82
4.2.2 数据确权 84
4.2.3 数据查验 84
4.3 实现过程 85
4.3.1 实现代码结构 85
4.3.2 接入区块链网络 86
4.3.3 数据Hash上链 87
4.3.4 事务查验 91
4.4 最佳实践 91
4.5 本章小结 92
第5章 资产交易 93
5.1 场景需求 93
5.2 实现原理 94
5.3 实现过程 96
5.4 最佳实践 101
5.4.1 区块链网络高可用性 101
5.4.2 发行资产总量控制 101
5.4.3 与业务系统集成 102
5.4.4 有效的账户架构设计 102
5.5 本章小结 103
第6章 基于Stellar区块链技术的系统架构设计 104
6.1 业务架构设计 104
6.1.1 什么场景适合区块链? 104
6.1.2 区块链网络形态 105
6.1.3 去中心化? 108
6.1.4 协作模式 108
6.1.5 如何证明是区块链? 109
6.2 逻辑架构设计 109
6.2.1 DApp 109
6.2.2 三种区块链网络链接方式 110
6.2.3 业务监控 110
6.2.4 事务性逻辑处理 111
6.3 物理架构设计 111
6.3.1 节点类型 111
6.3.2 物理架构设计视图 111
6.4 数据架构设计 113
6.4.1 四种数据 113
6.4.2 数据上链 113
6.4.3 数据隐私 113
6.5 账户架构设计 114
6.5.1 用户账户处理 114
6.5.2 发行账户处理 114
6.5.3 账户认证 117
6.6 本章小结 118
第7章 搭建Stellar公有区块链网络节点 119
7.1 公有区块链网络状态 119
7.2 状态机复制 121
7.3 stellar-core部署 123
7.3.1 环境准备 123
7.3.2 安装方式 123
7.3.3 依赖环境安装 124
7.3.4 安装PostgreSQL 124
7.3.5 选择安装分支 127
7.3.6 编译安装 127
7.3.7 创建节点seed 129
7.3.8 配置文件实例 129
7.3.9 初始化数据库 131
7.3.10 启动节点 133
7.4 stellar-core配置参数 134
7.4.1 通用管理类 134
7.4.2 网络类 135
7.4.3 SCP类 137
7.4.4 历史数据类 137
7.4.5 测试类 138
7.4.6 历史归档配置 138
7.4.7 Quorum Set配置 140
7.5 stellar-core最佳实践 141
7.5.1 创建系统服务 141
7.5.2 远程HTTP命令 142
7.5.3 控制台命令 146
7.5.4 使用阿里云OSS作为历史归档数据源 149
7.5.5 stellar-core部署硬盘采用SSD硬盘 149
7.5.6 配置文件特殊字符问题 150
7.5.7 stellar-core安全退出 151
7.5.8 操作系统的系统时间问题 151
7.6 horizon部署 154
7.6.1 环境准备 154
7.6.2 安装方式 155
7.6.3 安装Golang 155
7.6.4 数据库准备 156
7.6.5 源码编译安装 156
7.6.6 最小配置参数 156
7.6.7 启动horizon 157
7.7 horizon配置参数 158
7.8 horizon最佳实践 159
7.8.1 创建系统服务 159
7.8.2 高可用配置 160
7.9 本章小结 161
第8章 搭建一个新的Stellar区块链网络 162
8.1 为什么需要? 162
8.2 网络方案设计 163
8.2.1 网络健壮性方案 163
8.2.2 服务健壮性方案 164
8.2.3 网络性能方案 165
8.2.4 历史归档方案 165
8.3 网络配置启动 166
8.3.1 stellar-core配置 166
8.3.2 启动stellar-core 168
8.3.3 启动后原生资产处理 168
8.3.4 horizon配置 168
8.4 关键代码定制 171
8.4.1 账户地址和Seed前缀修改 171
8.4.2 设置通货膨胀率 171
8.4.3 修改默认配置 172
8.4.4 创世区块修改 173
8.5 本章小结 175
第9章 系统集成 176
9.1 基础服务套件 176
9.2 联邦协议 177
9.2.1 工作原理 178
9.2.2 参考实现 181
9.3 桥接服务 182
9.3.1 工作原理 183
9.3.2 参考实现 183
9.4 合规协议 185
9.4.1 工作原理 185
9.4.2 参考实现 187
9.5 本章小结 188
后记 189
附录 术语中英文对照表 191
· · · · · · (收起)
读后感
用户评价
这本号称深入浅出讲解区块链技术的书籍,读完之后我的感受颇为复杂。首先,它在对基础概念的梳理上,可以说达到了一个相当高的水准。比如对于哈希函数的描述,不仅仅停留在教科书式的定义上,而是通过几个非常贴合生活实际的例子,将不可逆性和雪崩效应阐释得淋漓尽致,让即便是初次接触密码学概念的读者也能迅速抓住重点。再者,它对“去中心化”这一核心理念的哲学探讨,也颇具启发性。作者似乎并未满足于技术层面的介绍,而是将其置于社会结构变迁的大背景下进行审视,让人不禁思考,这种分布式记账方式究竟能为我们的社会带来哪些根本性的变革,而非仅仅是一种更快的支付手段。尤其是关于共识机制的章节,对于拜占庭将军问题的经典重述,配上精妙的流程图,使得复杂的分布式系统难题变得一目了然,这部分内容的详尽程度,绝对是市面上许多速成读物望尘莫及的。整体阅读下来,感觉像是完成了一次高质量的知识建构,为后续深入研究打下了极其坚实的地基。
阅读体验上,这本书的排版和图示设计明显透露出一种偏向学术研讨会资料的风格,而非面向大众读者的科普读物。大量使用了小字体、密集排列的公式和复杂的嵌套图表,使得长时间阅读下来,眼睛的疲劳感非常明显。尤其是在解释数学证明或复杂网络拓扑结构时,如果能引入更多类比式的视觉隐喻,或者采用分层解读的方式——先给出结论,再引导读者深入细节——将会有效降低阅读门槛。目前的呈现方式,更像是给已经具备扎实数学和计算机科学背景的专业人士准备的参考手册,而非一个能吸引并留住对新生事物抱有好奇心的普通爱好者的“入门之钥”。希望未来版本能在保持技术深度的同时,能大幅优化图文排版和信息可视化策略,让晦涩的知识变得更加亲切可消化。
这本书在案例选择的广度上,展现出了一种明显的地域和技术栈偏好。虽然对以太坊生态的叙事非常详尽,几乎是将其视为区块链世界的“标准模型”进行展开,但对于其他新兴的、具有颠覆性共识机制的独立公链(如某些基于定向无环图DAG结构的分布式账本,或者专注于隐私保护的新一代协议),介绍得过于简略,甚至像是附带提及的脚注。这种聚焦于单一主导技术的倾向,使得读者很难全面把握当前区块链领域百花齐放的竞争格局。如果能用更对等的篇幅,去对比分析不同技术路线在面对特定应用场景(例如物联网数据确权或供应链金融)时的性能差异和适用性边界,这本书的参考价值将会从“入门指南”升级为“全景式行业手册”,帮助读者构建一个更全面、不带偏见的行业认知地图。
坦白说,我期待看到更多关于当前行业前沿挑战的批判性分析,然而这本书在这方面显得有些保守和克制。书中花了大量的篇幅去描绘理想化的技术前景和成熟的解决方案,但在涉及可扩展性(Scalability)这一“不可能三角”的尖锐冲突时,叙述明显偏向于乐观。例如,在讨论Layer 2技术时,虽然提到了侧链和状态通道,但对于它们各自在安全性、去信任化程度上存在的固有权衡,分析得不够深入和尖锐。我更希望看到的是,作者能够站得更远一些,去审视当前主流公链在面对海量用户并发请求时,其底层设计瓶颈的真正症结所在,而不是仅仅罗列出一堆现有的优化方案。这种“歌功颂德”式的描述,虽然能让初学者感到安心,但对于有一定基础、渴望了解技术局限性的读者来说,无疑是一种信息上的缺失,让人感觉像是只看到了盛宴的开场,却错过了对主厨烹饪难点的深度揭秘。
本书的章节组织逻辑,如果从一个非技术背景的商业人士角度来看,可能会感到有些跳跃和突兀。前几章对底层原理的阐述堪称典范,但在进入到“智能合约编程实践”的部分时,风格骤变,突然间充斥了大量的代码片段和特定虚拟机(VM)的内部操作细节。这使得从技术宏观概念转向具体工程实现的过渡显得生硬。对于我这种更关注应用落地和商业模式的读者而言,如何将这些复杂的底层逻辑,转化为可行的商业合同模板、或者如何在新兴的DeFi生态中进行风险建模,这方面的内容显得捉襟见肘。如果作者能够在中间穿插更多行业案例,比如某个特定金融衍生品是如何被成功地在链上复现的,并清晰地勾勒出从概念到代码再到最终产品化的路径图,这本书的实用价值将大大提升,而不只是停留在“知其然”的层面。
十分看好Stellar的团队技术和商业背景。Stellar定位在金融领域应用,业务模式早已落地并得到推广。目前主要用于跨境转帐,结合具体的支付场景,也可以用于支付业务,比如电商业务。其主要的优势在于交易费用极低,交易简便易行快速。
十分看好Stellar的团队技术和商业背景。Stellar定位在金融领域应用,业务模式早已落地并得到推广。目前主要用于跨境转帐,结合具体的支付场景,也可以用于支付业务,比如电商业务。其主要的优势在于交易费用极低,交易简便易行快速。
十分看好Stellar的团队技术和商业背景。Stellar定位在金融领域应用,业务模式早已落地并得到推广。目前主要用于跨境转帐,结合具体的支付场景,也可以用于支付业务,比如电商业务。其主要的优势在于交易费用极低,交易简便易行快速。
本书对于新手码农实在太友好了,全面的解析了Stellar技术原理,凭借着本书的学习,我觉得更有底气加入区块链领域,投身大趋势。
本书对于新手码农实在太友好了,全面的解析了Stellar技术原理,凭借着本书的学习,我觉得更有底气加入区块链领域,投身大趋势。