区块链底层技术和应用开发的必备用书,中国三大区块链联盟的大伽联袂推荐
本书以比特币、以太坊、Fabric三种区块链的技术原理和实际操作为主要目标,全书具体内容如下。
第1章介绍比特币区块链,包括交易和交易链、区块和区块链、挖矿、矿池、脚本系统、合约应用案例等内容,向读者们介绍区块链基础知识。
第2章讲述区块链进阶技术,包括外带数据原理、Counterparty原理、挖矿算法解析、侧链技术,以及*新的IBLT、隔离见证、闪电网络等。
第3章的主要内容是区块链中使用的密码学基础,包括Hash函数、椭圆曲线密码体系、ECDSA签名、Schnorr数字签名和Bloom f?ilter算法等,向开发者介绍密码学相关算法。
第4章是比特币区块链的编译、代码剖析、建立私链及API开发等实操内容。
第5章介绍以太坊的技术原理,包括以太坊简介、账户管理、交易原理、智能合约等,还涉及搭建私有链,智能合约开发、部署和调用等实操过程。
第6章介绍了IBM开源的区块链底层技术平台Fabric的原理和实操,对Fabric系统架构、节点、验证总账、交易背书的基本流程进行了详尽独到的分析,对Fabric的私有链建立和配置、链上代码的开发过程进行了详细的描述,为开发者使用Fabric提供技术指导。
申屠青春
金链盟常务副秘书长,银链科技CEO,深圳金融标准委员会会员,深圳大学博士,高级工程师,深圳市高层次人才,深圳市政府采购评审专家。曾获2008年深圳科技创新奖、2009年广东省科技进步三等奖,获得发明专利授权4项,获2012年深圳发明奖。2012年创立银链科技,2013年开始研究区块链,2016年转向金融行业,并发起成立金链盟。
宋波
曾在某外企支付公司任职中国区软件开发部经理,负责ATM、EMV IC银行卡、Kiosk等产品,现在币信负责移动IM的开发工作,先后参与了钱包、算法交易、区块链、交易引擎、矿池及APP等产品的开发。
张鹏
博士,硕士生导师,现为信息工程学院讲师,中国密码学会会员。研究方向为密码学与信息安全。近年来主持或参与本领域的国家、省、市多项科技计划项目,申请国家发明专利十余项,在本领域核心学术刊物上发表文章20多篇,其中多篇被SCI、EI检索。
汪晓明
朝夕网络CEO,10年互联网技术产品经验,在跨境电商、大数据、区块链等领域有丰富的经验。作为区块链技术早期探索者,一直积极推动区块链技术在国内的传播和应用落地,已推出面向金融机构的区块链数字资产和供应链产品。同时发起了有行业影响力的区块链视频节目《明说》,持续影响着更多人参与到区块链技术的研究和推广中。
季宙栋
万达网络科技集团先进技术研究中心副总经理,万达区块链负责人,(工信部)中国区块链技术与产业发展论坛副秘书长,超级账本中国技术工作组委员。专注于互联网金融业务的创新及金融科技实践,参与了工信部区块链白皮书及相关标准编制工作,ISO/IEC TC307中国代表团成员,牵头工信部区块链开源社区工作。
左川民
先后在多家知名企业担任技术专家和高级架构师。2015年开始从事区块链技术的研究工作,曾负责积分区块链项目区块链架构设计,专注于区块链技术框架Fabric的技术研究,目前为深圳科协、金链盟等机构的Fabric技术框架培训讲师,同时作为中国首批区块链系统功能测试评审专家参与区块链系统的评审。
金融科技席卷全球,区块链成为耀眼的弄潮儿。当前传统金融业遇到挑战,效率和信任问题尤为突出,区块链技术重塑了信任机制,利用分布式账本系统解决了因信任缺失带来的低效问题,给予金融业很大的启发。本书深入浅出地讲述了区块链技术的基本原理和实际操作,金融科技从业者或能从中获得洞见和感悟。
大成基金首席经济学家姚余栋
区块链技术作为Fintech领域的热点技术,近几年来吸引了大量主流金融机构的关注,这种开源、开放的技术也进一步引发了技术生态的繁荣发展。一直以来,阐述区块链基本概念、应用前景和意义的书比较多,但是目前面向区块链技术应用开发的指导书相对缺乏,本书从经典的比特币区块链入手,同时介绍业界另外两大主流开源区块链平台以太坊和fabric上的应用开发,非常符合开发人员的需求。
恒生电子执行总裁范径武
方向性的重大变革,并不意味着当下的成功。作为萌芽成长期的新技术,区块链迫切需要“练好内功”,才能在现实中找到更多应用场景。本书由一批优秀的技术专家编著,正属于区块链创新中*为重要的“打地基”,相信能为监管者、研究者、行业人士带来颇有价值的阅读体验。
社科院院长助理杨涛
罗马不是一天建成的。区块链是一行一行代码垒出来的!我们看到了区块链作为第二代互联网的广泛应用前景,但这些应用前景得以实现的基础是分布式网络、分布式数据库、密码学等一系列技术体系。工欲善其事,必先利其器!诚意向大家推荐《区块链开发指南》这本书!
万向集团副总裁肖风
推荐序一 区块链的价值实现
推荐序二 区块链,推动金融代际跃升的新力量
推荐序三 区块链技术的现实和未来
前言
第1章 区块链基础 1
1.1 交易和交易链 2
1.1.1 比特币地址 3
1.1.2 交易的本质 3
1.1.3 输入和输出 5
1.1.4 交易类型 5
1.1.5 找零地址 6
1.2 区块和区块链 8
1.2.1 区块结构 8
1.2.2 创世块 10
1.2.3 区块链原理 13
1.3 挖矿、矿池 14
1.3.1 挖矿原理与区块的产生 14
1.3.2 挖矿难度 16
1.3.3 矿池原理与商业模式 18
1.4 脚本系统 19
1.4.1 脚本特点 20
1.4.2 脚本运行过程 24
1.4.3 脚本操作码解读 25
1.4.4 脚本执行过程 26
1.5 合约应用案例 27
1.5.1 合约应用原理 28
1.5.2 示例1:提供押金证明 29
1.5.3 示例2:担保和争端调解 30
1.5.4 示例3:保证合约 30
1.5.5 示例4:使用外部状态 32
1.5.6 示例5:跨链交易 34
1.5.7 示例6:支付证明合约 35
1.5.8 示例7:特定对象的快速调整(微)支付 36
1.5.9 示例8:多方去中心化彩票 37
参考资料 37
第2章 区块链进阶 39
2.1 外带数据 39
2.1.1 OP_RETURN外带数据 39
2.1.2 Multi-Signatures外带数据 40
2.2 Counterparty 40
2.2.1 Counterparty附生链的实现机制详解 41
2.2.2 发送 41
2.2.3 订单 42
2.2.4 发行 42
2.2.5 广播 43
2.2.6 赌约 43
2.3 挖矿算法解析 43
2.3.1 PoW挖矿算法及分析 43
2.3.2 PoS股权证明算法及分析 44
2.3.3 DPoS股份授权证明算法及分析 45
2.4 Sidechains 45
2.4.1 侧链背景 45
2.4.2 技术原理 46
2.5 最新比特币技术 49
2.5.1 IBLT 49
2.5.2 隔离见证 50
2.5.3 闪电网络 51
2.5.4 RSMC 51
2.5.5 HTLC 52
参考资料 53
第3章 密码学基础 54
3.1 Hash函数 54
3.1.1 技术原理 54
3.1.2 SHA-1算法 55
3.1.3 SHA-2算法 57
3.1.4 SHA-3算法 64
3.1.5 RIPEMD160算法 65
3.2 椭圆曲线密码 66
3.2.1 椭圆曲线方程 67
3.2.2 公钥和私钥的产生算法 68
3.3 ECDSA数字签名 69
3.4 Schnorr数字签名 70
3.4.1 技术思想 70
3.4.2 Schnorr与ECDSA的异同 70
3.5 Bloom f?ilter 71
3.5.1 技术原理 71
3.5.2 应用案例 72
第4章 比特币区块链开发 74
4.1 Bitcoin的编译过程 74
4.1.1 Ubuntu下的编译 74
4.1.2 Mac下的编译 75
4.1.3 Windows下的编译 76
4.2 代码剖析 77
4.2.1 主要模块 77
4.2.2 初始化和启动 79
4.2.3 P2P网络 80
4.2.4 交易和区块 89
4.2.5 脚本系统 89
4.2.6 挖矿 91
4.2.7 私钥 92
4.3 性能实战 93
4.3.1 建立私链 93
4.3.2 优化改进 96
4.4 API开发 97
4.4.1 命令行调用 97
4.4.2 RPC API调用接口 100
4.4.3 如何调用API进行开发 103
4.4.4 通过命令实现区块链的查询实例 103
第5章 以太坊智能合约开发 109
5.1 以太坊 109
5.1.1 以太坊的定义 109
5.1.2 下一代区块链 109
5.1.3 以太坊虚拟机 110
5.1.4 以太坊的工作原理 110
5.2 以太坊账户管理 111
5.2.1 账户 111
5.2.2 钥匙文件 112
5.2.3 创建账号 112
5.3 更新、备份、恢复账号 115
5.3.1 更新账号 115
5.3.2 账号备份和恢复 116
5.4 公有链、联盟链、私有链及网络配置 117
5.4.1 以太坊网络 117
5.4.2 公有链、私有链和联盟链 117
5.4.3 如何连接 118
5.4.4 更快地下载区块链 119
5.4.5 静态节点、信任节点和启动节点 120
5.5 搭建测试网络和私有链 121
5.5.1 Modern测试网 121
5.5.2 设置本地私有测试网 121
5.6 账户、交易核心概念及投注合约解析 125
5.6.1 外有账户与合约账户 125
5.6.2 什么是交易 126
5.6.3 什么是消息 126
5.6.4 什么是gas 126
5.6.5 估算交易成本 127
5.6.6 账户交互示例:投注合约 128
5.7 深入浅出智能合约 131
5.7.1 合约的定义 131
5.7.2 以太坊高级语言 131
5.7.3 写合约 131
5.7.4 编译合约 132
5.7.5 创建和部署合约 134
5.7.6 与合约互动 135
5.7.7 合约元数据 136
5.7.8 测试合约和交易 137
5.8 如何部署、调用智能合约 138
5.8.1 RPC 138
5.8.2 惯例 138
5.8.3 部署合约 139
5.8.4 和智能合约互动 141
5.8.5 Web3.js 142
5.8.6 控制台 143
5.8.7 查看合约与交易 143
5.9 智能合约案例实战 143
参考资料 146
第6章 Fabric原理和实操 147
6.1 超级账本项目背景 147
6.2 Fabric简介 149
6.3 系统架构 150
6.3.1 交易 150
6.3.2 区块链数据结构 150
6.3.3 节点 151
6.4 交易背书的基本流程 155
6.4.1 客户端创建交易后发送到它所选择的背书节点 156
6.4.2 背书节点模拟交易,然后生成背书签名 157
6.4.3 提交客户端获取交易的背书,通过排序服务广播 158
6.4.4 排序服务向所有节点投递交易消息 158
6.5 背书策略 159
6.5.1 背书策略规范 159
6.5.2 交易评估与背书策略 159
6.5.3 背书策略示例 160
6.6 验证总账(1.0版本之后的功能)和原始总账检查点(精简) 160
6.6.1 验证总账 160
6.6.2 原始总账检查点 161
6.7 Fabric V1.0开发者快速入门 163
6.7.1 前置条件和系统配置 163
6.7.2 下载源代码,创建Fabric网络 164
6.7.3 生成配置文件 164
6.7.4 使用Docker创建Fabric网络&创建/加入通道(账本) 165
6.7.5 示例合约执行过程解析 165
6.7.6 查看智能合约执行日志 166
6.7.7 手工创建和加入通道 166
6.7.8 使用命令行工具部署、调用、查询智能合约 167
6.7.9 开发环境故障排除 168
6.7.10 Fabric常用的Docker命令 168
6.8 智能合约开发 169
6.8.1 智能合约的定义 169
6.8.2 GO语言智能合约的开发和部署 169
6.8.3 Java智能合约的编写与部署 174
6.8.4 开发和提交代码 180
相关术语 182
附录A 国内区块链联盟介绍 184
附录B 《ChinaLedger面向中国资本市场应用的分布式总账白皮书》全文 201
前 言 Preface
比特币于2009年诞生,在很长一段时间内,人们只知比特币,不知区块链。从2015年开始,区块链像狂风一样席卷全球,倍受金融界和科技界的关注;2015年年底,区块链技术逐渐得到国内金融界和科技界的了解和认同。
区块链行业的蓬勃发展源于区块链有可能给各行业带来巨大的变革。麦肯锡在2016年年初发布报告,指出区块链技术将在未来五年内颠覆众多行业,特别是银行业和保险业;埃森哲预测到2025年,区块链技术每年可帮助全球8大投资银行节省80亿美元至120亿美元的基础设施成本。
全球金融巨头如IBM、高盛、摩根大通、花旗银行、中国平安、瑞银、德勤、毕马威等纷纷布局区块链;区块链初创公司在全球范围内如雨后春笋般崛起,发展速度惊人。从2012年以来,全球区块链创业领域共发生207起融资/并购事件,融资额高达14亿美元。
截至2017年3月,区块链在金融业的落地应用包括跨境支付、清算结算、互助保险、电子票据、商业银行抵押品、贸易金融、数字资产登记、银行间贸易、银行间对账与审计、监管与简化流程、积分、征信、外汇交易市场、证券清算和交割等。
区块链技术还能解决供应链管理、物联网、医疗、军事、政务等领域的很多问题。例如,Warmart试图用区块链保障我国市场的猪肉供应链安全;医疗领域中,生成基于区块链的、不可更改的电子病历、检验报告等用于存证,方便解决医疗纠纷;军事防卫和信息安全化中,区块链技术可实现信息防御平台的现代化;政务中,区块链可以简化文件归档与政府公共档案管理,并且可用来发放政府社保、养老金等社会福利及居民身份存证等。
由此可见,区块链将带来一场巨大的变革。正如德勤的报告中所预言的一样:“区块链是一场改变信任的革命,将重塑金融行业。”而它作为一项伟大的技术,不仅仅对于金融行业有革新性,对于其他行业,也会有深远的影响。
而今实施“区块链+”战略所面临的最大难题是:极度缺乏从业人员。很多金融机构和企事业单位对区块链还停留在概念阶段,其开发人员不懂区块链;大部分对区块链技术感兴趣的人,或者想要从事区块链行业的技术人员,未能系统地了解区块链的原理和发展,缺乏区块链开发者应有的知识和技术储备。
为了让更多的开发人员转变成区块链开发者,让更多现有的区块链开发人员系统地理解区块链技术,在区块链领导媒体巴比特的提议和牵头下,成立了《区块链开发指南》编写小组,开始构思、编写本书。
编写小组成员有:银链科技CEO申屠青春、深圳大学教授张鹏、币信资深程序员宋波、朝夕网络CEO汪晓明、万达网络区块链研发中心总经理季宙栋、华安保险系统架构师左川民、巴比特区块链资深工程师易长军。
本书内容由申屠青春负责组织,共包含六个章节,具体分工如下:申屠青春编写第1章和第2章的大部分内容,易长军对本部分内容亦有贡献,币信的樊渊文贡献了1.4.2节、1.4.3节和1.4.4节,比特大陆的潘志彪贡献了2.5.2节、2.5.3节和2.5.4节;张鹏编写第3章;宋波编写第4章;汪晓明编写第5章;季宙栋编写第6章的实操部分,左川民编写第6章的原理部分。此外,银链科技的林素兰参与第1章和第2章部分内容的编辑,万达网络的丛宏雷、张梦航参与第6章实操部分内容的编写。
本书以比特币、以太坊、Fabric三种区块链的技术原理和实际操作为主要目标,全书具体内容如下。
第1章介绍比特币区块链,包括交易和交易链、区块和区块链、挖矿、矿池、脚本系统、合约应用案例等内容,向读者们介绍区块链基础知识。
第2章讲述区块链进阶技术,包括外带数据原理、Counterparty原理、挖矿算法解析、侧链技术,以及最新的IBLT、隔离见证、闪电网络等。
第3章的主要内容是区块链中使用的密码学基础,包括Hash函数、椭圆曲线密码体系、ECDSA签名、Schnorr数字签名和Bloom f?ilter算法等,向开发者介绍密码学相关算法。
第4章是比特币区块链的编译、代码剖析、建立私链及API开发等实操内容。
第5章介绍以太坊的技术原理,包括以太坊简介、账户管理、交易原理、智能合约等,还涉及搭建私有链,智能合约开发、部署和调用等实操过程。
第6章介绍了IBM开源的区块链底层技术平台Fabric的原理和实操,对Fabric系统架构、节点、验证总账、交易背书的基本流程进行了详尽独到的分析,对Fabric的私有链建立和配置、链上代码的开发过程进行了详细的描述,为开发者使用Fabric提供技术指导。
最后,感谢编写小组各成员的配合和支持,使本书最终得以完本。感谢巴比特的李涛,时时督促此书的编写;感谢机械工业出版社华章公司的编辑杨绣国为本书顺利出版付出的努力。编写小组期待本书能够在区块链应用开发中给开发者以参考和启发。由于成书仓促,错误之处在所难免,恳请广大读者朋友批评指正。
申屠青春
2017年4月于深圳
这本《区块链开发指南》真的让我眼前一亮!作为一个对加密货币和分布式账本技术一直充满好奇,但又觉得门槛很高的普通读者,我一直希望能找到一本既能讲清楚基本原理,又能指导实际操作的书。这本书就做到了这一点,而且做得非常出色。作者用非常通俗易懂的语言,从区块链的起源讲到它的核心概念,比如去中心化、共识机制、加密算法等等。我尤其喜欢作者在解释“挖矿”和“智能合约”时使用的类比,一下子就把那些抽象的技术概念变得生动形象,仿佛在我脑海里构建了一个清晰的图景。而且,这本书并没有停留在理论层面,它花了相当大的篇幅介绍如何搭建开发环境、使用常见的开发工具,甚至还提供了不少实际的项目案例。我试着跟着书中的例子,在本地搭建了一个简单的区块链网络,并成功部署了一个智能合约,这种成就感是前所未有的。对于想要踏入区块链开发领域,但又缺乏方向的朋友来说,这绝对是一本不可多得的入门宝典。它不仅教会了“是什么”,更重要的是教会了“怎么做”,并且让我在做的过程中充满乐趣和动力。
评分《区块链开发指南》这本书,就像一位经验丰富的老司机,把我这个新手从茫茫的区块链知识海洋中,稳稳地带到了可以实际操作的岸边。我之前一直对区块链的概念有些模糊,以为它只是关于比特币的,但这本书彻底拓宽了我的视野。它不仅深入浅出地解释了区块链的核心原理,还着重介绍了智能合约的强大功能以及它如何赋能各种去中心化应用。书中对开发环境的搭建指导非常细致,从Node.js的安装到Truffle、Ganache等开发工具的使用,每一步都讲解得清清楚楚,让我这个之前从未接触过相关工具的人也能轻松上手。最让我兴奋的是,书中提供的代码示例非常实用,我跟着书中的例子,自己编写并部署了一个简单的投票智能合约,实现了去中心化的投票功能,这种亲手实现技术的能力提升,让我觉得非常有成就感。这本书对于想要理解区块链技术背后逻辑,并且希望能够动手实践的朋友来说,绝对是必不可少的一本好书。
评分对于我这种已经有一定编程基础,但对区块链技术知之甚少的人来说,《区块链开发指南》简直是雪中送炭!之前尝试阅读一些技术文档,总是被各种专业术语和晦涩的解释搞得一头雾水,直接劝退。这本书的出现,彻底改变了我的认知。它非常注重逻辑性和连贯性,从最基础的哈希函数、数字签名讲起,逐步深入到区块链的结构、交易流程,再到更复杂的共识算法(PoW、PoS等)以及不同区块链平台(如以太坊、Hyperledger Fabric)的特点和开发流程。作者在讲解时,不仅给出了详细的文字说明,还配有大量图示和代码示例,这对于理解技术细节至关重要。我特别喜欢书中关于智能合约开发的部分,详细讲解了Solidity语言的语法、数据类型、函数编写,以及如何处理合约的部署、调用和事件。通过书中提供的代码片段,我能够清晰地看到一个智能合约是如何工作的,以及如何在实际应用中发挥作用。这本书的价值在于,它提供了一个完整的学习路径,让我在最短的时间内建立起对区块链开发的系统性认知,并且掌握了进行实际开发所必备的技能。
评分说实话,一开始拿到《区块链开发指南》的时候,我并没有抱太高的期望,因为市面上关于区块链的书籍太多了,很多都只是浅尝辄止,或者过于理论化。但是,这本书给了我一个大大的惊喜!它以一种非常务实的态度,带领读者一步步走进区块链开发的真实世界。书中对于不同区块链平台的比较分析非常到位,从公有链到联盟链,再到私有链,各自的优缺点、适用场景都讲解得很清楚,这对我这种需要为公司选择合适区块链解决方案的人来说,非常有参考价值。我尤其欣赏作者在讲解去中心化应用(DApp)开发时,对于前端、后端以及合约交互的阐述,清晰地展现了DApp的整体架构和开发流程。书中提供的项目实战案例,涵盖了从简单的代币发行到更复杂的去中心化交易所的构建,这些案例的设计非常贴合实际需求,让我在学习过程中能够学以致用,并且能够快速理解如何在真实的业务场景中应用区块链技术。这本书不仅是技术手册,更是一本思维指南,它帮助我理清了思路,找到了切入点。
评分我是一名长期关注科技发展的爱好者,对《区块链开发指南》这本书的评价可以概括为“系统、深入、实操性强”。作者在书中并没有简单地罗列技术名词,而是构建了一个清晰的学习框架,从区块链的基本概念、历史发展,到各种主流的区块链技术栈,再到具体的开发实践,层层递进,逻辑严谨。对于加密学、网络通信、分布式系统等底层技术,作者也进行了必要的铺垫和解释,确保读者能够理解其在区块链中的作用。我个人特别看重书中对于不同共识机制的详细分析,以及它们在不同区块链项目中的应用,这让我对区块链的安全性、效率以及去中心化程度有了更深的理解。在开发部分,书中不仅介绍了Solidity语言,还提供了Web3.js等前端交互库的使用方法,以及如何构建完整的DApp。通过书中提供的案例,我能够将理论知识转化为实际的代码,并且看到了区块链技术在金融、供应链、身份验证等多个领域的应用前景。这本书的价值在于,它不仅教授了“如何开发”,更重要的是阐述了“为何要这样开发”,为读者提供了深入的思考和广阔的视野。
评分还行,以后还会关注这家。
评分读书日的时候买的,很划算的呀
评分还没看,但书是好书,开始看。哈哈哈。
评分不错哦,7刚才7非常7天7发v
评分很好很强大很好很强大很好很强大
评分很好的参考书!赞一个。
评分这不是不错不错,先看看再说吧,哈哈哈哈
评分区块链这么火,必须要给自己随时充充电。
评分还没用,还不错,还可以,还行
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.teaonline.club All Rights Reserved. 图书大百科 版权所有