? ? 本視頻目前正在籌備中,爭取快速推出哈!推出此視頻教程,是因為Fabric知識體系較為龐大,而新手小白在學習過程中是一個知識點一個知識點地按部就班前進的,這就會在學習過程中給他們造成一定的前期困擾。本人在學習實踐Fabric過程中就感覺自己看書看官文慢慢摸索的效率非常低下,經常一臉懵逼,從而造成前進的心理壓力,當時很渴望有熟悉Fabric的人指點一二。
? ? 為了避免同樣的情況發(fā)生在其他小伙伴身上,遂嘗試根據自己掌握的Fabric知識進行梳理推出一套方便新手入門的教學視頻。一來可以幫助小伙伴提高學習效率,二來,也算是我為推進區(qū)塊鏈快速發(fā)展貢獻綿薄智力支持吧,哈哈,吾之榮幸!?
? ? 不過由于Fabric目前代碼更新非常頻繁,版本迭代也同時進行,加上知識體系龐大,所以難免會出現(xiàn)本人疏漏錯誤的地方,懇請讀者發(fā)現(xiàn)后指正!
? ? 我的分享宗旨:以最通俗的話講明白復雜技術
? ?課程介紹
? ? ? ? 學習本課程最好具備比特幣和以太坊的基礎認識,具備以太坊智能合約開發(fā)部署經驗尤佳
? ? ? ? 過程中會對比以太坊應用開發(fā)講解
? ? ? ? 個人知識來源聲明(官方文檔)、學習資源分享推薦
? ? ? ? 融合個人看法和實踐
? ? ? ? 我的分享宗旨:以最通俗的話講明白復雜技術
? ? ? ? 我的2017年投(chao)資(bi)史
? ? 區(qū)塊鏈思維小點撥
? ? ? ? 賬本發(fā)展史
? ? ? ? 比特幣為何能一直漲?
? ? ? ? 公鏈、聯(lián)盟鏈區(qū)別
? ? ? ? 什么是共識&&世界電腦&&常見共識介紹
? ? ? ? 如何理解智能合約:智能?合約?
? ? ? ? 聯(lián)盟鏈是否適合面向C端的個人看法
? ? Hyperledger生態(tài)認識
? ? Fabric1.0初步認識:
? ? ? ? Fabric特點優(yōu)勢
? ? ? ? github源碼介紹,版本介紹
? ? ? ? 組件簡介
? ? ? ? 邏輯結構圖:各組件大體運作(重點!)
? ? ? ? ? ? ? ? SDK/命令行發(fā)送交易請求給背書節(jié)點模擬執(zhí)行
? ? ? ? ? ? ? ? 背書節(jié)點簽名讀寫集返回
? ? ? ? ? ? ? ? SDK/命令行發(fā)送讀寫集到Orderer
? ? ? ? ? ? ? ? Kafka排序后生成區(qū)塊廣播到各LeadPeers
? ? ? ? ? ? ? ? 各CommiterPeers校驗并提交區(qū)塊
? ? Golang1.10快速搭建
? ? Docker快速入門
? ? 基于docker快速搭建第一個e2e_cli示例網絡
? ? Fabric核心組件剖析(結合配置文件)!
? ? ? ? Cryptogen
? ? ? ? Configtxgen
? ? ? ? Orderer
? ? ? ? Peer
? ? e2e_cli網絡搭建過程深入理解
? ? ? ? e2e_cli示例網絡的腳本文件和配置文件分析
? ? ? ? 手動搭建e2e_cli網絡!
? ? Fabric CA環(huán)境
? ? ? ? 數字證書、TLS和Https原理
? ? ? ? ? ? ? ? 根證書、ca簽名、自簽名
? ? ? ? 通過MSP進行成員管理
? ? ? ? Fabric核心組件之間的TLS通訊
? ? ? ? ? ? ? ? TLS證書和MSP證書區(qū)分開
? ? ? ? ? ? ? ? 單向TLS認證和雙向TLS認證
? ? ? ? ? ? ? ? Client命令行與Peer之間通訊
? ? ? ? ? ? ? ? Peer與Order之間通訊
? ? ? ? 聯(lián)盟鏈中每個組織機構內部搭建CA Server
? ? ? ? 動態(tài)新增一個Peer\User\Organization并加入網絡!
? ? Fabric典型的交易流程
? ? ? ? 交易流程細節(jié)
? ? ? ? ? ? ? ? Json形式簡單模擬
? ? ? ? ? ? ? ? Sdk/命令行<--> EndorsePeers <--> CC
? ? ? ? ? ? ? ? ? ? ? ? |-------> Orderer --> LeadPeer --> CommitPeers
? ? ? ? ? ? ? ? CC如何無狀態(tài)模擬執(zhí)行?
? ? ? ? ? ? ? ? 讀寫集如何形成?
? ? ? ? ? ? ? ? CommitPeers如何校驗區(qū)塊中的交易?
? ? ? ? 校驗區(qū)塊中各交易的背書
? ? ????執(zhí)行區(qū)塊中交易中的讀寫集
? ? ? ? ?????三元組演示
? ? ?????背書策略詳解
? ? ? ?????? 交易背書策略
? ? ? ?????? 實例化背書策略
? ? ?????? ? 通道背書策略
? ? ?????? ? 體現(xiàn)在配置文件中的位置
? ? 從交易流程再說說Fabric共識機制
《Orderer篇》
? ? Orderer排序服務的初始化
? ? ? ? Configtxlator反序列化創(chuàng)世塊
? ? ? ? 通過系統(tǒng)創(chuàng)世塊在每個Orderer節(jié)點中創(chuàng)建系統(tǒng)鏈
? ? ? ? Configtxlator反序列化通道配置交易:發(fā)現(xiàn)包括預設機構
? ? ? ? 通過“通道配置交易”建立通道
? ? ? ? ? ? ? ? Sdk/命令行向Orderer發(fā)起創(chuàng)建通道請求(傳輸“通道配置交易”)
? ? ? ? ? ? ? ? Orderer基于“通道配置交易”新建“通道配置交易”(加入了Orderer節(jié)點信息和聯(lián)盟組織信息),私鑰簽名并發(fā)送系統(tǒng)鏈的交易消息隊列中處理
? ? ? ? ? ? ? ? 系統(tǒng)鏈基于“通道配置交易”創(chuàng)建新的通道和新通道的創(chuàng)世區(qū)塊并將區(qū)塊返回給Sdk/命令行
? ? ? ? ? ? ? ? 預設的各機構的各Peer節(jié)點通過這個創(chuàng)世區(qū)塊加入Channel
? ? ? ? ? ? ? ? ? ? ? ? 校驗區(qū)塊合法性
????????????????????????校驗是否此peer是否具備加入此channel的條件(符合策略)
????????????????????????根據創(chuàng)世區(qū)塊在本地創(chuàng)建Channel賬本
????????????????????????通知Orderer并登記到系統(tǒng)鏈配置上
????????????????????????從Orderer同步剩余區(qū)塊直到最新
? ? ? ? 更新通道
? ? ? ? ? ? ? ? Channel中的Channel本身屬性、某chaincode的交易背書策略、組織成員增刪改查(其實就是MSP的CRUD)等,都是可以修改。這些修改得在系統(tǒng)鏈上,因此 需要發(fā)送給Orderer節(jié)點。
? ? Kafka排序服務
? ? ? ? 1
? ? ? ? 2
? ? ? ? 3
《智能合約篇》
? ? 鏈碼生命周期
? ? ? ? 鏈碼的定義”實例化策略”->打包 -> 線下發(fā)送給多方簽名
? ? ? ? 鏈碼安裝和實例化(實例化時定義”交易背書策略”),通知其他peer安裝即可。
? ? ? ? 組織機構之間如何
? ? 系統(tǒng)鏈碼介紹
? ? ? ? 每個Peer節(jié)點都具備齊全
? ? ? ? CSCC、VSCC、QSCC、ESCC、LSCC
? ? 詳解“應用程序 <->背書節(jié)點<->鏈碼”底部原理
? ? ? ? 結合系統(tǒng)鏈碼理解