白话区块链 (区块链技术丛书)

我要购买
我要购买该图书
  • 图书简介
708
以全方位视角,结合通俗生活化的示例与图生动讲解,从技术、应用到系统设计。涵盖区块链的底层技术、典型业务场景思路、主流框架与应用,并手把手教你从零构建区块链系统(微链)。本书共9章,以下为涉猎的内容。
  第1章通过村民记账的场景巧妙串起区块链的技术思想、技术组成,并以比特币为例介绍了基础技术原理。
  第2章综合介绍了典型区块链应用场景与流程。
  第3章介绍了现代密码算法在区块链中的作用与场景。
  第4章介绍了主流网络共识算法及其社会学价值。
  第5章介绍了区块链的链内外互联扩展技术的思路与主流做法。
  第6章详细介绍了以太坊的技术结构以及智能合约开发。
  第7章详细介绍了超级账本项目以及Fabric的配置与使用。
  第8章详细介绍了如何从零开始设计一个微型区块链系统(微链),加深理解并提升动手能力。
  第9章介绍了目前出现的各种区块链技术问题,多关于性能与安全。
  • 本书特色
区块链技术的思想,可以在非信任环境建立信任关系、传递信用与价值,它和具有时代影响力的其他技术一样,盘活了一系列的商业场景,比如防伪、溯源、数据治理、行业链条打通与监控,等等。但是区块链技术的发展尚处于早期,而且其技术栈(分布式系统、共识、加密、分布式账本等)是一种相对紧耦合的状态,技术门槛不低。
针对以上问题,蒋勇、文延、嘉文著的《白话区块链/区块链技术丛书》致力于降低学习曲线,让更多人了解区块链。本书具有以下特点。
由浅入深
从比特币开始,到区块链技术的骨骼(密码算法)和灵魂(共识算法),再到目前知名的区块链框架介绍,最后从零开始构建一个微型区块链系统,循序渐进。
多图多表
通过流程图与示意图介绍比特币的源码编译、以太坊智能合约的开发部署、超级账本Fabric的配置使用、模拟比特币的微型区块链系统的设计实现等,形象而直观。
白话通俗
通过“村民账本记账”“百花村选举记账”等生活化示例,避免多技术组合与新概念上的理解障碍与阅读枯燥感。
  • 目录
技术审校 
前言 
第1章 初识区块链 1 
1.1 例说区块链 1 
1.1.1 从一本账本说起 1 
1.1.2 区块链技术理念 3 
1.1.3 一般工作流程 4 
1.2 区块链技术栈 5 
1.3 区块链分类与架构 10 
1.3.1 区块链架构 10 
1.3.2 区块链分类 13 
1.4 一切源自比特币 16 
1.4.1 比特币技术论文介绍 16 
1.4.2 比特币核心程序:中本聪客户端 18 
1.4.3 比特币的发行:挖矿 30 
1.4.4 比特币钱包:核心钱包与轻钱包 35 
1.4.5 比特币账户模型:UTXO 39 
1.4.6 动手编译比特币源码 41 
1.5 区块链的技术意义 48 
1.6 知识点导图 51 
第2章 区块链应用发展 53 
2.1 比特币及其朋友圈:加密数字货币 53 
2.1.1 以太坊 54 
2.1.2 比特币现金 56 
2.1.3 莱特币 57 
2.1.4 零币 57 
2.1.5 数字货币发展总结 59 
2.2 区块链扩展应用:智能合约 61 
2.2.1 比特币中包含的合约思想 61 
2.2.2 以太坊中图灵完备的合约支持 62 
2.3 交易结算 62 
2.3.1 银行结算清算 62 
2.3.2 瑞波 :开放支付网络 64 
2.4 IPFS:星际文件系统 65 
2.5 公证防伪溯源 66 
2.6 供应链金融 70 
2.7 区块链基础设施:可编程社会 74 
2.8 链内资产与链外资产 76 
2.9 知识点导图 77 
第3章 区块链骨骼:密码算法 79 
3.1 哈希算法 79 
3.1.1 什么是哈希计算 79 
3.1.2 哈希算法的种类 80 
3.1.3 区块链中的哈希算法 81 
3.2 公开密钥算法 83 
3.2.1 两把钥匙:公钥和私钥 83 
3.2.2 RSA算法 84 
3.2.3 椭圆曲线密码算法 85 
3.3 编码/解码算法 86 
3.3.1 Base64 87 
3.3.2 Base58 88 
3.3.3 Base58Check 89 
3.4 应用场景 90 
3.5 知识点导图 91 
第4章 区块链灵魂:共识算法 92 
4.1 分布式系统的一致性 92 
4.1.1 一致性问题 93 
4.1.2 两个原理:FLP与CAP 94 
4.1.3 拜占庭将军问题 95 
4.1.4 共识算法的目的 96 
4.2 Paxos算法 98 
4.3 Raft算法 99 
4.4 PBFT算法 101 
4.5 工作量证明——PoW 102 
4.6 股权权益证明——PoS 104 
4.7 委托权益人证明机制——DPoS 104 
4.8 共识算法的社会学探讨 106 
4.9 知识点导图 107 
第5章 区块链扩展:扩容、侧链和闪电网络 108 
5.1 比特币区块扩容 108 
5.2 侧链技术 113 
5.3 闪电网络的设计 116 
5.4 多链:区块链应用的扩展交互 121 
5.5 知识点导图 122 
第6章 区块链开发平台:以太坊 123 
6.1 项目介绍 123 
6.1.1 项目背景 123 
6.1.2 以太坊组成 125 
6.1.3 关键概念 127 
6.1.4 官方钱包使用 143 
6.2 以太坊应用 151 
6.2.1 测试链与私链 151 
6.2.2 编写一个代币合约 158 
6.3 知识点导图 164 
第7章 区块链开发平台:超级账本 166 
7.1 项目介绍 166 
7.1.1 项目背景 166 
7.1.2 项目组成 167 
7.2 Fabric项目 169 
7.2.1 Fabric基本运行分析 169 
7.2.2 Fabric安装 170 
7.3 Fabric示例 173 
7.3.1 部署准备 173 
7.3.2 启动Fabric网络 178 
7.3.3 Fabric智能合约 180 
7.3.4 Fabric部署总结 187 
7.4 知识点导图 187 
第8章 动手做个实验:搭建微链 189 
8.1 微链是什么 189 
8.2 开发环境准备 190 
8.3 设计一个简单的结构 191 
8.4 源码解析 193 
8.4.1 目录结构 193 
8.4.2 代码之旅 194 
8.5 微链实验的注意问题 214 
8.6 知识点导图 214 
第9章 潜在的问题 216 
9.1 两个哭泣的婴儿:软分叉与硬分叉 217 
9.2 达摩克利斯剑:51%攻击 220 
9.3 简单的代价:轻钱包的易攻击性 222 
9.4 忘了保险箱密码:私钥丢失 223 
9.5 重放攻击:交易延展性 225 
9.6 代码漏洞:智能合约之殇 227 
9.6.1 说说TheDAO事件 227 
9.6.2 Parity多重签名漏洞 228 
9.7 网络拥堵:大量交易的确认延迟 229 
9.8 容量贪吃蛇:不断增长的区块数据 231 
9.9 知识点导图 232 
后记 区块链与可编程社会 234 
显示全部目录
  • 作者介绍
Wenyan Qin(覃文延)现区块链初创企业rdb.io公司CEO,同时负责光华隆信资产管理公司的区块链研发部门。曾任职IBM、蒙特利尔银行、Manulife公司。DBA与开发者,精通C/C++/Perl/Python/GO/Javascript语言,擅长DB2/Oracle/SQL Server,有超过20年的系统集成,软件研发相关经验,具体涵盖数据库技术,风控引擎,银行保险核心业务系统,金融基金平台,大数据,区块链技术。特别专注底层数据通讯协议,区块链通讯协议和共识机制算法以及区块链数据同步于安全技术。加中金融协会IT负责人,多伦多贝街论坛,多伦多Data Science & Technlogy社区领袖,多伦多NHC金融俱乐部,多伦多区块链技术社区创始人。