2017年以來,隨著區(qū)塊鏈項目數(shù)量的井噴式上升,人們愈發(fā)注意到鏈與鏈之間缺乏互連互通的能力,以致成為了一個個孤立的網(wǎng)絡(luò),跨鏈技術(shù)應(yīng)運而生。作為跨鏈技術(shù)明星項目之一 Cosmos,其 Staking 經(jīng)濟收益問題也備受關(guān)注。本文將結(jié)合 Cosmos 源碼就下列問題進行詳細解析:
· Staking收益如何產(chǎn)生
· 收益分配規(guī)則
· 收益領(lǐng)取機制
整體架構(gòu)
Cosmos 采用了模塊化設(shè)計,主要模塊在源碼 Cosmos-sdk/x 目錄下:
Auth:賬戶和交易的驗證和授權(quán)管理
Bank :發(fā)送交易等
Governance:鏈上治理和投票
Staking:Bonding、Delegation 相關(guān)操作
Slashing:處罰驗證人節(jié)點相關(guān)操作
Mint:Staking token 生產(chǎn)管理
DistribuTIon:交易 Fees,Staking token 分配
本文探討的三個問題主要涉及 Auth、Mint、DistribuTIon 模塊,它們分別負責(zé)處理交易費、Token 生產(chǎn)、Token 分配和領(lǐng)取功能。
收益產(chǎn)生
Cosmos 的 Staking 收益由兩部分組成:交易產(chǎn)生的 Fees 和基于抵押率的浮動 Token 通脹。每生產(chǎn)一個區(qū)塊,上述兩部分收益都會進入全局收益池。下圖為代碼層面的調(diào)用棧。
Fees 的產(chǎn)生
Fees 產(chǎn)生的目的在于有效限制全節(jié)點 State 的增長速度,并限制垃圾交易的發(fā)送。驗證節(jié)點在處理每一筆交易時會將 Fees 添加至 CollectedFees 中。
Token 通脹
Token 通脹機制目的在于:一、針對定制的目標(biāo)抵押率,允許根據(jù)市場需求維持靈活的通脹率;二、在抵押率和流通率之間取得平衡。具體可分為以下三種情況:
· 如通脹率小于目標(biāo)抵押率(Cosmos 目前為67%),通脹率會持續(xù)上升,直至達到最大值(目前為20%);
· 如通脹率達到目前抵押率,則通脹率會保持固定;
· 如通脹率大于目前抵押率,通脹率則會持續(xù)下降,直至達到最小值(目前為7%)。
收益分配
每生產(chǎn)一個區(qū)塊,Cosmos 都會實時結(jié)算上一個區(qū)塊產(chǎn)生的 Token 和 Fees。這些 Token會被分配到三處:上一輪出塊人、社區(qū)基金池、上一輪驗證人。
首先,收益會分配給上一輪 Proposer。Proposer 總收益 = BaseProposerRewards(1%) + BonusRewards(0%-4%)
其中,BonusRewards 取決于上一輪參與驗證的 VoTIng Power 所占的比例。
然后,按照 VoTIng Power 比例分給所有驗證人。
當(dāng)收益分配至具體驗證人時,會根據(jù)傭金率來分配委托人和驗證人之間的比例。
最后,按照目前2%的比例存入社區(qū)基金。
收益領(lǐng)取
除驗證人和委托人的主動領(lǐng)取外,以下情況均會觸發(fā)收益領(lǐng)?。?/p>
?bonding、unbonding 或 re-delegating 發(fā)生
?驗證人改變其傭金率
所有的收益領(lǐng)取必須是全部的收益領(lǐng)取,而非部分領(lǐng)取。
來源: HashQuark社區(qū)?