《Python语言区块链开发实战》是一本2022年出版的图书,由人民邮电出版社出版。作者是吕鉴涛博士,本书是“十四五”时期国家重点出版物出版专项规划图书,基于实战案例,剖析算法原理,配套丰富资源,助力读者自学。
Python语言区块链开发实战
【章名目录】
第 1章 区块链原理与技术基础
第 2章 简单的区块链模拟系统
第3章 基于区块链模拟系统的去中心化应用
第4章 本地以太坊私有网络
第5章 基于Web3和Brownie的以太坊区块链编程
第6章 区块链与IPFS
第7章 区块链应用与嵌入式数据库
第8章 基于区块链的电子证书认证系统
【详细目录】
第 1章 区块链原理与技术基础
1.1 区块链简介 1
1.1.1 区块链的构成 2
1.1.2 区块链的运行原理与演示 3
1.1.3 区块链的分类 9
1.2 区块链技术基础 9
1.2.1 哈希算法 9
1.2.2 AES算法 13
1.2.3 ECDSA 15
1.2.4 非对称加密技术与数字签名 17
1.2.5 默克尔树 21
1.2.6 P2P技术 24
1.3 区块与区块链 25
1.3.1 区块的定义与数据结构 25
1.3.2 区块链的定义 27
1.4 去中心化与区块链共识机制 30
1.4.1 共识算法与PoW算法 30
1.4.2 区块链分叉 32
1.5 本章小结 34
1.6 习题 34
第 2章 简单的区块链模拟系统
2.1 数据格式的定义 35
2.2 区块链系统结构与实现 37
2.2.1 区块结构的定义 37
2.2.2 区块与数字指纹 37
2.2.3 区块链结构的定义 38
2.2.4 PoW算法 39
2.2.5 发送交易 39
2.2.6 挖矿 40
2.2.7 区块上链 40
2.2.8 附加功能实现 41
2.3 区块链钱包 45
2.4 多节点网络 47
2.5 区块链模拟系统的简易的GUI功能设计与运行 52
2.6 本章小结 57
2.7 习题 58
第3章 基于区块链模拟系统的去中心化应用
3.1 Flask框架的安装与测试 59
3.1.1 VirtualEnv的安装 59
3.1.2 Flask的安装 60
3.1.3 Flask的测试 60
3.2 基于Flask的节点功能实现 62
3.2.1 节点功能API的定义 62
3.2.2 一致性算法 65
3.3 基于区块链的去中心化应用 69
3.3.1 去中心化应用的实现 69
3.3.2 去中心化应用的部署和运行 74
3.3.3 多节点运行 76
3.4 本章小结 79
3.5 习题 80
第4章 本地以太坊私有网络
4.1 以太坊简介 81
4.2 Ganache简介 81
4.2.1 GUI版Ganache的安装与设置 82
4.2.2 命令行版Ganache的安装与使用 85
4.3 MetaMask的安装、设置与使用 86
4.3.1 MetaMask的安装与设置 86
4.3.2 MetaMask的连接与交互 90
4.4 测试本地以太坊私有网络 94
4.4.1 以太坊客户端Geth的安装 94
4.4.2 搭建和启动单节点本地私有网络 94
4.4.3 搭建和启动多节点本地私有网络 99
4.4.4 功能测试 100
4.5 本章小结 104
4.6 习题 104
第5章 基于Web3和Brownie的以太坊区块链编程
5.1 Web3.py简介 105
5.2 基于Web3.py的以太坊编程交互 105
5.2.1 以太坊节点连接 106
5.2.2 Web3.py核心对象API简介与编程示例 106
5.2.3 基于Web3.py API的综合应用示例 112
5.3 智能合约简介 115
5.4 智能合约在线IDE 117
5.4.1 Remix 117
5.4.2 BUIDL 124
5.5 基于Web3.py的智能合约部署 126
5.5.1 与现有智能合约进行交互 126
5.5.2 部署新的智能合约 128
5.6 基于Brownie框架的区块链应用编程 131
5.6.1 Brownie的安装和初始化 131
5.6.2 基于Brownie控制台命令的智能合约部署 133
5.6.3 基于Brownie框架的区块链交互 136
5.6.4 基于Brownie框架的Python编程 140
5.7 本章小结 143
5.8 习题 143
第6章 区块链与IPFS
6.1 IPFS简介 144
6.2 IPFS和区块链的主要区别与关联 145
6.3 IPFS的安装与使用 147
6.3.1 IPFS的安装与初始化 147
6.3.2 IPFS常用命令与用法示例 148
6.4 IPFS与Python编程 154
6.4.1 IPFS API的安装与启动 154
6.4.2 基于Python的IPFS编程交互 155
6.5 本章小结 158
6.6 习题 158
第7章 区块链应用与嵌入式数据库
7.1 SQLite数据库 160
7.1.1 SQLite常用API简介 160
7.1.2 SQLite编程应用示例 161
7.2 LevelDB数据库 163
7.2.1 LevelDB的安装 163
7.2.2 LevelDB编程应用示例 164
7.3 本章小结 168
7.4 习题 168
第8章 基于区块链的电子证书认证系统
8.1 技术准备 169
8.1.1 基于PDFMiner的PDF文档内容解析 169
8.1.2 PDF文档元数据的添加与修改 171
8.1.3 PDF文档字段的读取与填充 173
8.2 基于区块链的电子证书认证系统设计 175
8.2.1 系统逻辑功能设计 176
8.2.2 系统UI设计 177
8.3 电子证书签署与上链 188
8.3.1 电子证书签署 188
8.3.2 电子证书数据上链存证 192
8.4 电子证书真伪验证 204
8.4.1 简历解析 204
8.4.2 电子证书与简历数据真实性验证 208
8.5 电子证书撤销 213
8.6 视图函数的实现 214
8.7 系统运行与功能测试 219
8.7.1 电子证书批量签署与上链功能测试 219
8.7.2 简历与电子证书数据验证功能测试 220
8.7.3 综合信息查询功能测试 222
8.7.4 电子证书撤销功能测试 223
8.8 本章小结 224
8.9 习题 224
很懒,什么都没有留下!
Thanks for sharing. I read many of your blog posts, cool, your blog is very good.
很懒,什么都没有留下!
I don’t think the title of your article matches the content lol. Just kidding, mainly because I had some doubts after reading the article. //www.binance.com/sl/register?ref=FIHEGIZ8
很懒,什么都没有留下!
Thank you for your sharing. I am worried that I lack creative ideas. It is your article that makes me full of hope. Thank you. But, I have a question, can you help me? //accounts.binance.com/ru-UA/register-person?ref=53551167
很懒,什么都没有留下!
I may need your help. I tried many ways but couldn’t solve it, but after reading your article, I think you have a way to help me. I’m looking forward for your reply. Thanks.
很懒,什么都没有留下!
I am sorting out relevant information about gate io recently, and I saw your article, and your creative ideas are of great help to me. However, I have doubts about some creative issues, can you answer them for me? I will continue to pay attention to your reply. Thanks.
很懒,什么都没有留下!
Thank you for your sharing. I am worried that I lack creative ideas. It is your article that makes me full of hope. Thank you. But, I have a question, can you help me? //accounts.binance.com/vi/register-person?ref=DB40ITMB
很懒,什么都没有留下!
Your article helped me a lot, is there any more related content? Thanks! //accounts.binance.com/en/register-person?ref=RQUR4BEO
很懒,什么都没有留下!
Thank you very much for sharing, I learned a lot from your article. Very cool. Thanks. nimabi