Giter Club home page Giter Club logo

hubwiz01 / tendermint Goto Github PK

View Code? Open in Web Editor NEW

This project forked from jimilai/tendermint

0.0 1.0 0.0 5 KB

本课程适合用开源区块链tendermint的工程师,内容即包括tendermint应用开发模型中的核心概念,例如拜占庭容错、共识算法、ABCI接口、默克尔树、多版本状态库等,也包括代币发行等丰富的实操代码,是go语言工程师快速入门区块链开发的最佳选择。

Home Page: http://xc.hubwiz.com/course/5bdec63ac02e6b6a59171df3?affid=1111github

Go 60.59% Shell 39.41%

tendermint's Introduction

Tendermint

本课程适合希望使用tendermint进行区块链开发的工程师,课程内容即包括tendermint应用开发模型中的核心概念,例如ABCI接口、默克尔树、多版本状态库等,也包括代币发行等丰富的实操代码,是go语言工程师快速入门区块链开发的最佳选择。

http://xc.hubwiz.com/course/5bdec63ac02e6b6a59171df3

  • 一、概述
  • 1.1 tendermint简介
  • 1.2 tendermint的共识算法
  • 1.3 tendermint vs. 以太坊
  • 1.4 课程内容概述
  • 二、初识tendermint
  • 2.1 概述
  • 2.2 节点初始化
  • 2.3 节点启动与停止
  • 2.4 编写最小化应用
  • 2.5 RPC开发接口
  • 三、状态机与ABCI
  • 3.1 状态机
  • 3.2 状态机复制
  • 3.3ABCI接口概述
  • 3.4 交易检查:CheckTx
  • 3.5 交易执行:DeliverTx
  • 3.6 状态初始化:InitChain
  • 3.7 应用状态查询:Query
  • 3.8 应用状态的历史
  • 3.9 应用/区块链握手机制
  • 3.10 应用状态的哈希值
  • 3.11 应用状态持久化
  • 四、基于非对称加密的身份识别机制
  • 4.1 身份识别机制概述
  • 4.2 经典算法secp256k1
  • 4.3 下一代算法ed25519
  • 4.4 数据签名与认证
  • 五、案例:发行自己的代币
  • 5.1 代币发行概述
  • 5.2 状态机实现
  • 5.3 简单钱包实现
  • 5.4 交易结构设计与实现
  • 5.5 交易的编解码处理
  • 5.6 ABCI协议实现
  • 5.7 RPC客户端开发
  • 六、代币案例:使用默克尔树
  • 6.1 默克尔树概述
  • 6.2 计算默克尔哈希
  • 6.3 状态的默克尔证据
  • 6.4 升级代币状态机
  • 七、代币案例:使用多版本状态库
  • 7.1 平衡二叉树简介
  • 7.2 多版本状态库 = avl + merkle
  • 7.3 使用多版本状态库
  • 7.4 封装iavl操作
  • 7.5 升级代币状态机
  • 八、多节点组网
  • 8.1 多节点组网概述
  • 8.2 实现abci接口
  • 8.3 命令行封装:cobra子命令
  • 8.4 实现节点提供器
  • 8.5 单节点实验
  • 8.6 添加观察节点
  • 8.7 添加验证节点
  • 8.8 拜占庭容错实验

http://xc.hubwiz.com/course/5bdec63ac02e6b6a59171df3

tendermint's People

Contributors

jimilai avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.