Stafi Protocol
  • Stafi 协议
  • 白皮书Whitepaper
    • Stafi 协议白皮书
    • Stafi 经济白皮书
  • Staking
    • Staking
    • 验证人(SV)
    • 提名人
    • 创建FIS账号
    • 注册验证人
    • 提名验证人
  • Staking合约
    • 总体介绍
    • Staking 合约(SC)
    • 特殊验证人(SSV)
    • rToken
    • 多签账户
  • FAQ
Powered by GitBook
On this page
  • Staking合约
  • 质押过程
  • 赎回过程
  • 派息过程
  • 交易过程
  • 最终确定性

Was this helpful?

  1. Staking合约

Staking 合约(SC)

Staking合约

Staking合约指的是Stafi链上记录和更新rToken和原生token映射关系的一组代码。后文我们用英文SC简称代替。

Stafi每支持一个PoS项目的Staking就会有一个SC,随着某个项目委托资产量的增加,Stafi会为此项目,创建多个SC,以分散管理资产,控制风险;与此同时,Stafi支持的PoS项目不止一个,严格来说我们应该用复数SCs,代表这是一个合约组,但为了简便,我们依旧用SC。在所有的SC中,支持XTZstaking操作的Staking Contracts称之为 XTZ_SC,支持Atom staking操作的称之为Atom_SC,通过SC ,Stafi为用户实现质押,赎回,派息,交易等操作。

质押过程

当用委托人在Stafi上申请质押的时候,SC将用户委托的token放在一个多签账户,多签账户为SC在原链上创建的一个特殊账户,由Stafi链上的多个SSV控制,任何一个SSV都无法单独控制;然后SC将多签账户中的token委托给原链上值得信赖的验证者,参与到Stake当中;最后,SC生成对应数量的rToken,发放到用户的Stafi账户,质押过程完成。

赎回过程

当用户在Stafi上申请赎回的时候,SC会先锁定用户Stafi账户中的rToken,并发起取消委托Staking,经过锁定期,取消委托完成后,SC将多签账户的token转移回用户在原链的账户(此过程需要SSV签名验证),然后销毁之前锁定的rToken,赎回过程完成。

由于PoS链Staking锁定期的存在,用户从申请赎回到赎回完成,需要等待一定的时间。

派息过程

派息是指向用户派发Staking收益的过程,SC定期向用户结算一次收益,收益以rToken方式结算。这意味着收益是自动参与复利的。在派息时点,SC会和原链通讯,获取收益状况,并更新各账户rToken的数字。

SCs向用户结息的周期是统一且相对固定的。受委托的验证者向多签账户结算收益的频次,和出块的频次相同,根据不同的PoS链不同,大约在几秒钟到几分钟时间不等。但SCs会将结息周期均一化处理,统一为一个固定的,较长的结息周期,例如一天一次(可通过治理投票调整)。这样做可以减少和原链的交互次数,节约资源。

另外,Stafi对同一token类型的所有委托人的收益做均一化处理,以给用户更稳定的预期,这点和大多PoW的矿池的做法相似。

交易过程

交易过程不需要和原链交互,用户A请求向用户B转移rToken时,SC只需要将A用户的Stafi账户中的rToken转移到B用户的Stafi账户即可,与此同时,rToken所代表的赎回权和收益权也从A用户转移到了用户B手里。交易完成后的下一个派息时点,Staking收益会结算给用户B。

最终确定性

大多PoS链是出块即确定模型,只要交易被打包到区块里,这条交易就不能再篡改,也有一部分PoS链是概率确定型,类似于比特币,需要等到N个区块后,才能把交易被推翻的概率降到临界值以下。基于PoS链的这个特点,SCs在处理质押过程,赎回过程,包括派息过程时,都会有一定时间的延迟等待期。如果交易没有成功上链,SCs也会向用户做出操作失败的反馈。这样做避免Stafi和原链的数据产生不一致。

Previous总体介绍Next特殊验证人(SSV)

Last updated 4 years ago

Was this helpful?