重磅推荐
【内容简介】
第1-2章为基础和入门内容,着重是区块链入门介绍,并讲解区块链的一些基础概念。本书详细、全面地介绍了区块链的基础知识与概念,剖析了区块链的架构、底层实现细节以及加密技术,并配合行业应用案例,常见问题等,全面解读大热的区块链技术实现与应用。第3-10章,着重是区块链架构剖析,并讲解区块链的关键技术,包括密码学和共识算法;提供比特币开发指南以及以太坊智能合同开发指南;同时介绍HyperLedger,讨论区块链的常见问题和典型的解决方案。第11章,从架构变革的角度探讨IT发展的原动力,并提供对区块链对未来IT发展的一些展望。
【作者简介】
本书作者邹均:中关村区块链产业联盟专家、服务合约(Service Contract)方向博士,关注与实践区块链技术与应用。擅长云计算、大数据、软件定义存储。现为海纳云CTO,曾任IBM澳洲金融行业首席软件架构师、多个云计算公司高管,是融智北京高端外国专家。在国际会议期刊发表论文20余篇,获2015年澳中校友会ICT和媒体类别杰出校友奖,区块链相关论文获2016年IEEE ICWS佳博士论文奖。 张海宁:VMware中国研发中心云原生应用首席架构师,西蒙弗雷泽大学计算机科学硕士,多年软件全栈开发经验,Harbor企业级容器Registry开源项目负责人,Cloud Foundry中国社区早的技术布道师之一,国内早的iOS开发者。在VMware公司先后负责开源PaaS平台Cloud Foundry、大数据虚拟化、软件定义存储VSAN等领域的技术布道和解决方案推广。目前着重关注区块链、容器和云计算等领域的研究和开发工作。之前曾担任IBM软件工程师、Sun公司解决方案架构师等职务。 唐屹:广州大学教授、理学博士,专注于区块链安全与应用、网络信息安全、分布式计算等,为国外知名安全公司开发过椭圆曲线密码软件,获密码科技进步二等奖(省部级)。主持或参与完成多项自然科学基金与人才计划等重点项目。 李磊:合肥工业大学副教授,Macquarie大学博士。擅长数据挖掘、社会计算、智能计算。获2011年澳洲优博士论文提名,并多次担任IEEE国际会议的程序委员会委员及组织者。在社会计算和区块链等领域发表论文40余篇,被引用350余次。 刘天喜:深圳拓邦股份有限公司总经理助理,高级工程师、北京大学博士。在移动通信、集成电路、移动互联网、物联网等领域深耕多年,擅长技术产业研究、行业分析和战略规划,主导或参与中国工程院、中央网信办、工信部、国资委等十余项产业研究课题。发表学术论文10余篇。 陈晖:区块链PPk开源项目发起人和主要开发者、巴比特网站专栏作者与区块链技术版版主。对网络与通信技术有深入实践与研究,十余年的软件研发和项目管理经验。通过深度实践以比特币为代表的数字加密货币领域,率先提出“区块链 网络通信”将大化发挥区块链革命性价值的观点,并着力以开放开源项目的形式推动区块链与网络通信领域融合的技术创新和应用发展。 曲烈:Macquarie大学博士,曾任Macquarie大学研究员、助教。从事信息安全、密码学、区块链、服务计算以及信息系统等领域的研究。多次在国际知名会议和期刊发表论文,并受邀宣讲。 郑晓明:中国电信云计算分公司工程师、Macquarie大学博士,专注于云计算、云存储、监控系统、推荐系统、模式识别等,近期研究区块链相关技术。
【目录】
目录本书作者序一:什么是区块链序二:区块链——未来已来,只是尚未流行序三:区块链——连接虚拟与现实序四:区块链——转型之擎前言第1章 区块链和比特币初体验 / 11.1 区块链简介 / 11.1.1 区块链起源——比特币 / 11.1.2 区块链和区块链技术的涵义 / 21.1.3 区块链分类 / 21.1.4 区块链价值与应用 / 71.2 区块链体验 / 101.2.1 获取比特币的3种途径 / 111.2.2 通过交易所购买比特币 / 131.2.3 比特币钱包和地址 / 171.2.4 从交易平台提取比特币到钱包 / 201.2.5 比特币交易查询 / 221.3 本章小结 / 22第2章 区块链基础 / 242.1 区块链技术 / 242.1.1 基本概念 / 252.1.2 框架与特点 / 322.1.3 区块链运作的核心技术 / 352.1.4 区块链交易流程 / 412.2 以太坊 / 422.2.1 什么是以太坊 / 422.2.2 以太坊技术 / 432.2.3 以太坊智能合约 / 482.2.4 以太坊的去中心化应用 / 502.3 基于区块链的电子货币 / 512.3.1 元币平台 / 512.3.2 代币 / 522.3.3 货币的未来 / 582.4 本章小结 / 58第3章 区块链架构剖析 / 593.1 基本定义 / 593.2 区块链1.0架构:比特币区块链 / 613.2.1 比特币前端 / 633.2.2 比特币节点后端 / 663.3 区块链2.0架构:以太坊区块链 / 793.4 区块链3.0架构:超越货币、金融范围的区块链应用 / 873.5 互联链架构剖析 / 903.5.1 互联链背景 / 903.5.2 互联账本 / 913.5.3 互联账本协议组 / 923.5.4 互联账本各层协议关系 / 953.6 本章小结 / 96第4章 区块链中的密码学技术 / 974.1 哈希算法 / 974.1.1 哈希函数的性质与应用 / 994.1.2 哈希指针链 / 1014.2 Merkle树 / 1024.3 公钥密码算法 / 1034.3.1 椭圆曲线密码算法 / 1044.3.2 secp256k1椭圆曲线 / 1054.3.3 椭圆曲线签名与验证签名 / 1064.4 本章小结 / 107第5章 共识算法详解 / 1095.1 拜占庭容错技术 / 1095.1.1 拜占庭将军问题 / 1105.1.2 拜占庭容错系统 / 1125.1.3 实用的拜占庭容错系统 / 1125.1.4 Raft协议 / 1145.2 PoW机制 / 1165.3 PoS机制 / 1225.4 DPoS机制 / 1235.5 Ripple共识算法 / 1245.6 小蚁共识机制 / 1265.7 本章小结 / 127第6章 比特币应用开发指南 / 1296.1 以虚拟机方式搭建应用开发环境 / 1296.1.1 下载和安装Oracle VM VirtualBox / 1296.1.2 以虚拟机方式安装Ubuntu14.04 / 1336.1.3 安装Node.js开发环境 / 1386.1.4 安装Docker运行环境 / 1386.1.5 安装和运行比特币测试网络 / 1396.1.6 运行*个示例程序 / 1416.2 把握比特币“交易”数据结构 / 1456.2.1 了解比特币的“交易”数据结构 / 1456.2.2 交易记录的实例解析 / 1466.2.3 运行示例程序 / 1486.3 实战:多重签名交易 / 1536.3.1 将ODIN标识注册到区块链上的实例解析 / 1536.3.2 运行示例程序 / 1566.4 本章小结 / 157第7章 智能合约 / 1587.1 智能合约简介 / 1587.1.1 什么是智能合约 / 1587.1.2 智能合约的历史 / 1597.1.3 智能合约的优点和面临的风险 / 1607.2 以太坊智能合约详解 / 1617.2.1 以太坊上的账户 / 1617.2.2 以太币和Gas / 1667.2.3 合约和交易 / 1677.3 以太坊虚拟机 / 1707.4 实例:在以太坊上开发实施智能合约 / 1737.4.1 通过以太坊钱包部署智能合约 / 1737.4.2 通过控制台部署智能合约 / 1797.5 本章小结 / 183第8章 超级账本项目 / 1848.1 超级账本项目简介 / 1848.1.1 项目背景 / 1848.1.2 项目管理形式 / 1858.1.3 项目的生命周期管理 / 1868.1.4 项目发展状况 / 1878.2 Fabric项目 / 1878.2.1 项目概述 / 1878.2.2 应用场景 / 1888.2.3 项目架构 / 1898.2.4 部署方式 / 1918.2.5 交易的执行 / 1928.3 Sawtooth Lake项目 / 1938.3.1 项目概述 / 1948.3.2 项目架构 / 1948.4 本章小结 / 196第9章 区块链常见问题 / 1979.1 钱包的安全性问题 / 1979.2 加密货币的交易方式 / 1999.3 匿名性和隐私性 / 2019.4 矿池算力集中的问题 / 2039.5 51%攻击问题 / 2059.6 去中心化的自治组织 / 2079.6.1 去中心化的自治组织简介 / 2079.6.2 The DAO项目 / 2089.6.3 代码漏洞分析 / 2109.6.4 解决方案 / 2139.6.5 软分叉和硬分叉的影响 / 2159.6.6 重放攻击 / 2169.7 本章小结 / 219第10章 区块链应用案例分析 / 22010.1 闪电网络 / 22010.1.1 闪电网络简介 / 22010.1.2 支付通道的创建 / 22110.1.3 支付通道的更新 / 22310.1.4 支付网络的构建 / 22310.1.5 支付通道的关闭 / 22510.1.6 小结 / 22610.2 ODIN:用区块链来替代DNS / 22610.2.1
【前言】
前言为什么要写这本书1900年9月8日,一场4级强度的飓风横扫德克萨斯州的加尔维斯顿。这个位于墨西哥湾的岛城,靠近德克萨斯海岸,在灾难来临前拥有37?000人口和光明的经济前景。飓风猛烈攻击了这个毫无防备的低海拔城市,给该市带来了巨大的毁坏。飓风风速为每小时225千米,毁掉了3600座建筑,使占整个城市3/4的12个街区彻底消失,死亡人数为8000~10?000人。是迄今为止,美国历史上死亡人数*多的自然灾害。 而2016年8月2日在中国华南沿海登录的“妮妲”台风,风力14级,*风速每小时151.2千米,台风过境的广东、广西、湖南、贵州、云南5省(自治区),虽然也造成了重大经济损失,但在人员伤亡统计报告中,只有1人失踪。 这两次自然灾害的结果如此不同,归功于人类掌握了计算这个神奇工具。在妮妲形成过程中,美国、日本、中国气象监控部门就不断跟踪,通过监控数据,气象数学模型和强大的计算能力,对台风进行了准确的预报和预警。在台风到来前,有关部门做了积极准备,7.6万人得以紧急转移安置,使得损失得以降到*。 今天,IT已经渗透到各行各业,人们已经能近距离接触无人驾驶、机器人、虚拟现实(Virtual Reality)、增强现实(Augmented Reality)等先进技术,当人们在享受IT给人们生活带来的各种便利和好处的时候,也日益感受到来自不当使用科技所带来的挑战。例如,国内日益猖獗的电信诈骗,全球范围内黑客的攻击和安全勒索,以及未来基因技术和AI(人工智能)技术给人类所带来的伦理、生活和工作方面的全方位冲击,都使得有识之士开始思考如何应对科技发展所带来的风险。 一直以来,笔者对计算技术有一种既感恩又敬畏的情结。首先感恩我们的时代,计算技术的发展使我们避过很多前人无法避过的灾难;但高速发展的计算技术必然导致机器的智能超过人类自身,因此而产生的未来不确定性也使笔者的敬畏之心油然而生。 笔者也一直有一个预感,未来可能需要针对IT,特别是与业务结合紧密的云计算和智能设备建立监管、问责的机制。笔者的意思不完全是对从事IT或智能设备的人进行监管问责,甚至要考虑对智能设备进行自动问责。这个看似荒谬的想法促使笔者选择了云计算的问责机制(Accountability in Cloud Services)作为博士研究方向。 所谓云计算的问责机制(Accountability),指的是在云计算架构中,能建立一个自动化的问责机制。该机制包括形式化的标准服务合同定义,服务合同的发布,服务合同执行的监控,合同违约方的自动发现,违约方的罚则和执行,以及合同双方争议的仲裁。举个例子来说,今天公有云的提供商,都没有提供能让电脑理解的云服务合同。合同双方的责任、义务和权利没有精确的界定;云服务提供商的服务好坏,是否遵从合同,都没有自动化的方法去检测;服务故障责任也没有办法界定;出现争议也只能靠人工去解决。而云计算的问责机制,旨在建立一个自动化的体系来让电脑自动规范电脑的行为。 可想而知,这个研究课题非常有挑战。在博士研究的过程中,笔者也走了很多弯路,一直没有找到好的解决方法,直到三年前接触到比特币,突然意识到区块链技术是提供问责机制的*理想平台。这是因为区块链技术中的防伪、防篡改、交易可追溯、数字签名和智能合约技术提供了一个公正、可问责(Accountable)、自动执行的技术平台基础。 但是区块链目前还停留在概念炒作阶段,很多关注点还停留在金融应用,特别是虚拟货币方面的应用。笔者认为,区块链未来可能*适合作智能设备的“警察”,为物联网和智能设备的自治管理提供一个基础平台。区块链技术应该推广应用到除金融外的行业,因此萌生了写这本书的念头,作为博士研究工作的一个延续。 而写这本书的另一个原因,也是深感在学习区块链技术过程中碰到的参考资料不足的痛苦,希望能整理过去的学习所得,对区块链初学者有所帮助。 从2008年中本聪发表比特币白皮书算起,区块链技术才走过短短8年的时间。虽然区块链1.0、2.0和3.0的架构理念已经提出并得到一定程度上的认可,但区块链的技术发展仍然处于初级阶段,区块链的应用还刚起步,成熟的区块链应用除了比特币系统,还寥寥无几。在这种情况下写关于区块链的书籍,其实面临一个两难境况。一是区块链的技术变化快,像个移动的靶子;可供参考的资料又少,要准确把握一个快速变化的技术非常困难,而且受限于写笔者的水平,实践经验,写出来的书难免有很多错误,弄不好会贻笑大方。而另一方面,正因为变化快,资料少,广大区块链技术爱好者又渴望能找到一本对他们学习、理解、掌握区块链架构和技术有所帮助的书。 目前在市场上的区块链书籍大致分为两类:一类是以梅兰妮·斯万(Melanie Swan)的《区块链:新经济蓝图及导读》为代表的,谈区块链对整个宏观层面所带来的革命性影响的战略性书籍;一类是以安德鲁·安东普洛斯(Andreas M. Antonpulos)的《精通比特币》,以及普林斯顿大学以阿文·拿瑞延南(Arvind?Narayanan)为首编著的《比特币和密码学技术》为代表的专注于比特币的技术性书籍。这些书籍满足了目前市场上一部分对区块链在
返回顶部