定 价:79.8 元
丛书名:
- 作者:胡凯
- 出版时间:2024/4/1
- ISBN:9787121476235
- 出 版 社:电子工业出版社
适用读者:高等计算机专业本专科生、研究生及其他想了解智能合约的技术人员。
- 中图法分类:TP311.135.9
- 页码:312
- 纸张:
- 版次:01
- 开本:16开
- 字数:499(单位:千字)
本书提出和论述了智能合约工程的概念、主要内容和技术体系,在介绍相关思想、理念,以及现有主要智能合约系统基本原理的基础上,主要论述了智能合约的工程化开发方法、智能合约法律化、智能合约形式化设计与验证方法、智能合约即服务、智能合约并行化等新理论和方法。本书适合从事区块链和智能合约研究开发的科研人员参考,以及大学相关专业的本科生和研究生使用。
胡凯,男,工学博士,教授,博士生导师。研究内容包括:分布式系统、机群和网格计算、计算机仿真技术、区块链等。先后主持国家自然基金4项,核高基课题,多项863基金项目,航空科学基金以及航空航天领域科研项目。近年来在国内外期刊和学术会议上发表SCI/EI论文50余篇,编写教材和著作共3部。
第1章 智能合约技术革命 1
1.1 区块链带来的技术革命 1
1.1.1 区块链带火了智能合约 1
1.1.2 数字社会发展趋势 3
1.1.3 合约的意义 4
1.2 智能合约的价值 5
1.2.1 智能合约的起源 5
1.2.2 智能合约的定义 6
1.2.3 智能合约与区块链结合的意义 8
1.3 智能合约的发展 10
1.3.1 智能合约的特点 10
1.3.2 智能合约的应用 12
1.3.3 智能合约存在的问题 14
本章小结 15
第2章 区块链基础 16
2.1 区块链的基本思想 16
2.2 区块链系统结构 18
2.2.1 区块链系统分层架构 18
2.2.2 区块链的分类与典型结构 21
2.2.3 区块链结构的特点 23
2.3 区块链的数据结构 25
2.3.1 区块及链式结构 25
2.3.2 哈希算法 26
2.3.3 Merkle树 28
2.4 区块链共识算法 32
2.4.1 PoW算法 33
2.4.2 PoS算法 33
2.4.3 DPoS算法 34
2.4.4 拜占庭将军问题 34
2.4.5 PBFT算法 37
2.5 区块链可扩展技术 38
2.5.1 侧链技术 39
2.5.2 分叉技术 40
2.5.3 中间转发 41
2.5.4 未来区块链架构 42
2.6 区块链设计案例 44
本章小结 47
第3章 智能合约设计原理 48
3.1 智能合约模型与设计 48
3.1.1 智能合约基本模型 48
3.1.2 模型应用 49
3.1.3 智能合约存储模型 53
3.1.4 智能合约执行模型 54
3.1.5 智能合约系统设计 56
3.2 众筹智能合约设计 59
3.2.1 众筹区块链架构 59
3.2.2 众筹智能合约的业务设计 61
3.2.3 众筹智能合约的系统设计 62
3.2.4 众筹智能合约的详细设计 65
3.2.5 智能行业执行机制设计 67
3.3 养老保险智能合约设计 69
3.3.1 原生智能合约 70
3.3.2 用户智能合约 74
3.3.3 智能合约自动触发机制 75
本章小结 76
第4章 以太坊智能合约 77
4.1 以太坊基本原理 77
4.1.1 以太坊介绍 77
4.1.2 以太坊基本概念 78
4.1.3 以太坊系统架构 81
4.2 以太坊智能合约原理 82
4.2.1 智能合约模型 82
4.2.2 智能合约运行原理 83
4.3 以太坊智能合约编程方法 84
4.3.1 搭建本地链 84
4.3.2 合约编写 86
4.3.3 合约发布 87
4.3.4 合约执行 87
4.4 以太坊智能合约编程示例 87
4.4.1 场景介绍 87
4.4.2 伪代码 88
4.4.3 合约代码 89
4.4.4 合约测试 90
4.5 案例:基于以太坊的多签钱包 90
本章小结 93
第5章 Fabric智能合约 94
5.1 Fabric原理 94
5.1.1 Fabric简介 94
5.1.2 服务模块 95
5.1.3 基本术语 96
5.2 Fabric智能合约原理 99
5.2.1 智能合约模型 99
5.2.2 智能合约实现 100
5.3 Fabric智能合约编程方法 103
5.3.1 构建Fabric智能合约开发环境 103
5.3.2 链码生成 105
5.3.3 链码部署 107
5.3.4 链码执行 108
5.4 Fabric智能合约编程示例 108
5.4.1 场景介绍 108
5.4.2 伪代码 110
5.4.3 合约代码 111
5.4.4 合约测试 117
本章小结 118
第6章 其他典型智能合约 119
6.1 EOS智能合约 119
6.1.1 什么是EOS 119
6.1.2 架构与原理 119
6.1.3 基本术语 120
6.1.4 EOS合约虚拟机 122
6.1.5 EOS智能合约简介 124
6.1.6 深入理解EOS智能合约 127
6.2 Diem智能合约 130
6.2.1 什么是Diem 130
6.2.2 架构与原理 130
6.2.3 基本术语 132
6.2.4 Diem合约虚拟机 133
6.2.5 Diem智能合约简介 134
6.2.6 深入理解Diem智能合约 136
6.3 FISCO BCOS智能合约 137
6.3.1 什么是FISCO BCOS 137
6.3.2 架构与原理 137
6.3.3 基本术语 139
6.3.4 FISCO BCOS合约虚拟机 140
6.3.5 FISCO BCOS智能合约简介 141
6.3.6 深入理解FISCO BCOS智能合约 144
6.4 智能合约综合分析对比 145
6.4.1 典型区块链平台特征对比 145
6.4.2 合约虚拟机对比 146
6.4.3 合约语言对比 147
本章小结 147
第7章 智能合约工程 149
7.1 智能合约工程的提出 149
7.1.1 智能合约工程思想的起源 149
7.1.2 智能合约工程定义 151
7.1.3 智能合约工程体系 152
7.2 智能合约法律化 155
7.2.1 计算法律学的启示 155
7.2.2 法律代码科技 157
7.3 形式化设计与验证方法 158
7.3.1 形式化方法 158
7.3.2 形式化验证 159
7.3.3 形式化描述语言与建模验证工具 162
7.3.4 自动代码生成技术 164
7.4 其他关键技术 166
7.4.1 智能合约开发方法 166
7.4.2 智能合约即服务 167
7.4.3 智能合约并行化 169
7.4.4 一致性测试 170
本章小结 171
第8章 智能合约开发过程方法 173
8.1 智能合约开发 173
8.1.1 智能合约的生命周期 173
8.1.2 智能合约开发中面临的问题 174
8.1.3 智能合约设计的基本原则 174
8.2 智能合约过程模型 175
8.2.1 形式审计瀑布模型 176
8.2.2 模组化螺旋开发模型 177
8.2.3 基于构件的领域开发模型 177
8.2.4 多源需求演绎开发模型 178
8.3 智能合约的柔性模组化设计模式 179
8.3.1 面向条件的智能合约编程模式 180
8.3.2 智能合约生命周期控制合约 185
8.3.3 链上链下协同合约模式 186
8.4 智能合约与运行环境的一致性测试 190
8.4.1 测试序列生成算法 191
8.4.2 基于SDL的TTCN一致性测试 191
8.4.3 测试用例和测试工具 192
本章小结 194
第9章 法律代码科技 195
9.1 智能合约的法律问题 195
9.1.1 代码即法律的趋势 195
9.1.2 代码的力量 197
9.1.3 法律和技术的融合 200
9.1.4 法律化的问题 202
9.2 基于合同模板的合约法律化 204
9.2.1 合约法律化探索 204
9.2.2 智能合约模板管理系统 205
9.2.3 基于模板的智能合约案例 207
9.3 法律代码化的路径探索 210
9.3.1 从计算法律学到法律代码科技 210
9.3.2 CommonAccord项目的启示 211
9.3.3 法律代码社区 215
本章小结 221
第10章 智能合约形式化设计与验证方法 222
10.1 智能合约形式化设计与验证方法概述 222
10.1.1 形式化设计与验证方法 222
10.1.2 智能合约形式化方法应用 226
10.2 基于Promela的智能合约形式化设计与验证方法 230
10.2.1 模型检测技术 230
10.2.2 Promela语言与SPIN模型工具 231
10.2.3 基于Promela的智能合约建模 233
10.2.4 远程购物场景案例 237
10.3 基于Event-B的智能合约形式化设计与验证方法 240
10.3.1 基于Event-B的智能合约形式化设计与验证方法概述 241
10.3.2 Event-B建模方法 242
10.3.3 智能合约蜜罐问题验证 244
本章小结 249
第11章 智能合约即服务 251
11.1 智能合约即服务原理 251
11.1.1 区块链即服务技术 251
11.1.2 智能合约即服务的架构 255
11.2 智能合约微服务化 257
11.2.1 智能合约微服务化的意义 257
11.2.2 智能合约微服务架构 259
11.2.3 智能合约微服务的封装 260
11.3 验证即服务 262
11.3.1 VaaS的重要意义 262
11.3.2 VaaS体系结构 264
11.3.3 VaaS验证服务 265
11.4 智能合约即服务的应用——雾计算 268
11.4.1 智能合约的雾计算架构 268
11.4.2 雾计算合约服务执行机制 270
11.4.3 云雾端智能合约交互策略 271
11.4.4 状态锁定上链协议 272
本章小结 274
第12章 智能合约并行化 275
12.1 智能合约并行化概述 275
12.1.1 并行化技术 275
12.1.2 智能合约的执行流程 276
12.1.3 智能合约并行化思想 278
12.2 智能合约并行化技术 280
12.2.1 数据库事务隔离技术 281
12.2.2 基于交易预分类的并行策略 282
12.2.3 基于STM的并行策略 283
12.3 智能合约并行化设计 284
12.3.1 智能合约并行化设计目标 284
12.3.2 支持回滚的虚拟机TVM设计 286
12.3.3 并行调度算法 288
本章小结 291
参考文献 292