当前位置:首页 > 工业技术
从零开始自己动手写区块链
从零开始自己动手写区块链

从零开始自己动手写区块链PDF电子书下载

工业技术

  • 电子书积分:11 积分如何计算积分?
  • 作 者:裴尧尧著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2018
  • ISBN:9787111612377
  • 页数:272 页
图书介绍:本书是一本区块链底层开发的入门图书,全书围绕作者开发的区块链模拟器,从原理和程序实现两个方面介绍了区块链开发技术。本书共7章,书中首先通过一个数字货币发行的故事,介绍了区块链的专业术语和工作原理;然后结合区块链模拟器的程序实现过程,介绍了区块链的关键技术细节。毫不夸张地讲,本书是一本手把手带领读者学习区块链开发的图书。本书内容通俗易懂,讲解犹如庖丁解牛,非常适合区块链开发人员作为自己的第一本区块链技术读物,也适合其他区块链爱好者作为兴趣读物和培训学员作为教材使用。另外,对于需要了解区块链知识的相关领导干部,本书可以学习指导书。
《从零开始自己动手写区块链》目录

第1章 区块链原理简介 1

1.1 区块链简要发展史 2

1.1.1 什么是比特币 2

1.1.2 比特币与区块链的关系 2

1.2 什么是中心化 3

1.2.1 交易 3

1.2.2 数字货币 3

1.2.3 复式记账法 4

1.2.4 未消费交易输出 6

1.2.5 中心化 7

1.2.6 区块与区块链 8

1.2.7 创世区块 9

1.3 去中心化原理 11

1.3.1 分布式存储 12

1.3.2 对等网络 12

1.3.3 交易池 14

1.3.4 “挖矿” 16

1.3.5 创币交易 17

1.3.6 工作量证明 18

1.3.7 共识与共识算法 19

1.3.8 确认 20

1.3.9 诚实节点和恶意节点 20

1.3.10 区块链分叉 21

1.3.11 双重支付 24

1.3.12 虚拟机 25

1.3.13 矿机和矿池 26

1.4 遗留的问题 26

第2章 区块链模拟器及Python入门 29

2.1 区块链模拟器GUI简介 30

2.1.1 为什么写区块链模拟器 30

2.1.2 区块链模拟器GUI简介 30

2.2 Python入门 36

2.2.1 为什么是Python 37

2.2.2 Python基础知识 37

2.3 Simchain简介 59

2.3.1 什么是Simchain 59

2.3.2 Simchain设计 61

2.3.3 Simchain使用 67

2.4 区块链四要素 72

第3章 区块链中的加密 73

3.1 为什么需要加密 74

3.2 如何实现加密 74

3.2.1 哈希算法 74

3.2.2 私钥、公钥和地址 82

3.2.3 实数域上的椭圆曲线 88

3.2.4 有限域上的椭圆曲线 90

3.2.5 椭圆曲线加密 97

3.2.6 钱包 105

3.3 可能的破解算法 111

3.3.1 枚举法 111

3.3.2 BSGS算法 112

3.3.3 Pollard’s rho算法 114

3.3.4 随机数攻击 115

3.3.5 如何保护私钥安全 117

3.4 格密码初探 118

3.4.1 抗量子计算密码 118

3.4.2 格基础知识 119

3.4.3 格问题 126

3.4.4 最短向量问题 128

3.4.5 最近向量问题 130

3.4.6 GGH数字签名 133

3.4.7 Lyubashevshy数字签名 135

第4章 交易 141

4.1 创建交易 142

4.1.1 交易的格式 142

4.1.2 交易的数据结构 143

4.1.3 UTXO与UTXO集 151

4.1.4 一般交易的创建 157

4.1.5 创币交易的创建 164

4.2 广播交易 165

4.3 验证交易 166

4.3.1 一般交易的验证 166

4.3.2 创币交易的验证 174

4.4 交易传播中的安全 174

4.4.1 签名明文攻击 174

4.4.2 创币交易的安全 176

4.5 可编程的交易 177

4.5.1 比特币脚本 177

4.5.2 脚本引擎的工作原理 177

4.5.3 堆栈机LittleMachine 183

4.5.4 多重签名 191

4.6 交易的“一生” 193

第5章 区块与区块链 195

5.1 区块 196

5.1.1 什么是区块 196

5.1.2 区块的数据结构 196

5.1.3 区块头 200

5.1.4 梅克尔树的构建 201

5.1.5 简易支付验证与SPV节点 205

5.2 区块链 211

5.2.1 区块链的构成 211

5.2.2 创世区块 213

5.2.3 区块链分类 217

第6章 去中心化共识 219

6.1 常见的共识算法 220

6.1.1 区块链中的共识 220

6.1.2 工作量证明POW 221

6.1.3 Raft协议 228

6.2 创建候选区块 233

6.2.1 交易选择策略 234

6.2.2 消失的交易 234

6.2.3 创建创币交易 234

6.2.4 创建候选区块 237

6.3 挖矿、打包、广播区块 239

6.3.1 “挖矿” 239

6.3.2 打包候选区块 239

6.3.3 广播区块 240

6.4 验证区块 241

6.5 区块链分叉 244

6.5.1 偶然分叉 244

6.5.2 硬分叉和软分叉 247

6.6 添加到区块链 248

6.6.1 比特币中的区块添加原则 248

6.6.2 51%攻击 252

6.6.3 Simchain中的区块添加原则 253

6.7 区块的“一生” 262

6.8 知识总结 263

第7章 杂谈 265

7.1 关于区块链常见问题的讨论 266

7.2 关于真假区块链项目的辨别 268

7.3 关于区块链技术的发展趋势 269

7.3.1 抗量子密码学 269

7.3.2 零知识证明 269

7.3.3 代码漏洞检测 271

7.4 关于以太坊与智能合约 271

7.5 关于区块链应用的愿想 272

返回顶部