书籍详情
《从零开始自己动手写区块链裴尧尧区块链底层开发技术书籍》[46M]百度网盘|亲测有效|pdf下载
  • 从零开始自己动手写区块链裴尧尧区块链底层开发技术书籍

  • 出版社:蓝墨水图书专营店
  • 热度:12047
  • 上架时间:2024-06-30 09:38:03
  • 价格:0.0
书籍下载
书籍预览
免责声明

本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正

内容介绍




从零开始自己动手写区块链

区块链知名社区链客、Wificoin及三位行内大咖力荐!数字货币发行故事趣谈区块链;讲透区块链底层核心技术;手把手带你用Python实现区块链开发的重要环节;90幅插图、QQ群让学习更轻松

裴尧尧 著

出版社: 机械工业出版社 ISBN:9787111612377版次:1商品编码:12456395品牌:机工出版包装:平装开本:16出版时间:2018-11-01用纸:胶版纸

定价  69元

通过数字货币发行的故事剖析区块链的基本原理,大大降低了理解区块链的门槛。

蓝墨水图书专营店

绘制了近90幅与区块链相关的插图,便于读者更加透彻地理解区块链技术。

围绕区块链模拟器展开讲解,将区块链的核心环节通过代码实现,便于读者从整体上理解区块链的开发思路,并亲自动手实践区块链开发的重要环节。

通过区块链模拟器的动态展示,让读者直观地体验发币、挖矿、交易等数字货币发行的重要环节。

用Python语言实现区块链模拟器的开发,可大大降低区块链开发的学习门槛。

对区块链开发的关键技术进行了算法归纳和程序实现,便于读者深入理解区块链的底层技术。

绘制了漫画插图展示数字货币发行的故事,让抽象、复杂的区块链变得形象、直观。

提供了区块链技术学习与讨论QQ交流群,便于读者相互交流和学习,并提供售后服务。

本书核心技术要点

椭圆曲线加密的原理及程序实现

非确定性钱包与分层确定性钱包的程序实现

工作量证明共识算法的原理和程序实现

梅克尔树根哈希的原理和程序实现

随机数攻击与签名明文攻击的原理与程序实现

 

内容简介

本书是一本区块链底层开发入门图书,全书围绕作者开发的区块链模拟器,从原理和程序实现两个方面介绍了区块链开发技术。书中首先通过一个数字货币发行的故事,介绍了区块链的专业术语和工作原理;然后结合区块链模拟器的程序实现过程,介绍了区块链的关键技术细节。毫不夸张地讲,本书是一本手把手带领读者学习区块链开发的图书。

本书共7章。第1章从一个数字货币发行的故事引出了区块链,并围绕该故事介绍了区块链的基本原理和常见概念;第2章对区块链模拟器的基本功能和架构做了具体介绍,并对Python入门知识做了简单介绍;第3章介绍了区块链的加密技术,包括哈希算法、椭圆曲线加密和钱包等,并对热门的格密码进行了初步探讨;第4章介绍了UTXO模型中交易的数据结构,以及交易的创建和独立验证有效性的过程;第5章介绍了区块的数据结构、区块头的组成和意义、梅克尔树的作用和实现、创世区块所包含的内容、区块如何链接成区块链等;第6章以工作量证明(POW)共识算法为例,介绍了区块链达成全网共识的整个过程;第7章从专业技术角度进一步探讨了区块链技术的一些相关话题。

本书内容通俗易懂,讲解犹如庖丁解牛,非常适合区块链开发人员作为自己的第【yi】本区块链技术读物,也适合区块链爱好者作为兴趣读物。另外,本书还适合作为区块链培训班的教材及需要了解区块链知识的相关领导干部的学习指导书。

 

作者简介

裴尧尧 博士,有限元开源框架Feon的开发者。目前任教于湖北工业大学,从事算法研究与教学工作。擅长Python语言,热爱区块链技术,是区块链技术的推崇者。对区块链的底层实现有较为深入的研究,希望能为区块链的发展尽绵薄之力。著有《Python与有限元》一书,广受读者好评。

精彩书评

本书语言精炼,观点明晰,不乏高质量的数学模型,深入浅出地将区块链技术展示给了读者朋友。IT业的发展终究需要技术的推动而不仅仅是商业模式,希望这本书可以为区块链技术的普及贡献一份力量。

——链客(http://liankexing.com)

 

区块链技术是一门比较新的技术,很多开发者通过技术交流群讨论自己在学习和工作过程中遇到的相关问题。*初我也是在自己组建的区块链技术交流群里认识了作者。作者在解答区块链底层技术问题时表现出的严谨和专业给我留下了非常深刻的印象。相信作者的这本心血之作会给区块链学习者带来非常大的帮助,同时也期待这本书能为区块链技术在国内的普及做出贡献。

—— Wificoin开源项目发起人/区块链资深开发者 刘登丰

 

货币逐渐走向虚拟化,资产逐步走向智能化的时代,基于价值网络的数字化资产焕然一新,编程模式下的Token经济新物种也破壳而出。区块链伴随数字时代的脉动经历了1.0的比特币和2.0的智能合约之后,给予我们的已不仅是一种新的交易支付手段,而更是展示着一个趋向“自治”的全新的可编程生态系统,甚至是一套完整的价值互信网络和新的计量模型。如何走进这样的数字世界?就像作者的这本书所讲述的:自己动手写区块链。这是一个过程,也是一个课题。能够由浅入深,抽丝剥茧地揭开区块链的数字迷雾,能够循序渐进,从零开始解读新型技术模式,从而变复杂为简单,变乏味为趣味,伴动手与动脑,这正是本书的“认真”之处。贵为真知,值得一读,动手动脑,妙趣横生。

——蒙牛前数据分析总监/国内某知名互联网公司数据分析专家 陈源

 

币安CEO赵长鹏曾说过“I have yet to meet a person who understands blockchain but don't believe in it”。由此可见,要想真正进入区块链的世界,学习并掌握其开发技术是非常重要的。本书作者深入浅出地阐述了区块链开发的五个阶段,一步步带领读者走进区块链的世界,值得区块链学习者仔细研读。

《技术的本质》一书中提到“技术本身是有生命的,它能够自我完善,自我迭代和发展”。我认为区块链正是这样的技术,一个融汇了之前多种技术和学科的集大成者。此外,经济是技术的表达,了解了底层的技术原理,对区块链经济制度的设计也大有裨益。

从零开始自己动手,这也正是密码朋克所主张的“只有亲自动手才靠谱”,让我们从零开始迎接一个新的区块链纪元。

——链人科技CTO 戴剑

 

市面上关于区块链的书籍和课程已经汗牛充栋,在其商业性质、技术原理和发展前景等各个方面都有非常广泛的探讨。但区块链本质上是一种创新的软件技术和算法,只有自己亲自搭建环境,编写代码,实现从建立账本到完成交易的全过程,才能真正体会它的精髓。本书作者通过生动有趣的案例和大量清晰明了的图示,带领读者真正从原理开始,由浅入深地掌握区块链的各种核心技术,值得所有想探究区块链真相的读者参考。

——清华大学博士/CSDN博客专家/标准共识公司首席技术顾问/节点链习学院首席讲师 崔伟

第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