精通区块链编程:加密货币原理、方法和应用开发(原书第2版)
Andreas M. Antonopoulos
郭理靖, 李国鹏, 李卓 译
出版时间:2019年06月
页数:323
伴随着金融领域中的技术变革,本书将带领你走进看似复杂的比特币世界,为你参与到数字货币互联网提供必要的知识。无论你是正在构建下一个杀手级应用,还是在投资一个初创企业,或者只是对这种技术好奇,这本全面修订和扩展的第2版都是必不可少的。
比特币是第一个成功去中心化的数字货币,虽然仍处在早期的发展阶段,却已经孕育了全球数万亿美元规模的经济效应。这种经济活动对任何有相关知识和热情的人都是开放的。本书提供了必要的知识,你只需要付出热情。
第2版主要内容:
● 比特币及其所蕴含的区块链技术。
● 比特币及加密货币的技术基础。
● 比特币去中心化的网络、点对点架构、交易生命周期和安全原则的细节。
● 新的进展,如隔离见证、支付通道和闪电网络。
● 深入挖掘区块链的应用,包括如何通过结合区块链构建上层应用。
● 使用故事、类比、示例和代码片段等阐述关键的技术概念。
  1. 前言
  2. 第1章 比特币介绍
  3. 1.1 比特币是什么
  4. 1.2 比特币历史
  5. 1.3 比特币的使用、用户及用户场景
  6. 1.4 入门
  7. 1.4.1 选择比特币钱包
  8. 1.4.2 快速入门
  9. 1.4.3 获取比特币
  10. 1.4.4 查询比特币当前价格
  11. 1.4.5 发送和接收比特币
  12. 第2章 比特币的工作原理
  13. 2.1 交易、区块、挖矿和区块链
  14. 2.1.1 比特币概述
  15. 2.1.2 购买一杯咖啡
  16. 2.2 比特币交易
  17. 2.2.1 交易输入和输出
  18. 2.2.2 交易链
  19. 2.2.3 找零
  20. 2.2.4 常见的交易形式
  21. 2.3 交易的构建
  22. 2.3.1 获取正确的输入
  23. 2.3.2 创建交易输出
  24. 2.3.3 将交易加入账簿
  25. 2.4 比特币挖矿
  26. 2.5 在区块中挖掘交易
  27. 2.6 消费交易
  28. 第3章 比特币核心客户端:参考实现
  29. 3.1 比特币开发环境
  30. 3.2 从源码编译比特币核心
  31. 3.2.1 选择比特币核心版本
  32. 3.2.2 配置比特币核心生成
  33. 3.2.3 生成比特币核心可执行文件
  34. 3.3 运行比特币核心节点
  35. 3.3.1 运行比特币核心
  36. 3.3.2 配置比特币核心节点
  37. 3.4 比特币核心客户端应用程序编程接口(API)
  38. 3.4.1 获得比特币核心客户端状态信息
  39. 3.4.2 探究和解码交易
  40. 3.4.3 探究区块
  41. 3.4.4 使用比特币核心的编程接口
  42. 3.5 其他替代客户端、库和工具包
  43. 3.5.1 C/C++类
  44. 3.5.2 类
  45. 3.5.3 Java类
  46. 3.5.4 Python类
  47. 3.5.5 Ruby类
  48. 3.5.6 Go类
  49. 3.5.7 Rust类
  50. 3.5.8 C#类
  51. 3.5.9 Objective-C类
  52. 第4章 密钥和地址
  53. 4.1 简介
  54. 4.1.1 公钥密码学和加密货币
  55. 4.1.2 私钥和公钥
  56. 4.1.3 私钥
  57. 4.1.4 公钥
  58. 4.1.5 椭圆曲线密码学
  59. 4.1.6 创建公钥
  60. 4.2 比特币地址
  61. 4.2.1 Base58和Base58Check编码
  62. 4.2.2 密钥的格式
  63. 4.3 用Python实现密钥和比特币地址
  64. 4.4 密钥和地址
  65. 4.4.1 加密私钥(BIP-38)
  66. 4.4.2 P2SH和多重签名地址
  67. 4.4.3 靓号地址
  68. 4.4.4 纸钱包
  69. 第5章 钱包
  70. 5.1 钱包技术概述
  71. 5.1.1 非确定性(随机)钱包
  72. 5.1.2 确定性(种子)钱包
  73. 5.1.3 分层确定性钱包(BIP-32/BIP-44)
  74. 5.1.4 种子和助记词(BIP-39)
  75. 5.1.5 钱包最佳实践
  76. 5.1.6 使用比特币钱包
  77. 5.2 钱包技术细节
  78. 5.2.1 助记词编码标准(BIP-39)
  79. 5.2.2 从种子中创造HD钱包
  80. 5.2.3 在网店中使用扩展公钥
  81. 第6章 交易
  82. 6.1 简介
  83. 6.2 交易细节
  84. 6.3 交易的输出和输入
  85. 6.3.1 交易输出
  86. 6.3.2 交易输入
  87. 6.3.3 交易费
  88. 6.3.4 把交易费加到交易中
  89. 6.4 交易脚本和脚本语言
  90. 6.4.1 非图灵完备性
  91. 6.4.2 无状态验证
  92. 6.4.3 脚本构建(锁定与解锁)
  93. 6.4.4 P2PKH
  94. 6.5 数字签名(ECDSA)
  95. 6.5.1 数字签名如何工作
  96. 6.5.2 验证签名
  97. 6.5.3 签名散列类型(SIGHASH)
  98. 6.5.4 ECDSA数学
  99. 6.5.5 随机性在签名中的重要性
  100. 6.6 比特币地址、余额和其他摘要
  101. 第7章 交易及脚本
  102. 7.1 简介
  103. 7.2 多重签名
  104. 7.3 P2SH
  105. 7.3.1 P2SH地址
  106. 7.3.2 P2SH的优点
  107. 7.3.3 赎回脚本和标准确认
  108. 7.4 数据记录输出(RETURN操作符)
  109. 7.5 时间锁
  110. 7.5.1 交易锁定时间
  111. 7.5.2 检查锁定时间验证
  112. 7.5.3 相对时间锁
  113. 7.5.4 带nSequence的相对时间锁
  114. 7.5.5 带CSV的相对时间锁
  115. 7.5.6 过去中位时间
  116. 7.5.7 针对费用狙击的时间锁
  117. 7.6 具有条件控制的脚本(条件语句)
  118. 7.6.1 带有VERIFY操作码的条件语句
  119. 7.6.2 在脚本中使用流控制
  120. 7.7 复杂的脚本示例
  121. 第8章 比特币网络
  122. 8.1 点对点网络架构
  123. 8.2 节点类型和角色
  124. 8.3 扩展比特币网络
  125. 8.4 比特币中继网络
  126. 8.5 网络发现
  127. 8.6 全节点
  128. 8.7 交换“库存清单”
  129. 8.8 简易支付验证(SPV)节点
  130. 8.9 Bloom过滤器
  131. 8.10 SPV节点如何使用Bloom过滤器
  132. 8.11 SPV节点和隐私
  133. 8.12 加密与认证连接
  134. 8.12.1 Tor传输
  135. 8.12.2 P2P认证和加密
  136. 8.13 交易池
  137. 第9章 区块链
  138. 9.1 简介
  139. 9.2 区块结构
  140. 9.3 区块头
  141. 9.4 区块标识符:区块头散列值和区块高度
  142. 9.5 创世区块
  143. 9.6 链接区块链中的区块
  144. 9.7 树
  145. 9.8 树和简单支付验证
  146. 9.9 比特币的测试链
  147. 9.9.1 testnet—比特币的试验场
  148. 9.9.2 segnet—隔离见证测试网
  149. 9.9.3 regtest—本地区块链
  150. 9.10 使用测试区块链进行开发
  151. 第10章 挖矿和共识
  152. 10.1 简介
  153. 10.2 去中心化共识
  154. 10.3 交易的独立校验
  155. 10.4 挖矿节点
  156. 10.5 打包交易至区块
  157. 10.5.1 创币交易
  158. 10.5.2 创币奖励与矿工费
  159. 10.5.3 创币交易的结构
  160. 10.5.4 创币交易数据
  161. 10.6 构造区块头
  162. 10.7 挖掘区块
  163. 10.7.1 工作量证明算法
  164. 10.7.2 难度目标值表示
  165. 10.7.3 重定目标实现调整难度
  166. 10.8 成功挖出区块
  167. 10.9 验证新区块
  168. 10.10 区块链的组装与选择
  169. 10.11 挖矿和算力竞争
  170. 10.11.1 随机数升位方案
  171. 10.11.2 矿池
  172. 10.12 共识攻击
  173. 10.13 改变共识规则
  174. 10.13.1 硬分叉
  175. 10.13.2 硬分叉:软件、网络、挖矿和链
  176. 10.13.3 分离矿工和难度
  177. 10.13.4 有争议的硬分叉
  178. 10.13.5 软分叉
  179. 10.13.6 对软分叉的批评
  180. 10.14 使用区块版本发出软分叉信令
  181. 10.14.1 BIP-34信令和激活
  182. 10.14.2 BIP-9信令和激活
  183. 10.15 共识软件开发
  184. 第11章 比特币的安全
  185. 11.1 安全原则
  186. 11.1.2 安全地开发比特币系统
  187. 11.1.3 信任根
  188. 11.2 用户安全最佳实践
  189. 11.2.1 比特币物理存储
  190. 11.2.2 硬件钱包
  191. 11.2.3 平衡风险
  192. 11.2.4 分散风险
  193. 11.2.5 多重签名和治理
  194. 11.2.6 生存能力
  195. 11.3 结论
  196. 第12章 比特币应用
  197. 12.1 简介
  198. 12.2 基础模块(要素)
  199. 12.3 源于基础模块的应用
  200. 12.4 染色币
  201. 12.4.1 使用染色币
  202. 12.4.2 发行染色币
  203. 12.4.3 染色币交易
  204. 12.5 合约币
  205. 12.6 支付通道和状态通道
  206. 12.6.1 状态通道基本概念和术语
  207. 12.6.2 简单支付通道示例
  208. 12.6.3 制造无须信任的通道
  209. 12.6.4 非对称可撤销承诺
  210. 12.6.5 散列时间锁合约
  211. 12.7 路由支付通道(闪电网络)
  212. 12.7.1 闪电网络示例
  213. 12.7.2 闪电网络传输和路由
  214. 12.7.3 闪电网络优势
  215. 12.8 结论
  216. 附录A 比特币白皮书
  217. 附录B 交易脚本语言操作符、常量和符号
  218. 附录C 比特币改进建议
  219. 附录D 隔离见证
  220. 附录E Bitcore
  221. 附录F pycoin库、实用秘钥及交易程序
  222. 附录G 比特币浏览器命令
书名:精通区块链编程:加密货币原理、方法和应用开发(原书第2版)
译者:郭理靖, 李国鹏, 李卓 译
国内出版社:机械工业出版社
出版时间:2019年06月
页数:323
书号:978-7-111-62605-3
原版书书名:Mastering Bitcoin, 2nd Edition
原版书出版商:O'Reilly Media
Andreas M. Antonopoulos
 
Andreas M. Antonopoulos是备受好评的畅销书作家、演讲家和教育家,也是世界上最重要的比特币和开放式区块链专家之一。Andreas善于化繁为简,让普通人理解深奥的技术。
 
 
购买选项
定价:119.00元
书号:978-7-111-62605-3
出版社:机械工业出版社