基本信息

编辑推荐
---------------------------区块链开发实战:基于JavaScript的公链与DApp开发---------------------------
零基础学习区块链的应用开发。
从极简区块链系统构建,到区块链平台源码分析,再到完整DApp开发,涵盖DApp的设计思路、开发流程与测试方法等。
---------------------------区块链开发实战:Hyperledger Fabric关键技术与案例分析---------------------------
Hyperledger代码贡献者撰写,Hyperledger亚太区副总裁Julian Goldon、ChinaLedger技术委员会主任白硕以及多个区块链公司的CEO、CTO、科学家联袂推荐
零基础掌握Hyperledger Fabric的关键技术、工作原理和应用开发方法,多个案例实战并附项目源代码
内容简介
计算机书籍
---------------------------区块链开发实战:基于JavaScript的公链与DApp开发---------------------------
随着区块链技术的火热以及区块链应用开发平台的出现,越来越多的普通开发者都需要掌握区块链应用的开发,本书可带领读者快速入门区块链开发。
本书由ASCH 核心开发工程师撰写,深入浅出地介绍了区块链应用的开发方法与技巧,任何有JavaScript基础的开发人员都可以掌握,分为三大部分,第一部分“区块链”介绍区块链技术简史、商业价值、核心概念、账户模型、主流区块链项目、区块链领域的新技术,并带领读者用300行代码实现一个区块链系统。第二部分“ASCH 源码解读”详细介绍ASCH的技术架构、ASCH启动过程、加密和验证方式、P2P技术、交易流程、区块链实现、DPOS+PBFT、侧链技术实现等。第三部分“去中心化应用(DApp)开发”介绍一个综合DApp案例开发,包括准备工作、DApp 开发工具、搭建开发环境、设计数据结构、实现业务逻辑、引入主链资产、如何对 DApp 进行测试、发布方式等。
---------------------------区块链开发实战:Hyperledger Fabric关键技术与案例分析---------------------------
本书以HyperledgerFabric和比特币这两个典型区块链技术平台的核心技术、开发方法和相关的项目案例为核心内容,还提供了大量的命令脚本和代码示例供读者参考,力图使读者在短的时间内掌握这两个平台的使用方法。本书首先从基本认识的角度对区块链进行了宏观上的介绍,然后讲解了HyperledgerFabric的核心技术、原理、开发方法,以及多个项目案例,后讲解了比特币的原理、运行方式、重要模块和编程接口等内容,环环相扣,结构紧密,体系严谨。
作译者
---------------------------区块链开发实战:Hyperledger Fabric关键技术与案例分析---------------------------
冯翔、刘涛、吴寿鹤、周广益 编著:作者介绍
冯翔
资深区块链技术专家, IONChain(离子链)CTO,上海旺链科技区块链研究院负责人,Hyperledger核心项目核心代码开发者。中国区块链技术的早期探索者和传播者,创立了有广泛影响力的区块链技术社区“区块链兄弟”。已经参与过多个基于区块链技术的落地项目,现在阶段主要致力于区块链技术和传统行业的融合,尤其关注区块链技术和物联网技术的结合。
刘涛
上海旺链信息科技有限公司CEO,IONChain(离子链)创始人,致力于结合中国本土情况的区块链研究开发,现为复旦大学区块链研究生课程讲师。前埃森哲高级总监,在高科技制造、汽车、金融行业有超过15年的业务咨询和技术架构经验,曾担任华为、Alcatel-lucent、上汽通用、平安、中国移动高端外部顾问。
吴寿鹤
资深区块链技术专家, IONChain(离子链)首席架构师,HyperLedger核心项目开发人员,同时对以太坊相关技术有深入研究。是国内区块链技术领域的早期实践者和布道者,一直积极推动区块链技术的传播和应用落地,是国内知名区块链技术社区“区块链兄弟”的联合创始人,目前从事基于物联网的区块链底层基础平台的开发。
个人主页:http://gcc2ge.github.io
周广益
上海指旺金科CEO,中国区块链技术的早期探索者,36Kr、未央网、共享财经等媒体特约作家,现为复旦大学软件学院特聘讲师。
目录
---------------------------区块链开发实战:基于JavaScript的公链与DApp开发---------------------------
序言
前言
第一部分 区块链开发概述
第1章 自己动手实现一个区块链系统3
1.1 从比特币到区块链3
1.1.1 比特币的诞生和发展3
1.1.2 区块链5
1.2 用300 行代码开发一个区块链系统13
1.2.1 区块和区块链的创建13
1.2.2 工作量证明19
1.2.3 提供和区块链进行交互的API22
1.3 本章总结30
第2章 DApp开发简介32
2.1 智能合约32
前言
---------------------------区块链开发实战:基于JavaScript的公链与DApp开发---------------------------
我至今清晰地记得,在2016年5月的一个傍晚,吴延毅、单青峰还有我在北航大运村一起吃烧烤的场景。单青峰满眼放光地谈起他最近在做的项目Asch(阿希),向我们解释了比特币和区块链的很多技术原理。我和吴延毅当时听得也很兴奋,预感这项技术未来肯定有很大的前景。
在那次聚餐之后,我开始在网上寻找相关的技术资料认真钻研,终于理解了什么是加密算法、工作量证明、UTXO等区块链的技术概念,内心对这项技术的热爱也与日俱增。后来慢慢开始以社区成员身份参与到Asch的相关工作中来,并且最终入职Asch,成为一名全职的区块链开发工程师。
Asch 始于2016年年初,当时单青峰在思考如何把区块链技术应用到更广泛的场景中,确定好了一些现在看来依然比较前沿的解决方案。比如,考虑到开发成本,选择了JavaScript语言,数据库方面选择了关系数据库;出于链的安全性和性能等方面的考虑,采用了侧链技术,每个应用都是一条独立的链。应用既可以保持自己的独立性和灵活性,又能够享受Asch这个生态带来的便利。后来,Asch 又率先在跨链方面进行了探索,并且在国内非常早地提出了跨链的解决方案并实现了跨链。
目前,区块链技术依然在快速地迭代。Asch 作为国内为数不多并且起步较早的专注于技术创新的项目,这一路上的实践经验是值得总结的,因此有了本书。希望本书能够被更多的同行看到,一起交流和促进区块链技术在国内的发展与应用。
本书用三个部分讲解了区块链技术以及Asch的相关实践,第一部分讲解了区块链技术的基本概念,并用300行代码实现了一个最小的、可运行的区块链;第二部分分析Asch的源码,讲解Asch的实现原理;第三部分介绍了基于Asch的侧链技术的DApp开发实战。全书共有12章,其中梁培利完成了第1、2、3、4、5、9章的创作,吴延毅完成了第6、7、8章的创作,曹帅完成了第10、11、12章的创作。下面是各章的内容介绍。
第一部分“区块链开发概述”
第1章“自己动手实现一个区块链系统”这一章讲解了如何使用300行代码实现一个简单的区块链系统,内容包括区块和区块链的构造、工作量证明算法的实现以及通过 HTTP API 的方式提供与区块链的交互等。通过这章的实践,读者将会对区块链有一个基本的了解。
第2章“DApp开发简介”这一章介绍了智能合约的基本概念以及案例,然后解释了DApp的概念及特点。通过这章,读者可以对智能合约和DApp有一个初步的认识。
第二部分“Asch源码解读”
第3章“Asch—区块链应用开发平台”Asch 是一个在2016年就发布主网的区块链应用开发平台,目的在于降低区块链技术应用的门槛,帮助企业和开发者快速地构建基于区块链的分布式应用(DApp),只要开发者会使用JavaScript以及有一定的开发经验。该章将会从Asch的发展讲起,一直到 Asch 的架构解析。希望读者在读完这章以后可以对 Asch 有一个清晰的了解。
第4章“Asch源码概览”对于区块链项目来说,核心代码开源是基本的要求,这种情况也为我们提供了大量的学习资源。阅读项目源码是深入了解一个项目的最好方式。从这章开始,我们将会一起从源码级别探索 Asch 的实现与运行机制。这章的主要内容为源码概览以及启动流程简介。
第5章“账户与安全”区块链的正常运转离不开密码学的支持。正是因为利用了安全的加密算法,区块链上的每一笔交易和区块的生产才有了安全的保证。这章首先探索区块链用到的基本算法,然后基于Asch的源码来解释Asch 里账户的生成与运用。
第6章“共识机制”共识机制是一个区块链系统的灵魂。但是为什么区块链系统需要共识机制呢?这一章将从拜占庭将军问题谈起,一直谈到目前比较流行的 DPoS+PBFT算法,来看看共识机制解决了哪些问题,是如何解决的,最后简单介绍了 Asch 的共识机制实现。
第7章“区块”区块是组成区块链的基本单位。一个区块的产生、打包交易、验证以及如何添加到区块链上往往和这个区块链系统采用的共识机制有关。这章主要介绍阿希链上区块的锻造、验证以及添加区块到链上等流程。
序言
---------------------------区块链开发实战:基于JavaScript的公链与DApp开发---------------------------
2018年春节期间的“三点钟无眠区块链”微信群,让“区块链”这个非常生硬的技术名词走进了大众的视野。区块链技术以密码学、P2P技术、共识机制为技术基础,结合激励模型(指公有链)构建了一个开放可信的运行环境,被誉为“下一代互联网”和“价值互联网”。
区块链技术脱胎于比特币,起初应用于加密数字货币。以太坊项目采用区块链技术构建了一个智能合约平台,大家看到了区块链技术在广泛领域中应用的可能。自2017年以来,区块链技术热度持续升温。新的区块链项目呈现暴发式的增长。几乎每天都会有各种新的区块链项目出现,传统互联网巨头们也纷纷参与这一领域。尤其是最近Facebook发布的Libra项目更是引发了全球金融界和技术界的瞩目。可以预见,区块链将在金融、保险等重要的商业场景中发挥巨大的作用。
Asch(阿希链)是国内早期的区块链项目之一,也是多链架构和跨链技术的早期探索者和布道者。Asch以推动区块链技术的应用落地与DApp普及为愿景,据有安全、高效和灵活低成本的特点。Asch采用JavaScript为开发语言,以Node.js为运行环境。JavaScript是近些年来发展最快、拥有最大社区的开发语言。尤其是Node.js的出现让JavaScript从前端专属,变成了一个的全栈语言,使得JavaScript开发后端服务成为可能。Node.js是一个基于V8引擎的JavaScript运行时的平台,可轻松构建快速、可扩展的网络应用程序。 Node.js使用事件驱动的非阻塞I / O模型,使其轻量级和高效,非常适合在分布式设备上运行的数据密集型实时应用程序。Node.js平台的特点和区块链系统的匹配度很高。而JavaScript拥有易学易用的特点。拥有非常大的开发群体,这也是Asch相对与使用其他语言的DApp开发平台非常重要的先天优势。
本书的作者团队包含了Asch跨链技术的核心开发者、Asch DApp开发者和Asch技术社区的爱好者。本书从最基础的比特币的原理开始,详细分析了Asch的技术架构和实现细节。最后用完整的案例介绍了Asch侧链DApp的开发方式。内容完整翔实,描述深入浅出。尤其适合热爱JavaScript技术的区块链技术爱好者和开发者。
钱汉涛,阿希链CTO
2019年7月于北京
媒体评论
---------------------------区块链开发实战:基于JavaScript的公链与DApp开发---------------------------
阿希链从创立之初就秉持着降低区块链应用开发门槛的理念,在侧链和跨链方面都有很多的探索,本书就是对阿希链进行探索的一个阶段性总结。通过本书,你不仅可以学习区块链的原理,也可以掌握基于阿希链的DApp开发。希望本书能够对你在实际业务中应用区块链带来帮助。
—— 单青峰,阿希链创始人
本书从一个只有300行代码的小型区块链系统实现入手,带领读者快速入门区块链开发。然后由浅入深地讲解区块链的基本原理,以及DApp开发的技术与案例,只要懂得JavaScript 就可以开发自己的DApp。
主要内容包括:
自己动手实现一个区块链系统。
智能合约的概念及案例。
区块链使用的加密算法,以及共识机制原理。
一个区块的产生、打包交易、验证,以及如何添加到链上等流程。
区块链中交易的核心流程。
跨链实现原理,以及Asch的跨链实现方法。
DApp的开发思路,以及合约、接口、前端的实现等。
---------------------------区块链开发实战:Hyperledger Fabric关键技术与案例分析---------------------------