织梦CMS - 轻松建站从此开始!

我的网站

当前位置: 主页 > 竞争币 > 以太坊

开发者必读:代码解读成为以太坊 2.0 验证人,探索信标链激励机制 (10)

时间:2020-06-26 09:20来源:未知 作者:admin 点击:
(向左滑动,查看完整代码) 核心代码行: reward_numerator = get_base_reward(state, index) * (attesting_balance // increment)rewards[index] += reward_numerator // (total_balance // in

(向左滑动,查看完整代码)

核心代码行:

reward_numerator = get_base_reward(state, index) * (attesting_balance // increment) rewards[index] += reward_numerator // (total_balance // increment)

(向左滑动,查看完整代码)

在理想状态下验证人的收益就是 4 倍的 BaseReward ,而 BaseReward 的计算公式如下:

def get_base_reward(state: BeaconState, index: ValidatorIndex) -> Gwei: total_balance = get_total_active_balance(state) effective_balance = state.validators[index].effective_balance return Gwei(effective_balance * BASE_REWARD_FACTOR // integer_squareroot(total_balance) // BASE_REWARDS_PER_EPOCH) # BASE_REWARD_FACTOR = 64 基础奖励倍数 # BASE_REWARDS_PER_EPOCH = 4 每个 Epoch 的基础奖励 # effective_balance 验证人的有效余额 # integer_squareroot(total_balance) 所有有效余额的开平方

(向左滑动,查看完整代码)

出块人将会得到 BaseReward / 8 的出块奖励:

def get_proposer_reward(state: BeaconState, attesting_index: ValidatorIndex) -> Gwei: return Gwei(get_base_reward(state, attesting_index) // PROPOSER_REWARD_QUOTIENT)

(向左滑动,查看完整代码)

参考资料:

https://www.chainnews.com/articles/502750353901.htm

https://prylabs.net/participate

https://github.com/ethereum/eth2.0-specs/blob/dev/deposit_contract/contracts/validator_registration.vy

https://github.com/ethereum/eth2.0-specs/blob/dev/specs/phase0/beacon-chain.md

https://ethos.dev/beacon-chain/

(责任编辑:admin)

织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容