比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads
首頁 > MANA > Info

Cosmos代碼審查:Cosmos SDK才是殺手锏_COSM

Author:

Time:1900/1/1 0:00:00

摘要:Cosmos怎樣解決今天最難的區塊鏈問題。

讓我們從查看聲明開始這篇Cosmos代碼回顧。就這一個,因為這是個大問題。“Cosmos解決了今天最難的區塊鏈問題。”

可伸縮性——TendermintBFT解決了這個問題

可用性——CosmosSDK解決了這個問題

互操作性——IBC協議解決了這個問題

只有三件東西,但這里有很多東西要打開。Cosmos是一個由不同事物混合而成的大包,所以有時候要知道我們在說什么有點棘手。我們有以下內容;

Cosmos—基礎

拜占庭共識Tendermint—pBFT共識引擎

CosmosSDK—允許您構建dapps的軟件包/集合(但不是在以太坊智能合約的意義上,而是在每個dapp的區塊鏈意義上)

IBC—通信協議

Amino——數據傳輸的一種特定協議(本質上是原生buff——這個聲明被過分簡化了,但現在還不是那么重要)

Cosmos生態質押服務項目Supernova啟動第二個測試網:12月17日消息,基于Cosmos生態的質押服務項目Supernova宣布已啟動第二個測試網。[2022/12/17 21:50:27]

Gaia-第一個Cosmos“Hub”,是由運行在tendermint上的CosmosSDK構建的

因此,任何人都可以使用運行在Tendermint上的CosmosSDK(軟件開發工具包)構建一個dapp(區塊鏈),通過使用Cosmos,它可以兼容IBC,因此可以進行互操作。

因此,可伸縮性通過兩個領域來解決,第一個領域是TendermintpBFT,第二個領域是每個dapp都有自己的共識系統(Tendermint)。因此,如果你構建一個Cosmosdapp,你不是在Gaia上構建它,而是在構建一個全新的區塊鏈,但是因為它兼容IBC,所以它可以與其他使用CosmosSDK構建的區塊鏈進行交互(因此是可互操作的)

可用性,是因為CosmosSDK,它封裝了所有棘手的部分,共識,通信,p2p,所有這些都由CosmosSDK來處理。

Injective社區將進行鏈升級以允許基于Cosmos IBC的鏈與Injective進行交互:官方消息,Injective宣布,社區已投票支持Cosmos IBC,社區將進行重大鏈升級,允許任何基于Cosmos IBC的鏈(如Band Protocol、Terra),與Injective進行交互。[2021/10/6 20:08:54]

因此,以上內容涵蓋了可伸縮性、可用性和互操作性。

上面的代碼在令牌方面有一些有趣的含義,因為除了Gaia(有點像CosmosSDK的演示示例)之外,實際上與Atom沒有任何關系。您不需要它來構建自己的Cosmos區塊鏈,也不需要它來實現IBC或互操作性。你只需要stake它就行了,因為Gaia不支持在它上面建造。

撇開這個不談,讓我們看看Gain,然后從那里深入研究。

只有20個提交?這通常是一個很大的警告信號。但這里是100%沒問題,因為這只是CosmosSDK的實現,真正的工作是CosmosSDK和Tendermint。我們稍后會講到。Gaia本身是一個相當小的、直接的代碼庫,這是因為它只是CosmosSDK的“演示”。CosmosSDK和Tendermint是真正的重量級舉重選手。但讓我們看看它是如何工作的。

數據:基于Cosmos生態已有143個項目正在開發:1月28日,The Block統計數據顯示,當前基于Cosmos生態系統,已有17個不同垂直領域共計143個項目正在開發中。[2021/1/28 14:15:23]

Golang項目,所以我們從/cmd/開始

命令行界面,用于創建帳戶,發送轉賬,檢查余額。這包括了RPC/HTTP端點,因此我們將研究它,但首先,我們需要gaiad-daemon,它運行節點/軟件。

所有通常包括候選人,cobra/viper的命令行。這里的Tendermint很有趣,cosmo-sdk很有意義。

帳戶、驗證器和共識節點的Bech32前綴。常用命令的候選人。

app.go

這很好地概述了從CosmosSDK中導入什么是必需的,baseapp是核心框架,codec處理所有組件間的通信,用于基本賬戶和轉賬的認證和銀行。分配,mint(塊獎勵),slashing(壞行為),staking(dPoS)都包括在內。這就是你所需要的。

Cocos-BCX與BSC就區塊鏈游戲等領域達成合作:據官方消息,下一代游戲數字經濟平臺Cocos-BCX與幣安智能鏈 BSC共同宣布,雙方將就區塊鏈游戲,NFT以及DeFi等內容達成合作。此次與BSC的合作,Cocos-BCX已開啟NFT盲盒空投活動,新春集五福挖礦活動,該活動現已上線BSC官網。此外,Cocos-BCX已開啟BSC上推廣員活動,詳情可查看Cocos-BCX官方宣發。[2021/1/28 14:12:05]

只設置和初始化組件,這個文件將主要有設置樣板文件。

這是復制/粘貼的東西,只需要設置鍵值存儲,然后你需要設置所有的保存器(保存器管理所有的工作-我們稍后會講到)

AddRouteforproposal(http/rpc),允許社區設置和表決提案。

這很有趣,setorderbeginblocker,我們造幣,然后分配,然后salshing,相對于setorderendblocker,我們管理,然后staking。因此,我們首先生成塊鑄幣,然后分發它,然后通過委托獎勵(在塊之后)削減跟隨。我得再深入研究一下為什么是這個順序。

政策 | 馬恩島收緊對加密貨幣公司和ICOs活動的政策:據bitcoinist消息,馬恩島最近更新了有關以英國為依托的加密貨幣公司的指定企業注冊政策。政策變更的詳細信息是馬恩島金融服務管理局(IOMFSA)于近期發布的更新的指定企業注冊文件的一部分。根據該文件,IOMFSA將不再在島上注冊任何加密貨幣業務,除非有關公司滿足兩個要求:在島上至少有兩名董事會成員;企業的管理和控制必須在島上進行。

IOMFSA認為,更新后的政策有助于打擊洗錢和恐怖主義融資。像許多其他島嶼城市一樣,馬恩島往往受到批評,成為洗錢者和逃稅者的避風港。[2018/11/14]

同樣,主要是來自CosmosSDK的樣板文件。

就是這樣。

網絡是設置腳本。文檔是文檔,其余的是測試系統。這就是運行您自己的Gaia(Atomstakingsystem—這就是它的全部內容)所需的所有“代碼”。

這是一個很好的跡象,它向您展示了CosmosSDK和Tendermint是多么強大。

公平地說,如果這是另一個區塊鏈而不是Gaia(也就是Cosmos),我不會有什么印象,因為他們什么都沒做,但是既然Gaia是Cosmos,是CosmosSDK,是Tendermint,我們可以繼續。

CosmosSDK,真正的秘密武器。5k提交,86個分支,112個版本,92個貢獻者,這個東西非常活躍。出色的公關和問題管理,出色的抽象和封裝。我們已經在Gaia實現中看到了很多;

baseapp——核心客戶端——與服務器編解碼器交互的客戶端——管理所有的通訊服務器——運行服務器端存儲——處理所有的存儲x——這是所有核心模塊的所在

在x/我們有auth,銀行,分銷,ibc、gov、mint、staking。在不到100行代碼中實現您自己的可互操作的高可伸縮性dPoS區塊鏈所需的一切。

收取手續費,開始/結束塊是你做大部分工作的地方,你希望在得到一個塊之前和之后發生什么。這是您通常放置大部分工作邏輯的地方(gaia并不真正需要它)。對等過濾器,狀態檢查器,版本管理。這是非常棒的生產級代碼。

不用多說,令人印象深刻的是tendermint、abci和cosmossdk之間的交互方式。它的設計和構思都很好。

我們不打算深入討論太多,客戶端,密鑰,rpc,tx生成。區塊鏈樣板文件,即使它是非常棒的區塊鏈樣板文件。

編解碼器是一個amino包裝器。Amino也是固體。但是/x/才是真正的工作所在,所以讓我們來看看bank/mint//staking。

我們從keeper開始。

Keeper定義了我們能做什么;

Setcoins、SubtractCoins、AddCoins、InputOutputCoins、DelegateCoins、UndelegateCoins

這里需要注意的是,keepers是功能包裝器。當你把它全部歸零,在區塊鏈中困難的部分是分布式系統部分,共識。這是由Tendermint處理的,共識基本上是一個“保存”屏障。通常,您只需簡單地說1010=20,因此讓我們將20保存在存儲(數據庫)中。在這種情況下,您需要協商一致,但是它已經被處理好了,您不需要擔心它,因此您只需輸入1010=20并存儲。所以所有的Keepers都只是簡單的基本功能。

所以對于像AddCoins這樣的東西,它只需要一個地址,一個硬幣類型,然后加上金額。

就是這么簡單。

順便說一句,這是副作用免費代碼,不是你經常看到的東西,偉大的設計原則。

CosmosCodeReview總結:

Gaia是沒有意義的,它只是一個CosmosSDK的演示,但是CosmosSDK很好。我想我也會用它來做一些鏈。

感謝Tendermint團隊的高級軟件顧問AlessioTreglia,他補充說:“Gaia只有在最近從@cosmossdkrepo的原始位置提取后才提交了20次。”

作者:AnderCrojeAndre是一位擁有20年開發經驗的軟件架構師。在5個月內修完3年的計算機科學課程后,他被要求繼續當講師。在深入研究移動安全和密碼學之前,他進入電信行業,開發大數據、高交易基礎設施。過去5年,他一直致力于打造定制的金融科技解決方案,并利用區塊鏈技術為非洲無銀行部門提供降低成本的金融產品。

編譯:共享財經Neo

Tags:COSCOSMOSMOSMOCOSHI價格MEGACOSMCosmostartercosmos

MANA
區塊鏈基金巨頭DCG: 加密寒冬已結束_BERT

美國主要區塊鏈風險投資公司DigitalCurrencyGroup的首席執行官BarrySilbert在接受彭博采訪時表示,加密冬季很可能會結束.

1900/1/1 0:00:00
網傳Facebook穩定幣或將在Zilliqa上發布_GDO

Zilliqa發布分片智能合約推動價格上漲6月10日,第一個使用分片技術的公鏈平臺Zilliqa在其成立二周年之際宣布推出首個基于分片的智能合約.

1900/1/1 0:00:00
谷燕西:Fnality 金融市場基礎設施進化的一個里程碑_LIB

最近以瑞銀牽頭的多家金融機構聯合發起成立公司FnalityInternational。Fnality從十四個發起銀行中總共募集了五千萬英鎊.

1900/1/1 0:00:00
JEX上線月BTC期權0710公告_BTC

BTC看漲期權 代碼月BTC看漲0710期權標的BTC合約類型歐式看漲期權計價單位USDT最小價格單位0.0001USDT合約比例2000:1.

1900/1/1 0:00:00
比特幣不好上車?那是因為你沒用過這些幣圈神器_CAS

一開始,大家用的都是BitcoinCore錢包。中本聰為比特幣網絡開發的開創性軟件,給早期用戶提供一站式的服務:對于最早期的用戶來說,這就是一個全節點、錢包以及礦機軟件.

1900/1/1 0:00:00
LTC“神助攻”上線在即,歷史走勢現翻倍機會_LTC

今年8月,萊特幣將迎來第二次減半。從供需角度來看,區塊獎勵減半意味著產量減少,礦工挖礦成本激增,而隨著需求增大,LTC價格將隨之水漲船高.

1900/1/1 0:00:00
ads