本视频目前正在筹备中,争取快速推出哈!推出此视频教程,是因为Fabric知识体系较为庞大,而新手小白在学习过程中是一个知识点一个知识点地按部就班前进的,这就会在学习过程中给他们造成一定的前期困扰。本人在学习实践Fabric过程中就感觉自己看书看官文慢慢摸索的效率非常低下,经常一脸懵逼,从而造成前进的心理压力,当时很渴望有熟悉Fabric的人指点一二。
为了避免同样的情况发生在其他小伙伴身上,遂尝试根据自己掌握的Fabric知识进行梳理推出一套方便新手入门的教学视频。一来可以帮助小伙伴提高学习效率,二来,也算是我为推进区块链快速发展贡献绵薄智力支持吧,哈哈,吾之荣幸!
不过由于Fabric目前代码更新非常频繁,版本迭代也同时进行,加上知识体系庞大,所以难免会出现本人疏漏错误的地方,恳请读者发现后指正!
我的分享宗旨:以最通俗的话讲明白复杂技术
课程介绍
学习本课程最好具备比特币和以太坊的基础认识,具备以太坊智能合约开发部署经验尤佳
过程中会对比以太坊应用开发讲解
个人知识来源声明(官方文档)、学习资源分享推荐
融合个人看法和实践
我的分享宗旨:以最通俗的话讲明白复杂技术
我的2017年投(chao)资(bi)史
区块链思维小点拨
账本发展史
比特币为何能一直涨?
公链、联盟链区别
什么是共识&&世界电脑&&常见共识介绍
如何理解智能合约:智能?合约?
联盟链是否适合面向C端的个人看法
Hyperledger生态认识
Fabric1.0初步认识:
Fabric特点优势
github源码介绍,版本介绍
组件简介
逻辑结构图:各组件大体运作(重点!)
SDK/命令行发送交易请求给背书节点模拟执行
背书节点签名读写集返回
SDK/命令行发送读写集到Orderer
Kafka排序后生成区块广播到各LeadPeers
各CommiterPeers校验并提交区块
Golang1.10快速搭建
Docker快速入门
基于docker快速搭建第一个e2e_cli示例网络
Fabric核心组件剖析(结合配置文件)!
Cryptogen
Configtxgen
Orderer
Peer
e2e_cli网络搭建过程深入理解
e2e_cli示例网络的脚本文件和配置文件分析
手动搭建e2e_cli网络!
Fabric CA环境
数字证书、TLS和Https原理
根证书、ca签名、自签名
通过MSP进行成员管理
Fabric核心组件之间的TLS通讯
TLS证书和MSP证书区分开
单向TLS认证和双向TLS认证
Client命令行与Peer之间通讯
Peer与Order之间通讯
联盟链中每个组织机构内部搭建CA Server
动态新增一个Peer\User\Organization并加入网络!
Fabric典型的交易流程
交易流程细节
Json形式简单模拟
Sdk/命令行<--> EndorsePeers <--> CC
|-------> Orderer --> LeadPeer --> CommitPeers
CC如何无状态模拟执行?
读写集如何形成?
CommitPeers如何校验区块中的交易?
校验区块中各交易的背书
执行区块中交易中的读写集
三元组演示
背书策略详解
交易背书策略
实例化背书策略
通道背书策略
体现在配置文件中的位置
从交易流程再说说Fabric共识机制
《Orderer篇》
Orderer排序服务的初始化
Configtxlator反序列化创世块
通过系统创世块在每个Orderer节点中创建系统链
Configtxlator反序列化通道配置交易:发现包括预设机构
通过“通道配置交易”建立通道
Sdk/命令行向Orderer发起创建通道请求(传输“通道配置交易”)
Orderer基于“通道配置交易”新建“通道配置交易”(加入了Orderer节点信息和联盟组织信息),私钥签名并发送系统链的交易消息队列中处理
系统链基于“通道配置交易”创建新的通道和新通道的创世区块并将区块返回给Sdk/命令行
预设的各机构的各Peer节点通过这个创世区块加入Channel
校验区块合法性
校验是否此peer是否具备加入此channel的条件(符合策略)
根据创世区块在本地创建Channel账本
通知Orderer并登记到系统链配置上
从Orderer同步剩余区块直到最新
更新通道
Channel中的Channel本身属性、某chaincode的交易背书策略、组织成员增删改查(其实就是MSP的CRUD)等,都是可以修改。这些修改得在系统链上,因此 需要发送给Orderer节点。
Kafka排序服务
1
2
3
《智能合约篇》
链码生命周期
链码的定义”实例化策略”->打包 -> 线下发送给多方签名
链码安装和实例化(实例化时定义”交易背书策略”),通知其他peer安装即可。
组织机构之间如何
系统链码介绍
每个Peer节点都具备齐全
CSCC、VSCC、QSCC、ESCC、LSCC
详解“应用程序 <->背书节点<->链码”底部原理
结合系统链码理解