本文來自于一塊鏈習《區塊鏈技術公開課100講》第28講,Polkadot社區大使、Substrate&Polkadot代碼貢獻者陳錫亮老師分享的《如何使用Substrate打造Web3項目》復盤內容。
大家好,我是陳錫亮。今天在此和大家分享如何設計、打造一個區塊鏈項目,簡單的講解下為什么要學習Substrate以及如何使用Substrate打造一個全新的區塊鏈。然后我會介紹下由Centrality基于Substrate開發的區塊鏈生態圈——CENNZnet,最后展望CENNZnet生態圈和波卡生態圈一起可以實現的未來。
我相信很多人都在準備或者正在部署區塊鏈領域,這是一個很新的領域也有著非常廣闊的空間和機會。有些人可能會有點迷失,對有些方面有點誤解。我今天嘗試著再次介紹下Web3的技術架構,希望能對大家有些幫助。
Web3生態圈
W3FWeb3基金會將Web3的技術架構一共分成了五層,我這邊給大家逐一介紹下。
http://wiki.web3.foundation/en/latest/tech_stack/tech_stack_overview/
第零層
????
Layer0第零層是整個Web3架構的基礎,由兩部分組成
P2P網絡連接層
基于傳統互聯網協議TCP/IP,WebSocket,DNS等等,提供了點對點的連接
libP2P
devP2P
跨平臺計算指令語言
部分基于傳統虛擬機,提供了跨平臺的通用計算指令集
EVM
Wasm
UTXO
第一層
????
Layer1第一層是建立在第零層之上,提供了分布式計算和交互的功能,由四個組件組成
去信任/低信任交互協議
去信任或者低信任的交互協議讓節點之間可以進行交互,達成共識,也可以理解成是單鏈協議
比特幣
以太坊
波卡平行鏈
Substrate獨立鏈
去信任共享安全交互平臺
作為共享安全的平臺可以讓很多小型的應用鏈共享安全性,達到安全高效去信任化的跨鏈交流
Polkadot
分布式數據存儲協議
類似于傳統的云存儲服務,比如AWSS3,但是建立與去中心化基礎之上,讓用戶真正的能夠擁有自己的數據
IPFS
臨時信息交流協議
提供了去中心化的臨時信息交流方式,這類消息是不同于鏈上交易消息,是不需要長期儲存的
EthereumWhisper
Matrix
第二層
????
Layer2第二層建立與更低的兩層協議之上,提供了更高級的功能比如擴展性,大量運算,和加密信息
目前的第二層協議有六大類,大多都是處于前期開發狀態
StateChannels狀態通道,鏈下信息交流,鏈上最終確認
很多情況下我們不在乎中間過程,只要結果是雙方任何的正確的結果就可以
比特幣閃電網絡
Plasma協議,解決鏈上擴容問題
加密存儲,提供端對端數據加密存儲方案
存儲激勵機制,提供冗余備份存儲方案,保障數據能夠真正的擁有多個異地備份
大量運算協議,提供可靠和便宜的運算方案
分布式私密管理,使用加密算法提供了去中心化分布式的私密管理
第三層
????
Layer3第三層為項目開發提供了高級語言和代碼庫
Protocol-extensibledeveloperAPIs&languages基于核心協議的開發語言和接口
美國國會法案呼吁聯邦政府研究加密貨幣用于非法活動的案例,并就如何減少這些用途提出建議:4月27日消息,周四向美國參議院和眾議院提交的一項兩黨法案將呼吁聯邦政府研究加密貨幣用于非法活動的案例,并就如何減少這些用途提出建議。《金融技術保護法案》建議成立一個工作組,負責研究恐怖分子或其他犯罪分子如何使用加密貨幣和其他新的金融技術,并為國會和監管機構提出旨在打擊這些用途的建議。[2023/4/27 14:31:26]
web3.js
polkadot.js
Solidity
ink
第四層
????
Layer4第四層是Web3技術架構的頂層,讓用戶可以輕松的使用Web3技術
Protocol-extensibleuser-interfacecradle基于核心協議的用戶界面應用
各種錢包應用
Metamask
波卡生態圈
波卡生態圈目前實現了Web3生態圈中的幾個關鍵組件:
去信任共享安全交互平臺:就是波卡主鏈,作為中繼鏈,為平行鏈提供了安全的交互平臺
去信任/低信任交互協議:各個使用Substrate創建的獨立鏈和平行鏈就屬于這部分
部分第二層協議的實現:現在有多個團隊包括Parity在基于Substrate開發layer2第二層的擴容方案
開發語言和代碼庫:polkadot.js,ink,Substrate
應用:官方應用就有PolkadotPortal網頁錢包,PolkadotExtension瀏覽器簽名插件,ParitySigner手機錢包和簽名應用。還有大量的第三方應用正在開發
我在波卡社區中發現很多人對于波卡的架構一些誤解,所以我在這邊說明一下。有些文章說Cosmos類似于安卓,是開放的,波卡類似于iOS,是封閉的,這點是完全錯誤的。
從架構上說,Cosmos的架構完全可以使用Substrate輕松實現。這個是波卡生態圈的架構和Cosmos的架構,很明顯,波卡的更加的完善。
從開放程度來說波卡完全不會低于Cosmos,畢竟都是開源開放的項目。任何人都可以利用Substrate實現一個完全獨立的鏈,擁有自己的驗證人節點,不需要受制于任何其他人。
在此之上,波卡主鏈使用了共享安全的中繼鏈和平行鏈的架構,是一個從本質上更加安全的跨鏈架構。確實,主鏈的插槽是要使用DOT來購買,需要一定成本。
但在這個夠買來的是一個非常高的安全性,與和其他平行鏈交互的門票,是絕對物有所值的。
就算有些項目,比如交易所,不希望使用波卡的共享安全,但也完全可以自己使用Substrate開發出自己的ProofofAuthorityPoA的鏈,在通過轉街橋與波卡平行鏈連接,繼而加入整個波卡生態圈。
總而言之,Cosmos和Tindermint目前無法實現波卡的架構,但是Substrate本身就完全可以實現Cosmos的架構。
還有很多對比說,Cosmos是可以無限擴展的,波卡只支持100個插槽,這個也是完全錯誤的。雖然波卡第一階段中繼鏈只支持100個左右的插槽,第二階段支持多層中繼就能夠支持一萬個插槽。
如果這樣還不夠的話,任何人隨時都可以啟動一條新的中繼鏈,然后多條中繼鏈可以使用轉接橋進行交互,同樣達到無限擴展的效果,不會比其他任何項目要差。
傳統區塊鏈項目架構一覽
????
現在普遍的區塊鏈項目一般都是第一層,各種公鏈私鏈的開發,或者第四層區塊鏈應用的實現。這次分享我著重講解第一層去信任/低信任交互協議的實現,簡單的說就說一個區塊鏈的實現。
實現一個區塊鏈項目是一件非常龐大的工程,其中包含了多個組件模塊。我以一個通過手機錢包發送交易的流程為例,大概講解下一個完整的區塊鏈項目都會涉及到哪些組件。
首先以用戶的手機錢包為起點,手機錢包提供了用戶界面,讓用戶可以方便的發送交易。然后錢包會使用JSSDK構造這筆交易,進行簽名,并且通過WebSocket或者HTTPRPC將這比交易發送給一個節點。
中央紀委國家監委網站發文《元宇宙如何改寫人類社會生活》:12月23日消息,中央紀委國家監委網站于今日發文《元宇宙如何改寫人類社會生活》,文中解釋了什么是元宇宙,元宇宙為什么能出圈,并且提到要“理性看待元宇宙帶來的新一輪技術革命和對社會的影響,不低估5-10年的機會,也不高估1-2年的演進變化”。[2021/12/23 7:59:46]
組件:
錢包應用
JSSDK
構造交易
簽名
RPC客戶端
RPC服務端
當節點通過RPC服務端收到這比交易后,首先會傳給交易池transactionpool。交易池會簡單的驗證下這比交易的合法性,比如驗證格式,驗證簽名等等。
非法的交易會直接舍去,合法的交易則會存入交易池并且通過P2P模塊廣播給其他連接的節點。
組件:
交易池
P2P模塊
當一個節點收到另一個節點發送來的交易,首先同樣傳給交易池并且驗證這比交易的合法性,然后根據結果在節點聲望模塊中調整相應的聲望。
如果一個節點經常發送非法交易,則會被降低聲望,最終被拒絕連接進入黑名單。合法的交易會傳入當前節點的交易池,如果是第一次收到這比交易,則會同樣適用P2P模塊廣播給其他連接的節點。
組件:
節點聲望模塊
這比交易最終會進入驗證人節點,或者礦池的交易池中。然后驗證人/礦池會將交易池中的交易打包,執行,生成候選區塊。
PoS的情況下驗證人節點會簽名并且通過P2P模塊廣播這個候選區塊,其他驗證人收到候選區塊后會驗證并且投票,同樣通過P2P模塊廣播選票。
在經過一輪或者多輪的投票后,一個候選區塊會擁有絕大多票數,成為最新的區塊。PoW的情況下礦池會將打包的區塊發送給所有礦工,分配挖礦任務,每個礦工或者礦機則會根據分配的任務挖礦。
如果礦池成功挖出區塊,則會將區塊廣播給整個網絡,嘗試讓大家接受這個新的區塊,并且根據礦工貢獻分配收益。
如果多個區塊被同時確認,則會有分叉的情況,這個時候共識算法的分叉選擇機制則會選擇最優的分叉來確認,而在個別情況會出現重組多個最新區塊的情況。
組件:
共識算法
出塊機制
從交易池選取交易打包成區塊
執行區塊/交易
確認區塊
PoW:礦池,礦工
PoS:驗證人節點
分叉選擇機制
當節點收到最新的區塊后,會先驗證區塊的合法性,比如PoW算法會驗證區塊哈希是否符合要求,PoS算法會驗證區塊是否有足夠的投票簽名,投票者是否是合法的驗證人。然后會本地執行區塊,記錄相關的事件和狀態的變動。
同樣,執行的結果也會和區塊頭中的信息比對,確認結果的一致性。合法的區塊會同樣的使用P2P模塊廣播給其他連接的節點。
區塊中相關的事件會發送給所連接的客戶端,比如最開始的手機錢包,通知交易已經被確認。區塊中被確認的交易會被從交易池中移除。
最后,手機錢包會收到交易確認的事件通知,向用戶顯示交易結果。完成一個發送交易到確認交易的流程。
還有一個流程也很重要,就是新的節點如何加入現有的網絡。
首先,新的節點要有相關的配置,包含了創世區塊,和引導節點。首先新的節點會使用P2P模塊的各種節點發現機制來尋找其他的節點,最簡單的就是直接連接已知的引導節點。
連接到新的節點之后,先會查詢對方節點的信息,判斷是否需要進入批量同步模式。如果對方節點的最新區塊高度高出很多,則會進入批量同步模式。
批量同步模塊會直接向其他節點批量下載區塊數據,然后由共識模塊驗證區塊合法性,和更新本地數據庫。
當所有的區塊都同步后,節點就會進入監聽同步模式,只會監聽新區塊的消息而不會主動查詢下載區塊信息。
中央財經大學郭田勇:應深入研究如何用數字人民幣組建更多功能:中央財經大學中國銀行業研究中心主任郭田勇表示,在數字化的浪潮下,貨幣作為一種支付媒介,其本身的數字化是必然趨勢。考慮到傳統貨幣印制發行成本高、不易攜帶等局限,數字貨幣以其獨特的優勢,極大降低了交易成本。郭田勇指出,數字貨幣如果由政府或者中央銀行來主導,必須協同好同原有銀行體系為主導的支付關系。目前,中國的數字貨幣屬于M0范疇,從金融學角度看,M0并不具有貨幣創造的能力,在整個貨幣儲存量中占比也很小,因此,數字人民幣的范圍還非常有限,未來如何用數字人民幣組建更多的功能,將其推向更大的領域,值得深入研究。這是一個循序漸進的過程,要把握好節奏。郭田勇稱,數字人民幣前期推進比較成功,有利于提升人民幣國際化程度。隨著中國經濟實力增強,人民幣國際業務更為廣泛。面對龐大的國際結算量,數字貨幣高支付效率的優點更易凸顯。(中國新聞網)[2021/7/7 0:32:14]
組件:
創世區塊
引導節點
同步模塊
批量同步模式
監聽同步模式
所有組件:
錢包應用
JSSDK
構造交易
簽名
RPC客戶端
RPC服務端
交易池
P2P模塊
節點聲望模塊
共識算法
出塊機制
從交易池選取交易打包成區塊
確認區塊
PoW-礦池,礦工
PoS-驗證人節點
分叉選擇機制
創世區塊
引導節點
同步模塊
批量同步模式
監聽同步模式
這些都是基本所有區塊鏈項目都有的組件,還有很多更多的每條鏈獨有的模塊。大多數區塊鏈都有世界狀態,就要有狀態模塊來維護。
支持智能合約的鏈就需要有沙盒和虛擬機模塊,比如EVM或者WASM。隱私鏈就要有相關的加密隱私算法模塊,其他的模塊還有比如自治模塊,質押模塊,歷史數據模塊等等。
所以呢,如果大家想從零開始啟動一個區塊鏈項目的話,是需要消耗大量時間大量資源的,對于一般的團隊來說是非常不現實的。
而且一個完整的區塊鏈項目,除了需要實現這些組件以外,還有更高層的方面要考慮,其中最主要的就是安全性。
安全性與代幣經濟學
區塊鏈領域不光對投資人,開發運營團隊來說是遍地黃金,對黑客來說同樣也是。基本每個月都會有新聞說誰被攻擊了損失了多少錢等等。
自然而然,大家都不想因為這個而上新聞。所以一個好的區塊鏈項目必須要有很好的攻擊抗性。
世界上沒有不透風的墻,同樣也沒有無漏洞的軟件,那么有什么辦法才能夠保證我們不被攻擊呢?
比特幣的一個特性就是,你可以大量算力來攻擊網絡,但是你真要這么做了就只會得不償失。這個的道理就是攻擊成本大大的大于攻擊收益。
沒有人愿意做虧本的買賣,當攻擊一個網絡的成本大幅度大于收益的時候,這個網絡就可以認為是相對安全的。再沒有絕對安全的情況下,一個足夠的相對安全就可以認為是安全的了。
反而言之,如果攻擊成本低于攻擊收益的話,那么基本就可以保證攻擊一定會發生了,這幾乎就是送錢的事,自然會有人去拿。
而這就又涉及到了一個很重要的領域,TokenEconomics代幣經濟學,這個一個比較新的領域,同時也有很多方向值得大家摸索。Polkadot做了很多相關的研究大家有興趣的可以看看。
攻擊一個網絡最簡單,也是最難防護的方法,就是DenialofService拒絕服務攻擊。這對于一個全新的網絡來說,是非常難防范的,那么這是為什么呢?
幾乎所有的區塊鏈的交易費都是使用平臺幣來支付,但是平臺幣的價錢都是從零開始的。所以對于小型區塊鏈,攻擊者可以輕易大量的收購,然后低成本的進行攻擊。
復旦大學教授許多奇:當今國際社會首當其沖的問題是如何判定數字貨幣法律性質:日前在金融法治菁英論壇上,復旦大學法學院教授許多奇表示,如何監管加密數字貨幣是當今國際社會普遍關注的問題,而首當其沖的問題是加密數字貨幣的法律性質判定問題,司法機關有關加密數字貨幣屬性的判定能否成為實現有效監管的基礎?在眾多司法轄區的多種監管思路中我們應作何種選擇?對于這些問題的思考和深入研究對于實現對加密數字貨幣的有效監管大有裨益。(中國貿易報)[2020/4/29]
這就從根本上的限制了這個區塊鏈平臺上能持有的價值是無法超越其平臺幣的市場價值,從而大大的限制了發展速度。
所以作為一個區塊鏈平臺,平臺幣本身要有足夠的價值,有著穩健的經濟體系,才能保證攻擊者的成本確確實實是大于攻擊能造成的損失。
這對于一個全新的,或者小型的區塊鏈項目是非常不容易辦到的,也是為什么波卡設計了共享安全這個架構。
小型的區塊鏈項目可以作為平行鏈接入波卡生態圈,直接利用波卡穩健的經濟體系來保障網絡安全,無需自己設計維護經濟體系。
如何開發區塊鏈
很多新的區塊鏈項目是直接分叉現有的項目,再進行開發。比如很多項目就是直接基于比特別或者以太坊實現的。
這樣的好處是可以直接擁有一個成熟的項目作為基礎,不需要重新實現每一個單獨的組件。
但是一個很大的缺點就是,現有的區塊鏈項目的設計核心都不是一個通用的區塊鏈開發框架,所以會有很多擴展性的問題,甚至導致需要大規模重構,才能實現新的特性。
這樣就大大減少了使用現有項目的價值了,畢竟有些時候重構比重寫還要費時費力。
還有一個很大的安全性問題,就是繼承代碼的同時,也繼承了這些代碼的所有問題。之前就有安全機構做過分析,比特幣的代碼有很多的安全漏洞,在比特幣項目本身都被很快的修復了。
但是眾多比特幣的分叉項目并沒有及時,正確的修復這些安全漏洞,導致大量的分叉項目非常的不安全。
還有很多安全問題是分叉項目不正確的修改了比特幣的代碼,導致了原有的安全準則被打破,從而造成了安全隱患。
如今,有了Parity所開發的Substrate框架,我們真正的擁有了一個真正意義上的完整的區塊鏈開發框架,可以幾乎不受限制的快速的開發出一個完整的,高性能的,安全的,區塊鏈項目。
我先簡單的介紹下Substrate核心開發團隊Parity和創始人GavinWood。我相信大部分人認識Parity都是從其開發的Parity以太坊節點開始的,這個項目已經大名鼎鼎就不需要我多說了。
Parity同樣還開發了比特幣節點,Zcash隱私鏈節點等等多個不同的區塊鏈項目。而Gavin本人則是以太坊的創始人之一,一手書寫了以太坊黃皮書。
所以我相信在Gavin帶領下的Parity團隊絕對是世界頂尖的區塊鏈團隊,有能力實現一個高質量的區塊鏈開發框架。
Substrate的前身是PolkadotPoC-2的版本。Polkadot波卡是Parity的下一代區塊鏈項目,使用共享安全的架構讓大家可以快速的部署安全的區塊鏈。
當Parity團隊在開發Polkadot的時候,他們意識到了他們可以把這個項目設計成為一個通用的區塊鏈開發框架,而不僅僅是一個死板的區塊鏈。
于是Substrate就誕生了,之后Parity就基于Substrate進行了新的Polkadot的開發。
同時Parity自己和其他團隊一起基于Substrate開發了各種其他不同的項目,證明了Substrate是一個足夠應對各種不同的項目需求的開發框架。
現在Substrate的項目有類似比特幣UTXO的鏈,有隱私鏈,有私有鏈,有以太坊2.0的項目等等,都充分證明了Substrate的通用性。
Substrate它本身就實現了一個在功能性上可以與以太坊相比的,完整的區塊鏈。所以基于Substrate開發,擁有著幾乎所有直接分叉以太坊項目的優點。
但同時,Substrate的初衷就是一個通用的區塊鏈框架,所以開發者有很大的自由度可以輕松定義每個組件。
大咖零距離 | 面對312極端行情應該如何調整心態?:4月17日16:00,金色盤面邀請eos柚子公主做客金色財經《大咖零距離》直播間,將分享《面對312極端行情應該如何調整心態?》,敬請關注,欲觀看直播掃描下圖二維碼即可![2020/4/17]
Parity團隊同時也在不斷的開發優化Substrate,所以開發者可以隨時更新所依賴的Substrate的版本,避免上游的安全隱患被利用。
這就大大的減輕了開發一條鏈的工作量,大家可以專注于自己鏈上獨有的特性開發,而其他的部分則可以使用Substrate提供的通用模塊。
現在已經有多個基于Substrate的區塊鏈項目正在開發中,橫跨了各個不同領域。這包含了我們公司Centrality開發的CENNZnet。
可以預見,接下來基于Substrate的項目會越來越多,而更早一步的掌握和熟練Substrate的開發技能則能夠讓你在成功的道路上比別人提前一步。
與傳統區塊鏈項目相比,Substrate有三大特性,分別是可升級,高效率,和創新性。
可升級意味著鏈本身可以以無分叉的方式進行升級,即便舊節點不更新,也可以執行最新的鏈上邏輯,避免分叉。在傳統的區塊鏈項目中,比如比特幣和以太坊,這是無法想象的事情。
每次重大升級都需要軟分叉或者硬分叉。而這又意味著永久分叉的風險,對安全性,穩定性,都有很大的影響。
高效率意味著高額度的TPS,和輕節點的實現。Substrate自帶的Gandpa和BABE混合共識機制可以在保證去中心化的同時,達到高效率的出塊速度和最終確認速度。
而輕節點的設計則保證了手機端物聯網端網頁端都可以安全的與鏈交互,而不需要無條件的相信所連接的全節點。
創新性則保證了開發者最高的自由度。所有的模塊都是可以定制,同時開發者可以輕易的開發出新的模塊。Wasm引擎的使用使得Substrate支持所有可以編譯成wasm的語言和庫。再配合基于wasm的智能合約,只有想不到的,沒有辦不到的。
那么如何學習Substrate這個框架呢?可以參加由我主講的《Substrate快速入門與實戰》這門課程。
這門課程由Centrality和一塊鏈習合作制作,據我所知是全球首個Substrate在線開發課程,并且由Web3基金會推薦。
本課程中使用的所有源代碼都是經過Parity開發者審核認可的,其中也包括了GavinWood本人的認可。
Gavin的原話是:BryanisarecognizedcontributorofSubstrate.IrecommendChineseblockchaindeveloperstotakehiscoursetolearnhowtobuildablockchainprojectwithSubstrate.?
中文意思是:Bryan是Substrate的杰出貢獻者。我推薦中國的區塊鏈開發者加入他的課程來學習如何使用Substrate打造一個區塊鏈項目。
首期課程定于6月2號開課,招生限50人,學費1299元。所有按時完成作業的同學將獲得一半學費返還。課程一共有8節課,每節課有40到60分鐘的視頻教程,每節課都有課后作業。每周都有講師答疑,也有多名助教幫助學員。
課程內容包含了:
Substrate架構
波卡與Web3生態圈
如何基于Substrate開發區塊鏈項目
設計與開發一個加密貓DApp鏈
使用polkadot.js與鏈交互和開發前端
Substrate底層實現講解
Substrate的缺陷與未來
我希望在這門課完結之后,學員都有能力進行Substrate項目的開發,并且可以參與一起打造波卡生態圈。
課程內容很多,所以對于學員有一定的基礎要求。首先是要有基本的區塊鏈基礎,這方面的優秀課程很多,就不需要我在復述了。Substrate是使用Rust語言開發的,所以我需要學員們有基本的Rust代碼閱讀能力。
Rust的可讀性還是比較好的,所以我相信大部分開發者只要做好準備都不會有問題。這邊有兩個官方教程大家可以先學習下熟悉Rust。
英文好的同學我推薦看官方英文教材,不然看中文翻譯也可以。兩個教程根據個人喜好選擇一個看就可以了。
TheRustProgrammingLanguage:https://doc.rust-lang.org/book/?前11章
中文翻譯?https://kaisery.github.io/trpl-zh-cn/
RustbyExample:https://doc.rust-lang.org/rust-by-example/?前16章
中文翻譯?https://rustwiki.org/zh-CN/rust-by-example/
然后是開發環境,我建議使用Unix環境,比如蘋果macOS或者各大Linux發行版本。
Substrate是支持Windows的,但是支持相對不完善,所以為了不必要的麻煩,Windows的同學可以裝個虛擬機,或者使用docker來搭建一個簡單的Linux命令行環境也可以。
如果大家對這門課程有其他的問題,可以向一塊鏈習咨詢。
接下來給大家介紹下我自己。我是陳錫亮,英文名是Bryan,現于Centrality任職產品架構,目前主要負責CENNZnet這個項目的架構和開發。
同時我個人也是Polkadot和Substrate的貢獻者,參與了多個模塊的架構的討論,和部分的實現。我也受邀加入了由Web3基金會組織的波卡大使計劃,是最早一期的波卡大使成員,負責波卡社區的建設和推廣。
CENNZnet這個項目是基于Substrate所開發,算是比較早期的使用Substrate的項目之一。我們這個項目立志于打造的一個完整的區塊鏈生態圈,為DApp開發者提供一個開發和部署DApp的平臺。
CENNZnet的架構大體分為四層,分別是區塊鏈開發工具包Plug,區塊鏈CENNZnet,多個系統核心模塊,和最頂層DApp。
首先是最底層Plug,這是一個基于Substrate的區塊鏈開發工具包。其中包含了我們對Substrate的分叉,和一些通用的模塊,比如通用資產模塊,交易費模塊等等。
在此之上,就是我們的CENNZnet。CENNZnet是一個公鏈,其中包含了大部分Substrate所提供的模塊比如質押模塊,共識機制模塊,所有Plug所提供的額外模塊,和多個CENNZnet的核心模塊,比如身份認證,交易所,加密通訊等等。
我這邊舉個簡單的用例,在以太坊最常用的功能之一就是發行與交易代幣。如果要發行代幣,發行人需要自己尋找一個安全的ERC20合約的實現,然后部署在鏈上。
這樣會有個問題,一是代幣發行人需要驗證自己的合約實現是安全的,同時使用用戶同樣也需要驗證這個合約并沒有漏洞或者后門。而且如果合約需要增加功能,那么還會有很多信任度的問題。
在CENNZnet上面發行代幣就不需要考慮這些問題了,可以直接使用內置的通用資產模塊的發幣功能。這與直接網上找標準合約模版發幣類似,但是系統內置的模塊解決了用戶的信任問題,就好比沒人會質疑以太坊作為核心貨幣是否會有后門。
而且如果有需求,做為系統級模塊的通用資產模塊可以利用自治模塊升級,添加新的功能,或者修復安全隱患。與此同時所有使用資產模塊發行的代幣都會一并升級,無需開發者維護。
我們會使用通用資產模塊實現大部分的代幣合約的需求,如果開發者需要額外的自定邏輯的話,則可以利用智能合約模塊實現。用戶可以部署智能合約,與我們的系統級模塊進行交互,定制各種交互邏輯。
系統模塊的另一個優點就是可以與其他的模塊更好的整合,比如通用資產模塊和交易所模塊和交易費模塊的整合。在以太坊一直有一個痛點,就是交易費一定要使用以太坊這個核心貨幣支付。
這有時候會造成很尷尬的情況,就是一名用戶可能有很多很值錢的代幣,但是賬戶上并沒有以太坊,那么這些錢就等于被凍結住了,完全無法使用,對用戶體驗非常不友好。
在CENNZnet就沒有這種問題。內置的交易費模塊支持用戶使用任何有通用資產模塊發行代幣來支付交易費用,當然為了保證用戶支付足夠的交易費用,交易費模塊會自動調用交易所模塊,賣出用戶愿意付出的代幣,購買正好足夠支付交易費的核心交易代幣。
這一系列動作全都是自動的,無需用戶操作。當然用戶可以選擇最大支付額度,避免匯率變動造成的影響。
我們基于核心模塊開發了多個DApp,比如Sylo是我們實現的的端對端加密通訊的應用。SingleSource是我們身份管理和權限管理的應用。其他開發者也可以基于核心模塊,或者自己部署智能合約,在CENNZnet上部署自己的DApp。
我們希望在CENNZnet平臺開發DApp的開發者有著類似在iOS上開發的體驗。系統級合約提供了大部分開發者所需要的功能,并且提供了足夠多的接口讓開發者可以相對不受限制的根據自己的需求定義。
iOS成功的核心之一是安全性,和用戶的信任,我們也希望CENNZnet這個平臺也擁有這兩個特性。用戶可以相信他們使用熟悉的,由系統合約實現的功能,并且可以相信開發者不能隨意違背用戶的意志任意篡改數據,因為這是平臺所不允許的。
展望未來
我希望在不遙遠的將來,可以看到去中心化,去信任化,分布式的應用可以取代大部分傳統的中心化應用。用戶擁有真正的選擇權。
人人都擁有自己的手機錢包,存放著少量資金作為日常消費,而大筆的存款則可以選擇使用硬件錢包來存放,或者存放在半中心化的區塊鏈銀行中,或者傳統的中心化銀行。
用戶可以選擇相信自己,或者相信某個DApp,或者相信某個企業。大部分人會選擇成為各大區塊鏈項目的提名人,在維護網絡安全的時候賺取利息。
之后會有大量的新星區塊鏈企業,運營各種傳統行業不存在的服務,比如托管驗證人節點,區塊鏈銀行,全自動理財服務等等。
這些區塊鏈企業大部分都會使用DAO,分布式自治組織,的模式來運營。用戶永遠不必須要擔心企業高層跑路,因為這些DAO的組織是真正屬于網絡的,人人都可以擁有自己的話語權,對組織的發展有著相對應的影響力。
我希望這個未來我們不會再擁有各種日益增長的信任問題,隱私問題,網絡安全問題。企業和組織的信息可以更加的公開透明,用戶的資料可以更加的隱私安全。
而面向這個未來的第一步,就是大家一起參與建設Web3生態圈,共同打造美好的未來。
Substrate快速入門與開發實戰
6月一塊鏈習將上線一門重量級課程《Substrate快速入門與開發實戰》,面向于各位想要入門Substrate的同學。
這門課程將于下周三開課,原價1699元,首期價格1299元,完成作業即可獲得返還一半學費的資格,還能獲得代幣獎勵,是不是很給力!
現在僅剩20個名額,想要報名的同學,建議可以先添加一塊鏈習Jessie班長微信號前去搶座報名,再來看下面的詳細課程介紹。
????
接下來,再讓我用些許篇幅來介紹下這門《Substrate快速入門與開發實戰》課程吧。
1.課程內容
《Substrate快速入門與開發實戰》視頻課將基于最新的技術,一切從實踐出發。
我們首先會讓從Substrate、Polkadot生態圈講起,讓你了解及Substrate底層代碼實現,學會如何利用Substrate開發一個可產品化的區塊鏈項目。
之后會帶你了解并且掌握Polkadot.jsSDK使用與前端項目開發的能力,掌握如何設計與完善區塊鏈項目的相關技巧,可以讓你對整個Substrate開發的生態有全面的了解。
最后,你還可以通過這門課程結識全球第一批對Substrate技術充滿熱情的工程師...
學完這門課程之后,你將能夠系統性的串聯起瑣碎的知識點,對面向Substrate的開發有一個基本的認識,快速的上手實現完整的可產品化的區塊鏈項目。
同時會幫你梳理產品中的主要模塊,迅速理解在工作中實際項目的代碼結構,快速構建產品體系。
這里不妨附上一張課程大綱,供你參考:
????
2.課程導師
這門課由Polkadot創始人GavinWood都認可的一線實戰導師授課,以下是對課程導師的簡單介紹:
陳錫亮,一個擁有著多年的全棧開發經驗,為Substrate、Polkadot貢獻代碼的Polkadot社區大使,曾負責參與其項目的設計與開發。目前正在負責CENNZnet項目架構與開發,擁有豐富的Substrate使用經驗,非常理解開發者即將要面對的問題及需求。
????
3.課程適合人群
區塊鏈技術開發者|2年以上經驗互聯網開發者
「入學必備技能」
系統學習時間過一門編程語言?
以推薦度排名:Rust,C,Swift,C,Javascript,Go,Scala,OCaml,Java
對Unix命令行基本了解?
基本的Web開發知識
基本區塊鏈知識
4.課程學習方式
我們會以50人的小班形式進行管理:
體系化在線錄播教學
全程2名班長5名助教帶班強化訓練
8次作業1次項目操盤
助教批改作業&點評
小組群協作學習微信班級群交流
每周日講師在線直播答疑
5.課程學習時間
正常學習周期為6?—7周左右,12個月課程有效期內課無限觀看視頻。
最后,再提一嘴:第一期課程下周三就開課了,目前僅剩最后20個名額,想要入門Substrate的同學,建議加快手速,添加一塊鏈習Jessie班長微信號報名。
Tags:TRASTRRATTRATData TransactionASTROPEPE價格Karatgold CoinTratin
火星財經APP一線消息,有日本以太坊之稱的Cardano將于6月上線shelley的測試網,這一消息由Emurgo于5月22日在twitter上發布.
1900/1/1 0:00:00Celer在今日的電報AMA活動中回應了關于給私募投資者轉賬時出錯,為了彌補錯誤而從基金會中抽調1%的Token來彌補的傳聞,表示這是一次溝通失敗導致的錯誤轉賬.
1900/1/1 0:00:00BTC 比特幣延續高位震蕩走勢,圍繞高位逐步走低,從8900一路降至8600關口震蕩,整體走勢環比已經出現一定程度弱勢,從日線圖中也可以非常清晰的看到,三輪拉升盤整時間階梯式縮減的同時嗎.
1900/1/1 0:00:00BTC在周線即將收盤之際再次開啟飆升模式,直接大陽線從8000美元拉漲至接近8900美元,漲幅超過10%,走勢相當強勢,目前周線也已收盤并高于18年7月波段高點.
1900/1/1 0:00:00對于幣圈投資者來說,2018年是災難性的一年。在2017年的牛市瘋漲后,到處都是喊“allin區塊鏈”,不幸的是,在2018年1月份創下歷史新高之后,幣價很快跌至低點,許多幣的價格跌幅高達95%.
1900/1/1 0:00:00前言 先說說行情,比特幣在8600美金一線橫住,其他主流幣種基本都聯動跟隨。暫時來看,加速沖高還未實現,行情看起來還沒有見頂,預計還能沖高。今天講講被各種“大師”當成日常分析工具的各類K線指標.
1900/1/1 0:00:00