区块链开发实战:基于JavaScript的公链与DApp开发 - (EPUB全文下载)
文件大小:0.41 mb。
文件格式:epub 格式。
书籍内容:
区块链开发实战:基于JavaScript的公链与DApp开发
第1章 自己动手实现一个区块链系统
1.1 从比特币到区块链
1.1.2 区块链
1.2 用300行代码开发一个区块链系统
1.2.1 区块和区块链的创建
1.2.2 工作量证明
1.2.3 提供和区块链进行交互的API
1.3 本章总结
第2章 DApp开发简介
2.1 智能合约
2.2 DApp简介
2.3 区块链应用开发平台简介
2.3.1 以太坊
2.3.2 Asch
2.3.3 Hyperledger
2.4 本章总结
第二部分 Asch源码解读
第3章 Asch——区块链应用开发平台
3.1 Asch的诞生和架构
3.2 开发工具
3.3 客户端的基本使用
3.4 如何基于Asch注册自己的资产
3.5 DApp案例简介
3.6 本章总结
第4章 Asch源码概览
4.1 Asch生态架构
4.2 asch库简要解读
4.2.1 数据结构
4.2.2 合约
4.2.3 接口
4.2.4 配置文件
4.3 asch-core库简要解读
4.4 Asch主链的启动流程
4.4.1 app.js
4.4.2 index.js
4.4.3 runtime.js
4.4.4 init.js
4.5 本章总结
第5章 账户与安全
5.1 区块链里的密码学
5.1.1 非对称加密
5.1.2 ECDSA算法
5.2 Asch的账户生成流程
5.2.1 BIP 39
5.2.2 ED25519
5.3 Asch的账户类型
5.4 本章总结
第6章 共识机制
6.1 拜占庭将军问题
6.2 区块链的共识算法
6.3 从DPoS到PBFT
6.3.1 DPoS算法
6.3.2 PBFT算法
6.4 共识算法源码解读
6.4.1 base/consensus.js
6.4.2 core/delegates.js
6.5 本章总结
第7章 区块
7.1 区块链的数据结构
7.2 区块的源码解读
7.2.1 base/block.js
7.2.2 core/blocks.js
7.3 本章总结
第8章 交易
8.1 Asch上的交易类型
8.2 交易的生命周期及其实现
8.2.1 创建交易
8.2.2 广播交易
8.2.3 验证交易
8.2.4 写入区块链
8.3 本章总结
第9章 跨链实现
9.1 跨链技术的提出与探索
9.2 比特币多签名交易的实现
9.2.1 m-of-n多签名交易的脚本
9.2.2 多签名脚本的执行
9.2.3 比特币里实现多签名交易
9.2.4 兑现多签名交易
9.3 Asch的跨链实现
9.3.1 网关提案的发起与投票
9.3.2 跨链账户的开通
9.3.3 对跨链网关的充值与提现
9.3.4 对跨链网关的提现
9.4 本章总结
第三部分 DApp开发实战
第10章 DApp设计与开发环境搭建
10.1 DApp整体设计
10.1.2 业务需求描述
10.1.3 角色
10.1.4 经济模型
10.1.5 代码设计
10.1.6 DApp的目录结构
10.2 开发环境搭建
10.2.1 Asch的网络类型
10.2.2 配置localnet
10.2.3 DApp Demo
10.3 本章总结
第11章 DApp合约开发与接口实现
11.1 DApp合约的开发
11.1.1 创建频道(createChannel)
11.1.2 更新频道(updateChannel)
11.1.3 发布文章(postArticle)
11.1.4 打赏文章(voteArticle)
11.1.5 抽奖设计
11.1.6 发布评论(postComment)
11.1.7 点赞评论(likeComment)
11.1.8 举报(report)
11.1.9 结算抽奖(calculatePrize)
11.1.10 领取奖励(getReward)
11.2 DApp接口的实现
11.2.1 频道接口
11.2.2 文章接口
11.2.3 投票接口
11.3 DApp的前端实现
11.3.1 登录
11.3.2 调用合约
11.3.3 调用接口
11.4 本章总结
第12章 DApp测试
12.1 测试准备
12.1.1 初始化函数
12.1.2 区块等待
12.1.3 账户生成与转账
12.2 合约流程测试
12.3 本章总结
第1章 自己动手实现一个区块链系统
比特币是近十年才诞生的新事物,想要进行区块链开发,需要先了解比特币以及区块链的发展背景。本章首先介绍比特币的诞生和发展,以及区块链技术的基本概念,包括加密哈希函数、数字签名、共识机制等,希望能够帮助读者快速了解区块链技术的知识背景。
“纸上得来终觉浅,绝知此事要躬行”。学习区块链的最好方式就是自己动手实现。有了基本概念之后,我们将一起从头开始实现一个简单的区块链系统,包括区块和区块链的构造、工作量证明算法的实现以及通过HTTP API的方式提供和区块链进行交互等。通过自己动手实现一个区块链系统,可以对区块链运行的基本原理有一个更深刻的理解。
1.1 从比特币到区块链
1.1.1 比特币的诞生和发展
长久以来,人们对货币的普遍认知是国家基于国家信用发行的、固定的、充当一般等价物的商品。从上个世纪开始,无论是经济学界还是极客圈都已经在探索数字货币的可行性。数字货币可以不基于国家来发行,完全诞生于虚拟世界。上个世纪末,陆续有人提出了多种数字货币的方案,比如Wei Dai的“b—money”以及Adam Back的“hashcash”等。他们在数字货币的发展道路上做出了突破性的贡献,但是他们提出的方案依然不够完美,最后都没有流行开来。
2008年11月。一个署名为中本聪的人在一个密码学的邮件组发表了一篇论文《Bitcoin:A Peer-to-Peer Electronic Cash System》(如图1-1所示),首次提出了比特币的概念。在这篇论文中,中本聪详细阐述了如何使用P2P网络以及加密算法来创 ............
以上为书籍内容预览,如需阅读全文内容请下载EPUB源文件,祝您阅读愉快。
书云 Open E-Library » 区块链开发实战:基于JavaScript的公链与DApp开发 - (EPUB全文下载)