STA:Staking:了解以太坊2.0质押程序

来源 | Attestant

作者 | Jim McDonald

Eth2将使用Proof of Stake(权益证明)来维护网络安全,但实行PoS需要每个活跃的参与者(“验证者”)拥有一定资产来进行质押。如果持有资产的是eth1账户,那么这些资产需要转移到eth2的验证者处才能进行质押。

验证者的职责主要是提议区块并证明(attest)其他区块,而质押者(staker)则提供资金进行质押。验证者和质押者的角色可以是相同或不同的实体,最佳实践建议将这两者区分开以最大程度保证资金的安全性。

将资金从eth1转移到eth2以及定义质押者和验证者的过程称为Staking,第一步是在eth1上发送质押存款交易(staking deposit transaction)。质押存款交易包含的细节信息有质押者身份、验证者身份等等,并被统称为存款协议(deposit agreement)。本文将详细探析抵押存款,并阐释在eth1上提交ETH给eth2验证者的过程。

NFT订阅平台MintStars完成60万美元融资:5月11日消息,NFT订阅平台MintStars宣布完成60万美元Pre-Seed轮融资,Polygon Labs和Spank Chain领投。MintStars平台基于Polygon区块链构建,创作者能够通过订阅和市场销售将其内容货币化,粉丝也可以通过宣传内容或收集独家内容并将其转售给MintStars市场来获利,相关内容的版税收入会返还给原创者,平台上的付款以USDC进行。[2023/5/11 14:57:43]

      1 创建存款协议

存款协议将对质押者和验证者进行定义,并构成存款程序所需交易的基础。

Hiro宣称其Stacks代币(STX)不再是证券:Hiro(前身为Blockstack)上周宣布,其Stacks代币(STX)不再是证券,因此,Hiro将停止向SEC提交年度报告。Blockstack于2019年完成了SEC批准的首次代币销售,筹集了超过2300万美元。(decrypt)[2021/5/6 21:27:34]

图1:存款协议与其参与者

2 验证者身份证明

要确保将存款交给了正确的验证者,就需要验证者身份证明。验证者通过将其公钥添加到协议中来证明自己的身份:

图2:验证者身份证明

注意,由于是在eth2中对验证者进行身份证明,因此使用的是eth2公钥而非eth1公钥。           

Gate.io Startup打折福利第27期BTC8折认购结果已公布:据官方公告,Gate.io Startup主流币打折福利第27期BTC 8折认购结果已公布,本次认购总共有1,452人下单,下单总价值超过242万美金。根据规则,项目认购成功后Gate.io将根据每个人的下单情况和认购系数进行BTC的分发。详情点击原文链接。[2020/8/31]

3 质押金额

其次,存款协议中需要包含质押金额,以确保双方(以及双方网络)就质押金额达成一致。质押者可以将其期望质押的金额添加到协议中:

图3:质押金额

       4 提款身份证明

DLive BTT Staking年收益率达3655.32%:据DLive网站数据显示,全新的DLive BTT Staking功能现已正式上线,DLive BTT Staking年收益率达3655.32%,BTT质押总数达14.5亿。DLive是由BitTorrent和TRON基金会支持的区块链上实时媒体直播社区,用户可以在DLive上发现精彩的游戏和频道,并通过观看DLive上的内容来获得收益。[2020/4/24]

提款身份证明用于提供验证者提出存款的账户。质押者可以通过向协议中添加可操纵的公钥来识别提款账户身份:

1. 公钥经由哈希以压缩其大小;

2. 哈希字符串的首字节由类型标识符代替(目前标识符为“0”)

动态 | Coinbase、Bitstamp的BTC/USD市场份额已超过Bitfinex:根据最近的Coin Metrics 报告,Bitfinex的BTC/USD市场份额在今年年初保持最大交易量之后急剧下降。相关图表显示,Bitfinex在今年5月份的BTC/USD交易量位居第一,但随后便持续下滑,被Coinbase率先超越,而后Bitstamp在9月也反超了Bitfinex。其市场份额的持续下降可能导致Bitfinex在未来将被Kraken超越。据分析,下降的原因与一直以来围绕Bitfinex和Tether的一系列诉讼有关,另外,Bitstamp的新交易费用低于Bitfinex,这使Bitstamp在过去几个月中获得了更多的市场份额。尽管在4月到7月之间,Bitfinex相较于Bitstamp在交易量方面遥遥领先,但是在新的费用结构开始生效后,Bitstamp迎来了增长,9月Bitstamp已完全超过Bitfinex,而在截稿时,按BTC/USD交易量计,10月份Bitstamp的市场份额明显高于Bitfinex。(AMBCrypto)[2019/10/23]

图4:提款身份证明

注意,提款身份证明使用的也是eth2的公钥。因此,其必须直接由质押者提供,而无法像eth1智能合约通常那样从交易签名中恢复。

还要注意的是,如果验证者和质押者是同一实体,则应使用不同的密钥进行验证者身份识别和提款身份识别。如此以来提款密钥可以安全地离线保存,直到质押者做好提款准备。

5 验证者授权

要表明验证者同意遵守协议条款进行验证,则需要验证者授权。验证者要使用与验证者身份证明相同的密钥对协议条款进行签名来进行授权,并将该签名添加到协议中:

图5:验证者授权

6 提交存款协议

此时,存款协议中包含四条信息:验证者身份证明、质押金额、提款身份证明和验证者授权。如果质押者想继续完成存款,还需要将包含该协议和资金的交易发送给eth1存款合约(deposit contract):

图6:提交存款协议

此处有两点需要注意:

1. 质押者没有在存款协议中明确授权,而是在交易广播之前将其签名添加到交易中提供所需授权;

2. 交易必须附带存款协议中所涉及的ETH确切金额,任何其他金额都将导致交易被存款合约拒绝。

接着由以太坊存款合约(deposit contract)接收并处理交易,如果一切正常进行,则存款合约将创建一个存款收据事件,收据包含存款协议中的所有数据,并且表示存款合约已经接收存款协议和所质押的ETH。

7 激活存款协议

与前序步骤不同,激活合约主要进行在eth2中。

Eth2会跟踪eth1的更新以获取存款收据。每个eth2节点在其提议的区块中都包含有最新的存款收据。随着这些区块的最终确认,存款就会成为eth2整体状态的一部分。存款收据将作为验证者状态存储在eth2中。

同样,验证者也会跟踪eth2中的更新以获知验证者状态的变化。当观察到带有公钥的验证者状态条目时,说明该存款已在eth1上完成,且已经得到了eth2的识别,剩下的就是证明工作了。

图7:激活存款协议

全程

结束提交和激活步骤之后,就完成了在eth2中质押eth1资产的全部过程:

图8:质押存款过程

注:尽管在理论过程中没有说明,但随着安全性的提升,Staking的过程会存在许多延迟。譬如在eth2中,在获取到存款收据事件和将该信息添加到验证者状态之间会存在一定的延迟,这样做是为了确保eth1网络中不会发生区块链重组而导致存款无效。

原文链接:https://www.attestant.io/posts/understanding-ethereum-staking-deposits/

转载请注明:ECN以太坊中国

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金星链

[0:62ms0-1:150ms