天天看點

go語言、CosmosSDK與定制化區塊鍊網絡

作者:bithomeAI

Cosmos 所描繪的願景是成為 “區塊鍊的網際網路”。(cosmosSDK子產品化建構自己的區塊鍊網絡,github:https://github.com/cosmos/cosmos-sdk)

一、Cosmos 2.0特性

2022年9 月 27 日, Cosmos 白皮書 2.0 在 Cosmoverse 大會正式釋出,這也标志着 Cosmos 正式進入 2.0 時代。Cosmos2.0 更新已然成為了繼 ETH2.0 合并之後,今年區塊鍊行業最大的事件,同時由 Cosmos2.0 更新所帶來的新的創新應用也在區塊鍊行業内引發了廣泛的讨論。

1.鍊間賬戶(Interchain Accounts)

鍊間賬戶允許使用者直接從他們的 Cosmos Hub 賬戶與任何支援 IBC 的 Cosmos 應用鍊無縫互動。在目前,由于每個 Cosmos 應用都部署在獨立的主權鍊上,各應用之間不能直接互動,如果交易是發生在不同的主權鍊上則會給使用者造成很多的不便。例如,當你想在 Osmosis 上交換一些代币,但你的資金在另一個 Cosmos 主權鍊上,你需要先将它們橋接到 Osmosis,然後再發起代币交換,這期間資産需要經過多次的交易和跨鍊轉移。這樣無疑增加了資金轉移的成本和時間。

而鍊間賬戶的應用則可以解決以上所有問題,它允許使用者在一次點選中完成多個交易的流程,不但使用者的體驗效率飙升,同時也為使用者節省了大筆的轉賬 gas 費用,使用者通過鍊間賬戶與 Cosmos 應用互動就像與以太坊等 L1 上的協定一樣簡單快捷。

2.鍊間安全(Interchain Security)

鍊間安全是備受期待的更新之一,對于基于 Cosmos-SDK 建立的應用程式而言,安全始終是一個基礎問題,對于那些擁有大量使用者的大型應用鍊而言,比如之前的 Terra,這不是大問題。但是小型應用鍊會有這方面的擔憂,因為如果新推出的應用程式由市值低于該鍊上的 TVL 的通證質押者來保護,則會有被攻擊的風險。是以,鍊間安全允許這些應用鍊從 Cosmos Hub 租用安全性,隻需要付出一定比例的交易費用,這些應用鍊将能夠得到 Cosmos Hub 的驗證者提供的安全保障。

在新版的白皮書 2.0 中提到了鍊間安全未來的幾個應用方向:

  • Rollup 結算
  • IBC 路由,IBC 中繼合約市場
  • Multiverse,我的解讀就是消費者鍊
  • 鍊域名服務,Cosmos 上的 ENS

3.Interchain Queries(鍊間檢索)

如果說鍊間賬戶和鍊間安全解決了 Cosmos 各應用鍊上資産轉移和安全保障的問題,那麼鍊間檢索的推出,則旨在解決各應用鍊間資訊互動的問題,它将開辟一個全新的可能性世界,使跨鍊智能合約的建立成為可能。

例如,通過鍊間檢索使用者将能夠在一個 Cosmos 鍊上針對另一個鍊上的抵押物進行借款,并且在面臨清算時也可以及時檢索價格完成清算,不需要再像之前一樣必須要把資金橋接到你希望進行借貸的應用鍊上才能完成清算。

鍊間賬戶與鍊間檢索是相輔相成的,這兩個新特性合作,将可以實作跨多個區塊鍊的複雜交易,極大簡化使用者跨 Cosmos 應用程式的互動體驗,更可以整合各鍊的特有功能,挖掘出整個 cosmos 生态的潛力(如結合 Secret Network 的預設隐私轉賬功能)。

4.ATOM2.0

作為 Cosmos 唯一原生代币 ATOM 在 1.0 階段一直被認為是 MEME 币,沒有多少存在感,又因為 1.0 階段代币的發行量無上限且缺少價值捕獲力,導緻通脹率長期居高不下,這極大的阻礙了 Cosmos 生态系統的搭建,為此,ATOM2.0 的此次更新将重點放在了解決代币價值捕獲和 Cosmos 生态發展兩大問題上。

(1)借助鍊間安全提升 ATOM 價值捕獲力

在過去有一個 HUB 作為中心,同時有 zones 類似平行鍊,Zones 上的協定自己發育,自負安全,大家沒有強聯系,新版中開發者可以選擇讓 HUB 來承擔安全,同時 GAS 費由 ATOM 承擔,這樣生态越大,ATOM 的價值也會越大,而即便是有某些項目特别強大,不使用 HUB 作為安全保證,而像 ERC20 項目一樣,用自己的代币,那麼 HUB 也依然可以以獎勵等形式收到代币,這樣同樣有利于 ATOM;

(2)借助鍊間帳戶增強 ATOM 的可組合性

鍊間賬戶打通了整個 Cosmos 的生态,使得生态中不同鍊上的資産可以直接交易,提升了資産的轉移的效率,同時也為不同主權鍊上的不同資産與 ATOM 的互動提供了便利,增強了 ATOM 的可組合性。

(3)流動性質押功能提高了 ATOM 的流動性

目前的 ATOM 持有者可以通過向驗證者抵押他們的代币來賺取利息,但這樣做涉及到将代币鎖定在區塊鍊上的一個位址,并且需要保證在一段時間内不能出售,雖然目前一些第三方應用程式提供了 “流動性質押” 模式,讓使用者能夠通過代表其股份的衍生代币交易其抵押資産,但使用者操作起來并不友善,并且引入第三方程式也會帶來不可控的風險,而這一問題在 Cosmos2.0 階段将會得到解決,Cosmos Hub 将很快支援流動性質押功能,進而提高 ATOM 的流動性,使得 ATOM 成為 Cosmos 生态的首選抵押品。

(4)代币激勵助力 DAO 社群治理

Cosmos 除了會以 ATOM 作為鍊上的交易手續費支付貨币外,另外持有 ATOM 的使用者享有治理投票權,使用者可以參與到 Cosmos Hub 的治理,發起提案與表決生态系統的未來走向。此外 Cosmos 也會将代币激勵運用到社群管理上,通過一次性的補助給到社群,或者設立開發者資金流等激勵措施,讓社群可以更好的為 Cosmos 生态系統提供服務或建議。

(5)持币者獲得更多新項目空投的機會

通過質押 ATOM 代币,持币者可以獲得新項目空投的機會,據 Cosmos 官方透露僅 2022 年就有約 200 條鍊鍊上 IBC,未來随着 Cosmos 生态系統日益豐富,必然會有越來越多的新項目空投湧現,這也為 ATOM 持有者提供了更多新項目空投的機會。

5.Cosmos 發展階段和理念

Cosmos 創立以來一直緻力于解決以下問題:

  • 可擴充性:快速建構自定義鍊,通過将網絡層、共識層與應用層分離,提供 Cosmos SDK 使開發者更 focus 在應用層的實作上。同時允許不同的分片鍊使用不同的個性化實作方式。
  • 跨鍊通信:通過 IBC(Inter-Blockchain Communication Protocol) 實作不同鍊之間的消息傳遞
  • 主權 &共享安全:開發者可自行掌握應用鍊的規則,同時通過 IBC 與中心網絡連結,不同鍊之間隻需要信任中心網絡即可,實作獨立主權和共享安全。
  • 提升速度:通過 POS 增加區塊确認速度,進而提高 TPS。

Cosmos 的最初創始人 Ethan Buchman 在 9 月 23 日的文章中闡述了 Cosmos 的理念與目标,并将 Cosmos 的發展分成三個階段——Initiation,Integration, Illumination。

第一階段稱為 Initiation,它開始于 2016 年夏天,在這一年 Cosmos 白皮書 1.0 釋出,就此 ,Cosmos 的故事徐徐展開,《Cosmo:分布式帳本網路》白皮書将 Cosmos 設想成一個由許多獨立區塊鍊(即 Zone)組成的網路,這些 Zone 由提供類似 PBFT 的共識引擎 Tendermint BFT 提供支援,首個 Zone 是 Cosmos Hub,還可以通過連接配接其他 Zone 來擴充 Cosmos Hub,而 Cosmos Hub 和 Zone 之間可以通過鍊間通信協定(IBC)互相通信。Cosmos 白皮書 1.0 的釋出得到了廣然的傳播和社群的好評,同時也為 Jae Kwon 和 Ethan Buchman 拉來了一些初始資金來建構 Cosmos。

2022 年 9 月 27 Cosmos 白皮書 2.0 的釋出标志着 Cosmos 發展的 1.0 階段的結束以及 2.0 階段的開啟,上文已經講述了 Cosmos2.0 的具體更新措施,此處就不再贅述,Cosmos2.0 的更新對 Cosmos 的發展至關重要,它起到了承上啟下的作用,它将 1.0 階段 Cosmos 由一個松散的聯盟演變成了一個生機盎然的生态系統,同時也為後續的 Cosmos3.0 階段指明了方向。

Cosmos 3.0 階段稱之為:Illumination,中文譯為 “光明”,具體什麼時候到來,又以何種方式到來,我們尚不得而知,但是通過 Cosmos2.0 階段給我們帶來的創新和驚喜,我們有理由相信 Cosmos3.0 值得我們期待,未來它将會照亮整個區塊鍊世界。

6.Cosmos 和 Ethereum 差別

Cosmos 開發團隊認為,公鍊應該由網絡層 (節點網絡)、共識層 (共識形成)、應用層 (應用程式 &持久化賬本) 組成,而在 Bitcoin 把三層網絡糅合在一起,導緻使用者無法在 Bitcoin 網絡上建立應用。Ethereum 僅僅提供了 EVM 作為智能合約的運作平台,存在可擴充性 (所有應用搶奪有限資源)、易用性 (由于 EVM 本身以及程式設計語言的限制,開發者無法高效完成應用開發和 usercase 覆寫)、有限主權 (應用層并不擁有主權) 等諸多難以完善的問題。與比特币和以太坊網絡相比 Cosmos 所建構的網絡基礎層更為理想,它的出現就像是計算機從單機時代進入網絡時代一樣,擁有無限的前景和強大的叙事性。

(1)功能上的差別

Ethereum 和 Cosmos 區塊鍊,經常會被一些加密愛好者拿來比較,就其功能而言,Cosmos 并不是 Ethereum 的競争對手或替代品,這二者并不在一個次元裡,Cosmos 可以提供免費的區塊鍊開發架構,讓網絡上的開發人員可以啟動他們的區塊鍊。這一點 Ethereum 目前還無法做到。雖然 Cosmos 不會成為 Ethereum 競争對手, 但 Cosmos 免費提供的一些區塊鍊開放架構,卻可以為 Ethereum 的競争對手提供便利,一個典型的例子是 Binance Chain,它就是用 Cosmos SDK 所建構的,在其平台上為使用者提供更快的交易且費用比 Ethereum 也更為便宜。

(2)使用者體驗的差別

Ethereum 是通用區塊鍊;開發人員建構側鍊,使用智能合約對以太坊的區塊鍊進行更改。這裡的問題是,這些智能合約都是通用的,功能非常有限,很多時候項目必須結合大量的基本合約來實作他們想要的功能,這會提高 gas 價格并導緻交易時間變慢,使用者體驗也會變的非常差。除此之外,這些項目還必須互相競争才能将他們的交易包含在以太坊的下一個區塊中。這意味着擁有更多項目會導緻更高的 gas 費用。

而 Cosmos 網絡是一個生态系統,旨在為項目方建構自己的區塊鍊,根據他們的需求定制,同時還能夠與連接配接到生态系統的其他區塊鍊進行交易。這顯着降低了所有連接配接區塊鍊的 gas 成本,并且不會限制交易吞吐量。是以在使用者體驗上看 Cosmos 比 Ethereum 更有優勢。

(3)生态領域的差別

Cosmos 将允許所有區塊鍊互相互動,構成一個完整的區塊鍊網絡,在這個網絡裡所有公鍊都可以做到彼此的互通,鍊間的資産轉移也更為便利,它甚至允許不同的代币存在,這樣做保證了 Cosmos 生态系統中公鍊的多樣性,同時也為 Cosmos 提了源源不斷的創新力。而與 Cosmos 相比 Ethereum 更像是一個孤島,需要從它到其他區塊鍊建立單獨的橋梁,這些區塊鍊也像孤島彼此間缺乏聯系。建立單獨的跨鍊橋梁不但增了資産跨鍊轉移的成本,同時跨鍊資産的安全性也難以得到有效保障,成本高和缺乏安全反過來又會進一步限制 Ethereum 生态系統中各鍊之間的互動,一些需要頻繁跨鍊互動的智能合約應用就無法實作。從創新性和便利性上來看 Cosmos 的生态系統無疑比 Ethereum 更勝一籌。

Cosmos 的出現或許對 Ethereum 構成了威脅,但是二者殊途同歸,Cosmos 所描繪的願景是成為 “區塊鍊的網際網路”,這與 Ethereum 成為 “區塊鍊世界計算機” 的目标并不沖突,二者可以合力打造一個承載十億使用者的區塊鍊網際網路絡世界。

二、Cosmos架構發展現狀

Cosmos架構以其獨特的互操作性和子產品化架構吸引了衆多開發者和項目,可以說這些特性為區塊鍊技術開辟了新的視野。

接下來,我們将探讨 2023 年 Cosmos 生态系統内發生的重大變化、重大技術更新和突出的新項目。

由于 Cosmos 生态中有多種鍊,即使助記詞相同,每條鍊也有獨立的位址。目前,使用名為 Keplr 的錢包服務來內建和管理它們,但需要利用新的錢包應用程式來利用 Web3 上出現的每個新鍊,這給使用者帶來了巨大的疲勞和進入障礙。

Cosmos 生态系統認識到這個問題,并且正在開展項目來解決這個問題。在此背景下,Metamask 推出了對 Snap 的全面支援,允許在 Metamask 上添加自定義功能。感謝 Metamask,現在可以在基于 Cosmos 的鍊上建立交易,而 Leap 錢包就是此類服務之一。

Leap錢包(https://cosmos.leapwallet.io/portfolio/overview)

換句話說,已經奠定了技術基礎,讓熟悉基于 EVM 的鍊的使用者更容易被 Cosmos 生态吸引。

不幸的是,Cosmos SDK 不支援智能合約的虛拟機。是以,出現了幾個項目來開發在其他區塊鍊協定中經過驗證和使用的虛拟機或 Cosmos 生态系統獨有的獨立虛拟機。人們已經嘗試将各種虛拟機(例如 EVM、WasmVM、SolanaVM、MoveVM 等)與 Cosmos SDK 內建,并且對某些虛拟機的支援受到高度贊賞。如果支援更常用的虛拟機,dApp 開發人員将更容易加入 Cosmos 生态系統。

以下是 2023 年 Cosmos 生态系統中出現的一些最有趣、最引人注目的項目。

2023 年 Cosmos 生态中最熱門的項目無疑是 Celestia。Celestia是一個具有代表性的子產品化區塊鍊項目,它将區塊鍊的功能大緻分為四個部分:

在這些功能中,Celestia 專注于資料可用性。這與“L2”一詞相結合,引發了 Cosmos 生态系統的 Rollup 熱潮。為此,建立并支援了名為“Rollkit”的架構,該架構支援 Celestia 和 Cosmos SDK 之間的 ABCI。

Celestia Rollkit ( https://docs.celestia.org/developers/rollkit )

它取代了 Cosmos 的共識引擎 Tendermint(或更确切地說,CometBFT),并允許 Celestia 和 Cosmos SDK 直接通信。這允許通過将交易聚合在一個塊中并利用 Celestia 的共識引擎和資料可用性來進行主權彙總。

Skip Protocol 是一個願景為“主權區塊鍊的主權交易基礎設施”的項目。它有助于改善主權區塊鍊的使用者體驗,并使交易處理順序透明,以防止惡意 MEV 并從品質上改善網絡。

在使用者體驗改進中,該項目旨在解決區塊鍊間通信(IBC)協定的問題。IBC 是一種用于在 Cosmos 内不同鍊之間交換資産的協定。為了通過 IBC 轉移資産,必須建立一個通信“通道”,每個通道都需要為其連接配接的每個鍊提供唯一的 ID。下圖展示了連接配接 Axelar 和 Terra2 的通道,代表了從 Axelar 向 Terra2 發送 ETH 的示例。

Skip API ( https://api-docs.skip.money/docs/ibc-routing-algorithm )

通過 IBC 傳遞到另一條鍊的資産将具有新的面額。

這裡需要注意的是,即使相同的資産被發送到同一個鍊,如果通道的價值,或者說路徑的價值不同,它的面額也會完全不同。換句話說,即使 ETH 中的資産相同,在 Terra2 中也會被識别為不同的資産。當資産通過複雜的路徑傳遞時尤其如此,是以很難知道傳遞了哪些資産。

go語言、CosmosSDK與定制化區塊鍊網絡

為了解決這些問題,Skip 提出了一種最優路由算法來在 Cosmos 生态内傳遞資産,并通過确定資産的面額來提供更好的使用者體驗。

Skip 協定還提供了各種可用于基于 Cosmos SDK 開發區塊鍊的 API,例如多鍊交易跟蹤和 Block SDK。Skip 還向社群提議将 Skip 的功能納入 Cosmos SDK 中,為生态系統的發展做出貢獻。

Sei

Sei被定位為專門從事交易的鍊,其目标是成為快速的Layer1而不是Rollup,這也是2023年區塊鍊發展的一大趨勢。Sei專注于通過利用各種技術來提高鍊的性能。

Injective

Injective緻力于建構一個專門針對金融應用程式的區塊鍊生态系統。Injective與Figment和Binance建立了合作夥伴關系,并支援Helix和Hydro等各種dapp加入Injective生态。

dYdX

dYdX被認為是最成功的DEX,并且已經使用Cosmos SDK成功遷移到Layer1。

dYdX通過自身代币,加強了治理。

Stride

Stride是一種類似于以太坊Lido的流動性質押協定。在Cosmos生态中,流動性質押本來就很困難,因為資産分散在多條鍊上。Stride旨在通過利用ICA(鍊間賬戶)、ICQ(鍊間查詢)和ICS(鍊間安全),在Cosmos生态中實作多鍊流動性質押。

Coreum

Coreum是一個面向企業的Layer1區塊鍊,支援基于Wasm的智能合約、RWA代币化、NeoBanking應用程式等。

雖然 Cosmos 網絡上的開發活動總體保持健康,但第二季度的智能合約部署數量最高(2,226),增長率也最高(21.4%)。核心開發者數量呈逐漸上升趨勢,這也是生态基礎設施積極建設的标志。

與此同時,去年第二季度和第三季度部署的智能合約數量分别為 2,226 和 1,777 個,高于第四季度的 1,701 個。雖然與前兩個季度相比,開發活動确實有所放緩,但考慮到第四季度年底導緻的下降,我們認為活動水準仍在持續。

Cosmos 網絡活動中最引人注目的是,第二季度和第三季度的開發活動轉化為第四季度整個生态系統的增長。如表所示,Cosmos 生态系統中的 TVL 在第三季度持續下降,但在第四季度大幅上升。

第四季度 Cosmos 生态系統 TVL 的爆炸性增長可歸因于兩個因素的結合。首先是 10 月中旬各 Layer 1 主題的流動性湧入。2H 期間,大量流動性流入 Layer 1 生态,Solana、Cosmos 和 Avalanche 以爆發性的表現拉動整體 TVL。

此外,包括Cosmos SDK在内的對開發者友好的基礎設施環境,以及基于IBC生态系統建構的龐大的區塊鍊連接配接網絡,也為使用者帶來了實際效用。仔細觀察 TVL 趨勢就會發現,這不僅僅是暫時的上升,而是持續的趨勢。對協定成熟度的滿意可能會推動第 1 層的流動性,促進 Cosmos 的發展并減少使用者流失。

與表現最低的第三季度(1,470,050 個)相比,第四季度活躍錢包數量也增加了近 55%,達到 2,280,335 個,反映出生态系統充滿活力。這是由 Cosmos IBC 生态系統的互操作性推動的,這導緻了鍊上活動的增加,例如使用者參與每個協定上的活動以及通過 DeFi 使用代币。

此外,從IBC生态中關鍵協定的TVL趨勢來看,下半年基于Cosmos SDK的協定的持續炒作也起到了重振生态的作用。事實上,我們可以看到協定的 TVL 略有增加。與 THORChain 等項目從第四季度初開始增長不同,Injective 協定從第四季度末到現在 TVL 出現爆炸性增長。我們可以将其解釋為 Cosmos IBC 生态系統内流動性和交易活動的順序流動。

Cosmos 目前共有 180 個活躍驗證者。前 9 位驗證者持有 40.89% 的質押 $ATOM 供應量。目前 Cosmos 上有 2.44B $ATOM 質押,約占總供應量的 65%。

2023年對于Cosmos生态來說是具有裡程碑意義的一年,見證了多個項目的發展和重大變化。我們相信,這些變化表明 Cosmos 不僅僅是區塊鍊技術的一個領域,而且正在推動整個區塊鍊生态系統的創新。

Celestia、Skip Protocol 和其他著名項目展示了 Cosmos 生态系統的多樣性和靈活性以及它如何不斷發展。這些項目開創了區塊鍊技術的新用例,并幫助建立更高效、使用者友好的區塊鍊環境。

Cosmos 生态系統的成長和發展增強了我們對區塊鍊技術未來的興奮。它們為開發者、使用者和投資者打開了新機遇的大門,并為未來幾年持續的創新鋪平了道路。我們預計 Cosmos 生态系統在未來幾年将繼續這種積極的趨勢,并且在此過程中将不斷出現新的技術挑戰和機遇。

三、通過CosmosSDK建構公鍊

Cosmos在以太坊的基礎上更進一步,通過CosmosSDK的形式提供搭建區塊鍊的腳手架,提供通用的開發架構,Cosmos SDK子產品,大大簡化了區塊鍊的開發難度,對于開發人員來說可以添加定制的功能實作擴充。

1.3a)公鍊的建構

首先,所有解決具體應用場景的應用都需要建構在底層的公鍊上,具體來講,對應用開發影響最大的是公鍊偏上層的應用層,更偏向公鍊底層的網絡層和共識層提供的是應用運作的底層性能,具體的底層設計隻要在保證性能的情況下不會對應用程式本身産生更多的影響。

但是,如果要達到主流采用的應用的話,可能需要整個公鍊單獨為應用服務。比如說21年爆火的鍊遊Axie在,選擇了開發自己的側鍊Ronin處理大量交易。如果繼續依賴承載着其他Defi、NFT等交易活動的以太坊來處理的話,不僅會無法處理Axie遊戲的業務,還會導緻以太坊網絡的擁堵。畢竟以太坊的TPS 僅僅是10 。是以,長期來看,大量的應用堆積在一條主鍊上去共享資源既無法滿足應用,還拖垮整個網絡。單一公鍊不可能為每一個應用場景都做到最優,不同賽道的項目應該選擇在适合自己的公鍊生态進行上建構,Cosmos提供子產品化的區塊鍊,開發者可以更高效的搭建出适應應用場景的鍊

同時以太坊上應用的爆發也讓開發者意識到,不同的應用場景對公鍊的要求也不一樣,比如确認時間的速度對Gamefi項目的影響一定大于Defi的項目。理想情況下,考慮未來的大量使用的場景的話,每一個應用應該有獨立的一條區塊鍊。但是,開發公鍊的底層既沒必要也浪費資源,目前位置公鍊的設計方案已經大體相同,而且開發工作量巨大,并且實際能做到的人也不多。

1.3b)公鍊的組成

我們可以看看從頭搭建一個區塊鍊需要什麼:

1.資料層:資料存儲的技術, 主要是基于密碼學的資料存儲,實作交易安全,包括Merklle樹、數字簽名、散列函數、非對稱加密技術等,将資料存在一個區塊再通過鍊式結構,結合時間戳的技術按順序相連接配接組成一條區塊。

2.網絡層:Peer-to-peer點對點的網絡中節點溝通的機制,影響區塊鍊的資訊确認的速度,也決定了區塊鍊的可擴充性

3.共識層:統一記賬的方式,讓分散的節點同意并确認賬本的記錄,確定區塊鍊的安全性。

4.激勵層:通過經濟激勵模型鼓勵節點來參與區塊鍊,也就是常說的挖礦機制,是區塊鍊運作的基礎

5.合約層:由以太坊為代表的智能合約可以開發并自動執行應用程式

6.應用層:面向使用者的産品

1.3c)Tendermint共識機制

Tendermint 其實是創始人Jae Kwon在創造Cosmos之前建立的公司的名稱,而 Tendermint Core 是實際使用的軟體,主要有兩個元件構成:包含提供共識機制的Tendermint Core,共識引擎, 和适應大多數程式設計語言的接口ABCI。

在Cosmos的設計中,資料層和網絡層歸類網絡層,合約層和激勵層歸共識層,合約和應用層歸為應用層。對于開發者來說,最底層的網絡層和共識層并不是他們想要開發的關鍵,而是開發應用層,負責業務邏輯來提供應用場景。Tendemint提供了通用的網絡層和共識層,讓開發者在在此基礎上搭建自己的應用層。

Tendermint Core 作為一個通用引擎,能夠安全的、一緻的在鍊上記錄交易,其中包含了網絡層和共識層,網絡層使用的是Gossip 協定,模仿流行病傳播方式在P2P的節點網絡中傳播資訊的網絡協定,也是比特币網絡層使用的協定;共識層使用的是BFT+POS,我們可以看看具體的算法。

其實每一個人都遇到過共識的問題,那就是和朋友一起吃飯的時候商量吃什麼。隻不過在區塊鍊裡面變成了節點一起商量下一個區塊上面寫什麼。 區塊鍊允許節點随時加入或者離開,即使出現故障,網絡裡的節點依然能夠正常工作。這是依靠提前制定的規則,這套規則就是共識機制。

中本聰首次在比特币的設計中融入了拜占庭容錯(BFT),開始将學術界的容錯機制引入到像區塊鍊這種分布式計算,思考在不可靠的環境中建立一個可靠的系統的。Jae Kwon是第一個真正提出将BFT研究應用到PoS的區塊鍊中,并創造了Tendermint實作了他的想法。

1.BFT拜占庭容錯機制

1982年,Lamport,Shostak和Pease首次提出拜占庭将軍問題,一群拜占庭将軍分别從不同的位置圍困一座城市,需要決定進攻或撤退。但是處于不同位置的将軍隻能通過信使互相聯系,如果這些将軍中出現叛徒, 那麼叛徒可以向不同的将軍發送不同的消息,比如向傾向于撤退的将軍發送其他将軍也打算撤退的假消息,擾亂大家的決定。

而讓忠誠的将軍在有叛徒的情況下,依然能夠達成共識的機制的能力就被稱作BFT,Byzantine Fault Torerance拜占庭容錯。BFT保證在總的節點數為 N的情況下,故障或者作惡的節點數為 F,隻要N >= 3F + 1 時,網絡依然能夠達成共識做出一緻的決定。

網絡的參與者不能确定是否有人撒謊,或者消息是否被修改,即使存在這些問題,參與者也能一起達成共識做出決定的系統就被稱為具有拜占庭容錯 (BFT)。

2.POS權益證明

BFT描述的是在網絡中運作達到共識的規則,POS描述的是參與網絡的方式,也就是挖礦的機制。Proof of staking權益證明作為挖礦的機制,要求共識的參與節點,被稱為驗證者,持有并質押區塊鍊的原生代币,也就是Cosmos的Atom代币,将POW的以硬體算力的成本轉換成持有代币的成本,期望獲得手續費和區塊的獎勵作為回報。質押的代币作為保證金獲得投票權,確定節點不是虛假賬戶發起女巫攻擊。在參與共識的過程中,鎖定驗證者的保證金,避免驗證者多次投票發生無利害關系問題,否則沒收保證金。

3.共識機制

獲得共識的流程主要是驗證者在多輪的提議,預投票,和預送出過程中獲得2/3 的投票,成功後開始送出資訊添加新的區塊,将區塊鍊的“高度”(其實就是數量)上加1,否則重新開始整個流程。僅參加提議、預投票、預送出的準備階段被稱為非驗證人節點,或者輕用戶端,確定網絡中的所有節點都能監聽消息;從投票到出塊參與全流程的驗證者也被稱為全節點;開啟每輪投票流程的驗證者也被稱作提議者,確定責任落實,根據質押的代币獲得的權利越大,被選中的機率就越大。換句話說,投入越多,獲得回報的幾率就越大。

當然,并不是每一輪都會成功産生區塊,提議者可能掉線或者延遲等情況下,整個流程就會重新開機。

同時,輕用戶端可以驗證交易的有效性。相比存儲了完整區塊鍊資訊的驗證者,輕用戶端隻需要定期下載下傳部分資訊也就是區塊頭(可以了解為文章的标題),甚至不需要同步鍊上的所有區塊頭,輕用戶端就可以通過區塊的最終結果,跟蹤參與投票的驗證人的集合,驗證是否有大于三分之二來自該區塊的驗證人進行了預送出。

當然,并不是每一輪都會成功産生區塊,提議者可能掉線或者資訊不符合标準,那麼整個流程就會重新開啟。

4.性能

中本聰共識及通過POW的方式,允許所有人加入成為礦工通過算力的比拼獲得記賬的權利,也就是出塊。而Tendermint中會預設固定的節點,如果要增加的話需要至少2/3的節點的一緻投票,同時為了防止節點過多達成共識變慢,tendermint的節點上限為100個,并且得出的結果具有最終确定性,這意味着在同樣的輸入條件下,輸出的結果總是确定的,保證使用者的交易是立即完成。而比特币可能出現分叉的風險。

上限100個的Tendermint 的驗證者可能被質押不夠去中心化,不過,去中心化在區塊鍊中應該是一種手段,而不應該成為目标本身。 隻要破壞系統的代價夠大,并且有針對性的防禦及懲罰機制,即使Tendermint的驗證者是固定已知的,也不妨礙穩定、确定的達成共識。

Tendermint Core作為提供網絡層和共識層的共識引擎,是支援BFT的共識機制。這意味着即使有 1/3 的節點發生故障,包括黑客攻擊和惡意攻擊,Tendermint的網絡也依然能夠獲得共識,正常工作。這意味着使用Tendermint共識引擎的網絡在大多數情況下都能保證網絡的安全運作,這是任何應用開始大規模使用的前提;同時是迅速的,出塊時間約為 1 秒,保證同樣的交易按照同樣的順序記錄在鍊上

2)ABCI接口:解放開發者的接口

在Cosmos的區塊鍊網絡中,每條區塊鍊都由Tendermint作為底層的通用的網絡層和共識層,同時每個應用都能在應用層設計自己的業務邏輯。對于開發者來說,隻需要通過ABCI,Application Blockchain Interface應用程式區塊連結口調用,他們可以直接在tendermint提供的共識機制上提供的最終交易上就可以建構應用程式。

1.ABCI:靈活的調用方式

ABCI ,全稱Application Blockchain Interface,作為一個socket協定是一個調用的接口,不同于其他的區塊鍊要求開發者學習并使用特定的語言,開發人員可以選擇他們熟悉的語言進行開發。

我們看到的比特币、以太坊在設計區塊鍊網絡時都是采用的一體化的思路,每一個技術棧,也就是我們剛剛講到的區塊鍊的各個層級,都是一個互相連結和依賴的程式,無法單獨拆開。

這種整體的架構在開發時容易遇到2個問題。

1)代碼難以使用。比如說,比特币的一個堆棧裡面就包含了待處理的交易池mempool,賬戶餘額,使用者權限等,如果想要單獨拎出mempool就會變得非常困難,即使分叉也很難維護,變成面條式代碼,和面條一樣纏繞在一起混亂難以理出頭緒。

2)限制開發語言。在以太坊網絡中,EVM 需要通過編譯器将智能合約代碼編譯成位元組碼再上傳到區塊鍊之後才能執行操作,導緻開發者隻能使用EVM編譯器支援的語言,也就是 Serpent 和 Solidity。

2.功能類型

主要有3個ABCI連接配接應用層和Tenderint共識層,包括:

1)CheckTx:驗證交易并送出到mempool交易池中廣播交易

2)DeliverTx:送出給共識引擎處理并更新狀态

3)BeginBlock/EndBlock:查詢應用層的狀态

abci協定包括幾種不同的消息類型。Tendermint core 會建立3個ABCI連接配接到應用層:

在計算機科學中,通常不認為單體架構通常是一個好的做法。Cosmos把原來的需要從底層開始建構層層堆疊的區塊鍊架構,變成了子產品化的可自由組合的結構。就像是組裝電腦一樣,你可以把記憶體條,顯示器,鍵盤,滑鼠組裝成一個電腦需要考慮添加具體的配置就可以開車上路了。而應用層的配置也提供了工具,Cosmos SDK,一個允許開發者為應用場景自定義配置的架構,提供了新的開發範式。

1.3d)Cosmos SDK:子產品化的開發方式

區塊鍊的本質是一個可以被複制的狀态機,一個簡化了事物因果關系的邏輯模型,可以給定某個條件來更新狀态。比如說比特币就是一個可以被所有人下載下傳的賬本,新的交易成功後就會被更新到這個所有人都可以看到的賬本。 在實踐中,大量的交易可以被打包并上傳到鍊上修改賬本的狀态。

1)SDK子產品設計

通過子產品化的設計,SDK提供了通用的應用功能,每個功能能夠獨立運作、組合。管理。每一個子產品也可以被看成單獨的小狀态機,開發者可以自定義狀态以及改變狀态的方式,并用KVStore的形式儲存在Multistory裡支援以後的使用。同時作為開源的軟體,開發者可以通過項目實踐,快速疊代。

SDK的子產品是一個作為開發者能夠為其他開發者提供的簡潔、實用的開發工具,開發者可以放開手腳創作更多的應用。

運作機制

通過Multistore 的機制來定義和維護應用層的狀态,将應用層的狀态劃分到不同的子產品,可以看作是獨立的狀态機CosmosSDK裡内置的底層basepp裡有ABCI的接口可以直接調用适應所有應用類型的Tendermint共識機制,經過CheckTX的驗證非攻擊後送出到mempool交易池,在驗證節點達成共識成功出塊後交易被打包上鍊,通過DeliverTx成功修改狀态,即交易成功。

通過DeliverTx的功能收到位元組形式的交易後,解碼提取消息,在驗證交易相關的資訊後,比如是否有簽名,再推送到對應的子產品處理,最後更新狀态。更新後的狀态由SDK裡的Multistore的功能儲存,并且還可以把資訊切割開來對應到不同的子產品。

2)SDK子產品功能

現有子產品提供的功能

Account子產品:司賬戶管理的account子產品

Bank子產品:司轉賬交易

Staking子產品:司代币質押

Slashing子產品:司懲罰政策的slashing

Distribution子產品:司獎勵配置設定的distribution子產品

Supply子產品:司新币生成的

Gov子產品:司鍊上治理

基本上涵蓋了應用層的必需功能,而開發者可以直接使用這些車輪開發自己的汽車了。

相容性

SDK支援開發者使用第三方的子產品,但是需要做一些安全檢查保證各個子產品可以互相适配。

IBC協定和SDK是獨立運作的,使用Cosmos SDK子產品并不強制要求綁定到Tendermint的共識機制,開發者可以根據自身的訴求選擇底層的共識協定,而後文介紹的IBC子產品則在一定條件下連結不同共識算法,比如,比特币和以太坊這兩大公鍊。

Object-Capability Model支援對象模型

Cosmos SDK支援對象能力模型,可以讓每一個子產品的運作邏輯被儲存在Keeper的功能裡,通過調用Keeper,子產品存儲器件,就可以在相應的應用中讀寫。這意味着,即使有未知的或者惡意的攻擊,在不需要了解具體代碼的情況下,也可以對引用的對象和連結的分析進而保證系統的安全,隻要引用的對象之間産生了連結。

這個叫做keeper的邏輯控制可以藏在幕後,隔離不同的代碼,最終提高系統的安全性。對于應用的架構開發者可以更清晰的梳理代碼的功能、邏輯、連結,是以可以更容易的定位問題,适配其他語言,甚至更多的優化。

采用Cosmos 建構的應用都有獨立的應用層,共識層以網絡層,開發者可以選擇網絡層的驗證者,建立自己的社群以及經濟體系。如果使用預設的共識層Tendermint Core ,開發者可跨多個cosmos區塊鍊使用可以選擇自己的驗證者。而說基于Cosmos SDK建構的公鍊已經有了Binance Chain,Terra,還有Kava等大型公鍊提供服務。

開發Keplr錢包的Josh曾經總結過,使用智能合約是租房,使用CosmosSDK開發才是建造屬于自己的房子。

1.3e)IBC 跨鍊協定:區塊鍊網際網路的TCP/IP協定

IBC跨鍊協定是Cosmos SDK其中一個子產品,使用Cosmos SDK建構的應用都可以通過更新相容IBC協定,和我們平常更新手機軟體一樣。

IBC,全稱Inter Blockchain Communication 區塊鍊間通信協定,統一了在不同的區塊鍊之間跨鍊溝通的标準。可以了解成戰國時期秦國統一度量衡,或者用Tendermint 的前首席研究員 Sunny Aggarwal 的話則是,IBC是将運輸貨物的集裝箱标準化,實作全球經濟貿易。

1)跨鍊協定設計

單條公鍊提供的功能和場景有限,是以需要跨鍊才能滿足更多的需求,比如你在美團上點了外賣之後通過支付寶支付。跨鍊本質上是一種把資料安全、可信地轉移到另一條鍊,并達到預期效果。

參考網際網路的發展曆史,脫胎于阿帕網,ARPANET(Advanced Research Projects Agency Network,進階研究計劃局網絡),是第一個是實作計算機遠端通信的網絡,但是依然隻能在有限的規定節點中傳輸資訊。直到TCP/IP協定,或者稱為網際網路協定套件,Internet Protcol Suite/IPS的網絡傳輸協定,提供了不同計算機之間如何傳達和接受資訊的标準機制,才形成了我們現在使用的網際網路。在TCP/IP之上,還需要其他的協定來保證不同類型的傳輸,比如說網頁采用HTTP,電子郵件需使用SMTP等。

IBC協定作為跨鍊的标準,提供了:

1.互操作性

IBC協定作為跨鍊的基礎,在此之上可以實作真正的跨鍊互操作,包括:

1.)資産跨鍊:将不同鍊上的資産轉移到目标鍊上,比如把ETH轉賬到ATOM鍊上

2.)資訊跨鍊:從其他鍊上擷取資訊并使用,比如抵押以太坊鍊上的資産後在Cosmos上借貸

跨鍊的價值不僅僅展現在代币的價值上,還能帶來真正的區塊鍊構成的網際網路,就像我們現在使用的網際網路

2.安全性

功能越少,出現能夠被攻擊的安全漏洞的可能性就會越小。 且IBC假設不同的鍊互不信任,IBC協定的安全來自Tendermint共識的最終性,而我們前文所讨論的BFT的安全性和輕節點的驗證功能能給予足夠的安全性,沒有再引入其他的可信任假設。

3.通用性

對技術的追求可能沒有盡頭,但是技術作為服務需求的工具,最終的判斷來自于使用者。是以一個技術被采納時,選擇的可能不是最好的技術,而是選擇最有使用者基礎的技術。類似網際網路技術的發展曆程,TCP/IP網絡技術被提出之後,也出現過性能更好的解決方案,但都沒有被整個網絡所采納。區塊鍊也是一樣,除了對技術的研究,需要使用者需求的技術才可能被接納。

IBC協定從通用的角度僅對應用層提出最少的要求,有利于IBC協定廣泛部署,當越多的區塊鍊加入IBC的标準,IBC成為真正的跨鍊标準的可能性就越大。

4.相容性

作為通用标準,IBC需要适應各種類型且互不信任的區塊鍊。確定區塊鍊作為狀态機的結果是确定的,即無法撤,才能保證通信的正确的執行。這意味着區塊鍊必須具有提供最終确定性的共識機制才能相容,目前POW的比特币和以太坊還不支援,但是通過後文介紹的Gravity Bridge也能實作跨鍊。

2)跨鍊協定内容

類似于TCP/IP協定定義了不同的計算機在傳輸資訊是采用了IP位址(計算機 ID)、端口号(應用程式ID)、協定号(傳輸層标準)的結構來傳輸資訊。

IBC協定裡,類似于定位計算機的IP位址是channel ID,定位應用程式的端口是port ID,再加上用戶端同步資訊構成了标準化溝通資訊的方式。簡潔的協定減少了跨鍊通信帶給鍊本身的負擔,沒有過多限制參與跨鍊通信的應用本身,更加靈活。

Port ID

每一個子產品化的應用程式有一個特定的端口,稱為Port ID

Channel 通道

首先每個子產品需要建議使用IBC通信協定的通道,并且可以建立多個通道,避免當個通道資訊過載。初始化通道時,遇到錯誤的傳回也可以拒絕通道。

同時通道可以保證交易的有序性,理論上也可以支援無序的通道,友善驗證有效性。

Port端口

每個子產品都可以綁定任意數量的端口,在和其他子產品建立通道時可以使用不同的端口ID,可以适應不同的應用場景的資訊。

輕用戶端

輕用戶端需要同步對方的區塊頭資訊,實時跟蹤對方的驗證者集合來驗證交易的有效性和合法性,支援使用CosmosSDK建構的同構區塊鍊

Handshake 握手連接配接

在建立通信之後,需要确認操作模式,達成協定之才可以進行的資訊的交換

1)A鍊發起跨鍊到B鍊的OpenInit請求,等待Relayer 接收到該請求。

2)Realy收到 OpenInit的請求之後,構造OpenTry 的請求發送到B鍊上。

3)B鍊收到OpenTry請求之後,同意并确認之後生成OpenACK資料包,并由 Relayer按照同樣的方式發送給A鍊。

4)A鍊通過OpenACK資料包判斷此次握手是否成功,成功則發送 OpenConfirm 并把包含資訊的資料包傳回B鍊,成功傳輸資訊;否則握手失敗

Packet資料包

定義了跨鍊通信的必要資訊,包含發送和接收方的channelID,portID,sequence序列,還有TimeoutHeight,TimeoutTimestamp的逾時機制。保證在某個時間前完成交易,否則可以退回,防止資金長時間當機。

跨鍊交易

如果使用者需要從A鍊跨鍊轉賬100個ATOM到B鍊,那麼交易流程則是

1)驗證輕用戶端驗證資産是否合法有效

2)A鍊發送證明ATOM已被鎖定

3)B鍊驗證A鍊的證明

4)B鍊建立100個AMT的Voucher抵用券,可以流通使用直到傳回A鍊後用來解鎖原來的100個ATOM

實際上,跨鍊交易隻是兩條鍊上的資産的所有權的交換,BTC 仍然在比特币區塊鍊上,ETH在以太坊區塊鍊上。BTC離開比特币區塊鍊就失去了價值,而交易實際上把BTC作為資産的價值進行轉移,在Cosmos的模式下,資産本身就能在鍊上轉移。

1.3e3)跨鍊協定對比 Vs. Polkadot XCMP

XCMP協定

XCMP,全稱Cross-Chain Message Passing跨鍊消息傳遞協定,平行鍊插入波卡的中繼鍊成為多鍊網絡中的其中一條鍊後通過此協定接入同一中繼鍊的其他平行鍊跨鍊溝通。

XCMP運作機制

在平行鍊收集交易并送出到候選的區塊的節點被稱為收集人,在中繼鍊驗證收集人提供的候選區塊完成交易,也稱為出塊,的節點被稱為驗證人,通過XCMP協定收集人可以發送和接受其他平行鍊的消息。

如果一條平行鍊,A鍊,需要發送消息到另外一條B鍊,那麼:

1.質押代币DOT使用XCMP協定來打開一個A鍊到B鍊的是一個單向通道發送消息,接受消息需要另外的通道,消息傳遞後關閉通道時可返還押金。

2.A鍊上的收集人會把消息、收件人、時間戳一起放到 A 鍊的輸出隊列中。

2.B 鍊的收集人通過Gossip機制的網絡傳遞消息時會發現這條消息并放到輸入隊列中,并且這條消息在A 鍊和 B 鍊的驗證人中都會儲存確定合法有效

3.B 鍊的收集人送出消息給中繼鍊的驗證人,驗證人确認後将資訊放到中繼鍊記錄消息并出塊,完成消息傳遞。

使用 XCMP 發送的消息可以包括任何的資料和消息,也就是說支援資産跨鍊和資訊跨鍊的跨鍊互操作性,比如跨鍊調用合約的跨鍊這意味着。

但是按照目前的多鍊生态,可以預見跨鍊交易的大量增長,而每次使用波卡的XCMP跨鍊都需要質押DOT使用一次性的的通道,有一定的成本并且會犧牲效率。 目前XCMP協定還在開發中,還需等待上線後檢視實際效果

Polkadot的XCMP協定通過中繼鍊維護全局的安全性,而簡潔的Cosmos IBC協定從設計上降低了跨鍊的成本,IBC協定更像是WTO的全球貿易的協定,任何國家都可以自由的建立多邊貿易協定,開啟全球貿易。

Cosmo團隊喜歡把IBC協定比喻成集裝箱标準,标準化的集裝箱可以在世界上任何一個港口交易,而Cosmos的IBC協定把跨鍊的資訊标準化,讓Cosmos的網絡中的區塊鍊也可以交流,交易。而在這個經濟一體化的網絡中,Cosmos Hub就是這個網絡的樞紐。

1.3f)Cosmos Hub:價值樞紐

Cosmos的網絡采用的是中心輻射模型,Hub作為網絡中的中心樞紐,連接配接其他被稱為Zone的區塊鍊。Zone可以連接配接到Hub并記錄每條公鍊作為Zone 的狀态,在交換資訊時,Hub和互動雙方這三個獨立的區塊鍊中都會留下記錄。

其中,Cosmos Hub是網絡中第一個區塊鍊,基于CosmosSDK開發的Cosmos Hub也是為Cosmos 多鍊網絡中的第一個樞紐。

1)Hub:交通樞紐

IBC協定可以讓每一條公鍊都互相連接配接,但是這種做法不具備擴充性。如果網絡中有10條鍊,每條鍊都和其他的鍊互通的話,會産生45個連結;如果有100條鍊,兩兩相鍊就會産生4950個連結。顯然,這種做法是不可持續的。

換一種思路,把所有的鍊串聯起來,那麼10條鍊隻需要9個連結,100條鍊隻需要99個連結。雖然複雜程度顯著減少,但是信任的風險卻增加了。當A連結到B,B連結C,那麼如果從A鍊到C鍊的話就必須同時信任A鍊和B鍊才能保證C鍊收到資産的安全,驗證非常複雜且容易出現安全風險。

同樣的問題我們也可以在現實世界中找到解決方案,比如航班規劃。理論上從任何機場起飛你都可以到達目的地,但在成本、收益、效益的考量下,最終還是會看到主要的樞紐機場作為中轉站出現。Cosmos Hub就是網絡中的樞紐。

運作機制

Cosomos Hub采用中心輻射的模型,每一個區塊鍊作為分區Zone 與Hub直接通信,Hub會同步更新所有Zone的區塊頭作為驗證的資訊,不同的Zone就能通過Hub通信。Hub作為樞紐能夠收到所有Zone的狀态和資訊,也就是說Hub記錄着每一條區塊鍊作為賬本的餘額和交易記錄,避免出現雙重支付問題(Double Spend)。當Zone 1想要跨鍊轉賬到Zone 2時,Zone 1向 Hub 發送這個轉賬的消息後,Hub會向Zone2 證明轉賬的消息無誤,Zone2通過存儲在Hub上的區塊頭驗證消息合法後實作轉賬。

可更新

當網絡出現新版本或者需要更新配置的時候,所有的驗證人都需要同時轉移到更新的區塊鍊,在其他的區塊鍊網絡可能導緻硬分叉的出現。而在 Cosmos 網絡的區塊鍊,也就是分區,隻需要通過接入Hub将現有分區的使用者轉移到新分區上即可成功更新。

Hub + Zone 的模型讓Cosmos能夠安全的擴充網絡,即使網絡中有100條,甚至更多的區塊鍊也能夠實作互操作。

2)Hub:價值樞紐

區塊鍊的安全

區塊鍊通過共識機制驗證的資料難以篡改,進而保證了資料和交易的安全。使用POW機制的網絡,比如比特币,安全性由礦工提供哈希算力提供,隻有掌握了整個網絡51%的算力才能發起攻擊篡改資料,也被稱為51%攻擊。目前比特币的網絡的規模十分龐大,導緻聚集51%算力非常難,并且,即使能做到成本也相當的高,是以POW共識的網絡的安全性較高。

但是如果一條小型鍊的算力較少,那麼遭受攻擊的可能性就會很大,網絡非常的不安全。同理,使用PoS共識的網絡也面臨同樣的問題,但是安全的保障從算力變成了質押的保證金。在 PoS 網絡中,驗證人通過質押保證金獲得驗證産出區塊的權利,同時提供安全。質押的資産越多,安全性就越強。如果一條鍊規模較小,節點質押的資金較少的話,那麼節點作惡的成本和攻擊者的成本也會降低,網絡的安全會大打折扣。

跨鍊安全的必要性

如前文所說,Tendermint作為基于BFT的POS共識機制,需要鍊上總質押資産的2/3的驗證者達成共識,換句話說,如果要發起攻擊,攻擊者的成本就是2/3的鍊上總質押的資産。舉個例子,一條鍊上的驗證者總共質押了1000萬美金,如果鍊上聚集了5000萬的資金,那麼理性思考的驗證者就會選擇盜取5000萬的資金,隻需要最少700萬的美金,就能獲得5000萬-被懲罰沒收的700萬=4300萬的回報。

提供安全的做法是增加作惡的成本**,** 有兩種做法

1)保證鍊上質押資産和鍊上的TVL(total locked value鎖定價值)的比例在相對安全的範圍内。

2)允許擁有更多質押資産的鍊,比如Hub,配置設定資産給其他質押資産較少的鍊提供安全。

**每個鍊上提供的應用場景不同,能夠捕獲的TVL也有限。但是對于互通的Cosmos生态來說,保證每個分區的安全才能確定整個網絡的安全,**是以通過将資本配置設定到質押資金較少的鍊上來提供作惡成本對整個網絡都是有意義的。

分區的鍊可以在自己鍊的原生代币上的基礎上加上Hub的質押資産,節點的作惡成本也就從原鍊資産上變成了原鍊資産加上Hub的資産的總和。

跨鍊安全的價值

在2022年2月即将上線的跨鍊安全對Cosmos帶來的主要價值是

1)保證Hub的極簡主義:**精簡的功能帶來的是安全的提高,因為可能被暴露的安全的漏洞就越少。并且,簡潔的功能更能精準的服務目标使用者,避免同時服務不同需求的使用者。**比如Defi的使用者喜歡的功能不一定會讓Gamefi的使用者開心。同時子產品化的設計可以将提供某個應用功能的子產品拆解成獨立運作的區塊鍊并使用相同的驗證人的集合,即使受到攻擊,Hub也可以正常運轉避免停擺

2)降低開發和運作公鍊的門檻:公鍊首先要確定的是安全。當資産和資料的安全能夠得到保障,使用者才會開始成為公鍊的使用者。而維護公鍊的成本,如前文所描述的,是需要大量的資金的。如果開發者能夠提供很好的應用場景但是缺乏足夠的資金冷啟動,就可以通過跨鍊安全來獲得。

3)保證Cosmos網絡的安全:**通過共享驗證人,Hub把Cosmos裡的分區的區塊鍊綁定在Hub,變成了利益共同體。**木桶原理也适用于連結各個分區的Cosmos的網絡,Cosmos的網絡安全取決于最弱的分區,而跨鍊安全保證了最弱的分區也可以租賃Hub的安全,實際上将hub的安全性補全了較弱的區塊,確定了整個網絡的安全。無論分區的應用場景能夠提供多少的經濟價值,作為Cosmos網絡中的參與者實際都會是整個網絡安全的受益者。

值得一提的是,Cosmuo Hub網絡中擔任中央賬本的功能可能會影響去中心化,但是每個人都可以運作自己的hub,不同的分區也可以組成區域網路并運作獨立的Hub,不一定需要通過官方的cosmos hub。

網絡無需權限,任何人都能建立樞紐區塊鍊或分區,并有權拒絕其他區塊鍊的連接配接,形成自己的區域網路。同時分區的區域網路之間也可以互相通信,保證内部通信不受外網影響。Cosmos 網絡可以是一個試驗田,開發者和使用者都可以嘗試不同的社會和經濟形态。

2)Atom:價值捕獲

Cosmos Hub的原生代币是Atom,成為驗證者需要在Hub上質押Atom作為保證金來獲得挖礦的權利,并擷取手續費和交易收入。Hub上的驗證者不僅可以為Hub出塊獲得收益,還可以申請為其他分區的鍊出塊收獲額外收益。一旦節點作惡,Hub就會通過Slashing懲罰機制沒收Atom

提供跨鍊安全的方式

分區的鍊可以随時向Hub請求驗證,提供預期的交易費作為相應的獎勵;Hub上的每個驗證者可以申請驗證分區的鍊并質押Atom在Hub上開始工作。驗證人可以同時運作多個節點,一個負責為Hub驗證交易,剩下的節點可以為其他的分區出塊。

經濟模型

$ATOM是Cosmos Hub是的治理代币,通過質押Atom可以同時成為Hub和其他分區的節點獲得獎勵和交易手續費,包括Atom和其他分區的代币。從創世塊開始,Atom總量的1/3将會作為網絡驗證者的工作獎勵。

初始供應量2億枚,Atom采用通脹模型,第一年按照7%增發,用于節點等獎勵,之後每年增發比例會每年的抵押率波動:如果總質押的Atom小于供應總量的2/3,通脹率上升到20%;如果總質押大于供應總量的2/3,通脹率将會減小到最少7%。

目前總流通量達2.86 億枚 $ATOM,總市值達84億美金,在1月21日錄得最高市值119億美金。Atom的價值是節點作惡的很大一部分成本(質押數量*代币價值),而Atom的升值則通過增加作惡成本上給Cosmos的網絡安全提供了一定的保障。

當越來越多的區塊鍊加入Cosmos的網絡,不同的資訊、資産、交易通過Cosmos Hub交易,而Atom是Hub作為交通樞紐和價值樞紐的貨币,則是Hub上不斷增長的交易規模的捕獲方式。

治理機制

區塊鍊網絡,作為軟體的疊代、更新都是不可避免的,而如何進行改動以及應用就需要治理機制。Cosmos團隊在《Cosmos中的Hub治理機制流程》解釋了獨立的治理機制:

現實世界裡混雜着形形色色的經濟體系,公司,政府,國家,每一個參與者可能都有着不盡相同的目的,區塊鍊也是如此。源于哲學或者政治思想的分歧已經造成了比特币的分叉,以太坊的社群有時也難以達成共識,在某些情況下甚至影響了以太坊的更新。

Cosmos認為沒有一套普适的規則能夠完美的适應這個網絡中的每一個區塊鍊的應用場景,是以每一個分區的區塊鍊都可以獨立的運作自己的治理機制。 持有Atom的人都可以發起針對Hub或者Zone的治理提案,可以是軟體的更新,區塊的手續費,甚至安全政策等機制進行改變,Zone 或 Hub 的驗證者和介紹對提案進行投票,為的使用者和開發者提供了自由,可以不加限制的試驗潛能。

1.3g)異構鍊通信:相容以太坊

除了采用CosmosSDK的同構公鍊,其他異構公鍊也可以連接配接Cosmos生态,而在現有的區塊鍊中,Cosmos最先實作的是和以太坊的通信

顯而易見,作為開發者最多的生态,以太坊的相容可以讓更多的開發者加入Cosmos的生态并吸引更多的使用者。

區塊鍊的分類:

1.提供最終确定性的鍊(Deterministic):區塊鍊上的狀态都是确定的,即交易不可逆,比如基于Tendermint共識的區塊鍊。在任意時刻,從創世塊開始的每一個區塊可以被複現推演。

2.基于機率出塊的鍊(Probabilistic chain):區塊鍊的中網絡參與者隻能根據不同鍊上的比例,以一定的機率認為某條鍊是主鍊。比如說,使用POW的比特币,隻能通過确定區塊在最長鍊上來确認交易,通常需要等待6個區塊确認,也就是最長鍊規則。

如前文所述,IBC 跨鍊協定的前提是确定的交易,畢竟你隻能在自己的鍊上确定了交易之後才能和别人進行交易。是以在連接配接其他非确定性的區塊鍊時,比如以太坊,Cosmos提供Gravity Bridge 橋接以太坊的原生代币,加上EVMOS支援以太坊的智能合約的運作。

1.3g1)Gravity Bridge:Cosmos與以太坊的跨鍊橋

跨鍊橋是允許在不同共識機制、代币标準、治理模型的區塊鍊之間轉移資産和資料的方式,将資産保留在原鍊上,并在目标鍊釋放資産,并定義托管以及解鎖資産的條件。在2022年1月19日成功部署的Gravity Bridge橋接以太坊和Cosmos,通過IBC協定支援基于 Cosmos SDK 的鍊和以太坊之間轉移資産。

Althea 團隊作為Cosmos開發者生态裡的成員,在基于Cosmos白皮書中Peg Zone,一個代理橋可以連接配接Cosmos和其他不具備最終性的區塊鍊,的基礎之上開發無需許可的跨鍊橋,Gravity Bridge。同時,Gravity Bridge作為專屬于Cosmos和以太坊的跨鍊橋,不是直接作為Cosmos SKD的其中一個子產品,而是一個獨立于Cosmos生态的區塊鍊,并擁有獨立的代币用來激勵使用者和驗證者。Gravity Bridge 将擁有自己獨立的驗證者負責網絡的維護和安全,同時通過Cosmos 的共享安全,持有Atom的驗證者也可以為Gravity Bridge 出塊提供服務。

在跨鍊橋的設計上,可以分為:

1)基于信任的橋,引入信任的檢查者來執行:比如Avalanche Bride的跨鍊橋要求信任的見證人使用MPC技術,Secure Multiple-Party Computation也就是隐私計算中的多方安全計算,確定交易的有效合法,把跨鍊交易變成了了一個普通的鍊上的交易流程。

2)無需信任的橋:Gravity Bridge首先将需要轉移的資産鎖定在原來的鍊上,在驗證了資産的有效性後,再把資産映射到目标鍊上作為資産使用。

作為一個無需許可的橋,Gravity Bridge的治理将以DAO,去中心化的組織,的形式展開,并且DAO将持有一半的代币将來用于空投,生态發展,和流動性挖礦

1.3g2)EVMOS:Cosmos 的EVM中心

Evmos,即EVM on Cosmos,起源于Cosmos中最早構思相容以太坊EVM的Ethermint,是一個包含了Cosmos SDK,Tendermint共識,和EVM相容子產品的區塊鍊,即将在2022年1月下旬上線。

EVMO:以太坊樞紐

Evmos 作為相容EVM區塊鍊,在Cosmos生态中可以作為Hub連接配接特定應用場景的以太坊鍊,比如支援Defi去中心化金融的鍊,或者支援NFT的鍊,讓每個應用場景都能在獨立的區塊鍊中獲得最大的支援。

同時EVMO和IBC都将支援以太坊的代币模式,ERC20,這也意味着在Cosmos生态内通過IBC通信的其他非EVM相容的鍊也可以和以太坊的生态互操作。換句話說,Cosmos生态和以太坊生态就可以實作互操作了

而且今年即将更新的Cosmos SDK 的更新可以允許 Evmos 的相容鍊獲得跨鍊安全,EVMOS作為Hub就可以為其他相容EVM的分區的鍊提供安全。

經濟模型:社群共享價值

雖然以太坊生态中,隻有維護網絡的礦工可以獲得區塊獎勵,但是Evmos 獎勵所有為 Evmos 生态的參與者:

  • 質押獎勵(驗證者 + 委托者):40%
  • 團隊歸屬:25%
  • 使用獎勵:25%
  • 社群獎金池:10%

同時還對生态産生價值的行為進行獎勵,包括:

  • 使用者手續費返利
  • 流動性挖礦獎勵
  • 智能合約收入分潤
  • IBC 中繼器返利

2.多鍊的選擇:Cosmos vs Polkadot vs Avalanche

在多鍊網絡中,跨鍊的安全性和多鍊的擴充性是沖突的,Cosmos,Polkadot,還有Avalanche都提供了不同的設計方案。

可以把Cosmos,Polkadot,Avalanche,分别看成淘寶,天貓,和京東,有專業定制的Avalanche可能吸引更多企業使用者,有安全成本的Polkadot可能吸引更多有資金支援的開發者入駐,Comos則是允許萬物生長的淘寶。

各種商家入駐,帶來各種類型的流量和使用者,最終留下的蓬勃發展的互聯的區塊鍊生态。技術可能有更好的解決方案,但是最終被采納的方案一定是符合實際需求的技術。

如果隻是寄希望于一個區塊鍊能夠滿足所有的需求或者技術場景,那麼大機率這個希望會落空。**其實多鍊的網絡并不一定隻有一個赢家,Polkadot和Avalanche也可以作為Cosmos生态的分區生态給月開發者和使用者都更多的選擇。**不過,COSMOS其實仍然是相對年輕的嘗試,目前依然是運作在輕節點的架構協定,更像是網絡的HTTP通信協定,還沒經受網絡攻擊或者使用者湧入的檢驗。也許給予足夠的時間,Cosmos正在按照自己的路線圖一步一步實作他的願景。

3.多鍊的必然性:Web 3.0的前提

單一的公鍊是無法支援大規模的應用和主流使用者的使用的。多鍊的底層才會帶來新的想象空間,隻有足夠多的公鍊,足夠大的應用場景,才能真正提供去中心化的、使用者擁有主權的Web3.0

3.1)多鍊的世界:無限擴充的子產品化區塊鍊

公鍊承載的流量是有限的,在一個公鍊上實作所有的應用場景是不現實的。當主流人群采用區塊鍊作為底層的技術時,我們可能需要不同的鍊針對不同的應用場景進行設計,而子產品化的區塊鍊使得搭建區塊鍊變得簡單

3.1a)區塊鍊設計:不可能三角

在區塊鍊的設計中,有一個著名的不可能三角,即:

1)去中心化:是否有集中化權力中心,主要以節點的數量來衡量

2)可擴充性:資料吞吐量是多少,主要以TPS,Transaction Per Second每秒事務處理量來衡量。

3)安全:是否能夠低于網絡攻擊,包括女巫攻擊、DOS等

所有的公鍊從設計上都試圖在一條主鍊上同時實作這三個目标,都隻能在這三者中去其二,比如在子產品化之前的以太坊等公鍊,在保證了去中心化和安全的同時隻能犧牲可擴充性。并且大多數的區塊鍊設計是以一體化的方式設計,也就是單片式區塊鍊,很難在不影響其他功能的同時提供某一種性能,直到可拆解、可組合的子產品化的區塊鍊設計。

子產品化的設計将區塊鍊從這個不可能三角中解救出來,讓不同的子產品負責不同的目标,通過組合子產品完成目标,而不是要求一個子產品完成所有目标。當區塊鍊可組合,可擴充,越來越多的區塊鍊可以提供更多的應用場景,支援越來越多的人使用區塊鍊,作為底層的區塊鍊技術才可能支援未來的Web 3.0

3.1b) 區塊鍊設計:專業化分工

不管是去中心化,安全性,還是可擴充性,這些性能都是描述區塊鍊的工作過程的結果。我們在前文所述的工作流程可以概括為:

1.共識:讓參與網絡的節點達成一緻,每個節點都按照相同的順序複制同樣的結果,決定了區塊鍊的去中心化程度和安全性。可以了解為交易的确認。

2.資料可用:當節點完成共識并得出結果後,鍊上有足夠的空間可以儲存并且對所有人都可以使用,可以了解為交易的清算。

3.執行:完成所要求的功能并将新的結果上鍊,執行的速度決定了區塊鍊是否可擴充支援更多的交易。可以了解為交易的結算。

雖然大多數的區塊鍊都是将三種功能放在同一條鍊上進行執行,但是以太坊已經開始探索通過Layer2,也就是在保留以太坊的共識和智能合約層的同時新添一層獨立的結算層解決擴充性。這其實就是區塊鍊的分工化設計。

經濟學之父亞當·斯密早在18世紀就提出了現代經濟的基礎是分工,區塊鍊也同樣适用。子產品化的設計将區塊鍊拆成不同的元件,每個元件都可以優化,再組合成區塊鍊。區塊鍊設計從此進去子產品化時代,搭建區塊鍊也可以像搭建積木一樣,我們可能迎來指數級的效率增長。

**3.2)多鍊的Defi:**完整的金融體系

連續爆發的2020年的defi summer 和2021年的nft summer帶來了大量的資本迅速湧入加密生态,龍頭公鍊以太坊也無法承載快速流入的大資金,導緻大量的以太坊流量外溢,帶來了一些公鍊亮眼的表現,比如Avalanche,Solana,但是從資料表現來看以太坊依然是占據着絕對的主導地位。

金融的可組合性還有一個大的前提需要完成,那就是跨鍊的資訊互通。現在各個公鍊都是根據自己鍊上生态的資産和資訊決定價格,像是資料孤島。雖然有預言機能夠提供市場價格,但是現在的市場和技術尚未成熟。鍊上危機四伏,安全事件幾乎從未停止。

3.2a)分割的戰局:流動性浪費

但是對于金融市場來說,資産定價的底層是流動性,流動性的前提是資訊對稱。在資産流動前需要資訊的流通,市場的有效就基于市場的價格能多大程度的反應影響市場的資訊。顯然,基于風格的區塊鍊上的市場資訊在缺乏有效的溝通管道上依然存在着價格偏差。

雖然有大量的工具和機器人存在鍊上能夠在發現跨鍊的價格不對稱套利拉平價差,但是這些隻是基于利潤的短期套利,并沒有真正的讓資産流動在不同的鍊之間,本身還是在于不同的鍊之間并沒有建立跨鍊的資産交易通道讓資産可以在兩端互相流通。

多鍊的生态導緻流動性割裂,每個鍊都沉澱了一定的流量和資産在鍊上。但是不同的公鍊之間缺乏溝通管道使得這些資産無法流通。同樣的資産缺因為不同的鍊的映射方式而變成不可交易的資産,或者說交易成本過高的資産,過高的交易摩擦造成了流動性浪費。

3.2b)跨鍊通信:重構金融網絡的第一步

區塊鍊技術正在重構新一代的金融基礎設施,從提供流動性的交易所和資本的借貸市場,到提供風險管理工具的利率對沖,期權,期貨市場等都隻是金融系統裡的拼圖的一部分。完整的金融市場是一張完整的拼圖,當資産能夠自由的從借貸市場,流通到貨币市場,或者更高風險的資本市場時,金融系統才算形成。而這些流通的管道,而cosmos通過IBC協定和橋建構的網絡提供了金融網絡流通的管道。

3.2c)多鍊的Defi:應用前景

當不同的鍊之間的資産可以流動,我們或許可以發現新的應用場景:

1)跨鍊借貸:借貸是金融系統中最底層的需求,為交易者提供流動性去參與金融系統中所提供的各種各樣的投資和收益機會,不論是基于什麼鍊,還是什麼标準的代币。目前的使用者可以在以太坊上抵押ETH,在Cosmos上接觸Atom,在Gravity上的DEX,去中心化交易所,獲得固定甚至投資更高的收益,大大增加不同鍊上的流動性,打開新的交易機會。

2)信用評分:當使用者在不同的鍊上都留下部分記錄,比如以太坊上是借貸,Cosmos上是存款,那麼在不同的鍊上的行為就隻是組成使用者的信用的一部分記錄。當所有的借貸資訊,交易資訊可以彙總進行分析,可以幫助不同的金融機構針對不同風險偏好、資金實力、交易政策的使用者提供不同的解決方案

3.3)多鍊的社交:統一的身份

現實生活中,我們在公司上班,在銀行貸款,在畫廊逛展,我們可能擁有不同的身份。在Web 2中,我們每一個人都擁有一個微信賬号、支付寶賬号、抖音賬号,但是這些都是獨立的賬号,你需要記憶這些賬号資訊并且你在這些應用上的行為也不能在其他的平台上展示。比如你并在微信上的朋友并不一定能發現你是抖音上的搞笑視訊部落客。

在多鍊的世界中,這些行為都可以鍊上記錄并展示,這些資料可以包括金融的資産,交易的行為,參與的活動。不同于傳統社會中細碎的、散落的、破碎的資料存儲,鍊上可以就可以看到你的身份,你的興趣,你的經驗,你可以發現和自己收藏同一個NFT的藝術愛好者,也可以找到一起玩遊戲的玩家。

3.3a)多鍊的社交:應用前景

Web 3 的社交3.0時代裡,,那人與人之間的溝通、合作、社交會不會發生其他的改變

1)DID ,Decentalized Identity 去中心化的身份辨別:一個人可以不隻是defi世界的金融高手,也可以是一個gamefi的遊戲王者,甚至是NFT的創作者,而這所有的身份都可以通過一個ID展現。你所有的社會屬性,工作技能,藝術品味都能通過DID被被人發現和認可。

2)DAO,Decentralized Autonomous Organization去中心化組織:DAO 的去中心化的治理讓人們真正的參與到社群的形成、治理、和生産,過程透明,給予了社群成員參與的權利。成員既是這個社群産品的使用者,也是塑造這個社群的團隊,這些通過而這吸引到了更多的人群想要參與。

總結

程式員總夢想改變這世界,中本聰用比特币做到了,vitalik用以太坊做到了,提出Cosmos 網絡的Jae kwon是不是也能用cosmos做到呢?

從2014年開始構思的Cosmos網絡,可以說是Right tech wrong time,生不逢時的Cosmos在8年之後再次回到了聚光燈下,這次會不會是right tech right time呢?

技術就是這樣的,可能某一個拐點出現了,然後就進入了一個爆炸式的增長。這個拐點可能非常快就發生,也可能幾年後才發生,我們無法判斷什麼時候會發生,就像我們無法想象這會帶來什麼樣翻天覆地的變化。但是當我們身在其中,我們可能會發現,原來回過頭去看,有些事情注定會發生。

繼續閱讀