本体技术视点 | 以“面包师”or“担保人”的身份

1. 引言

Tezos 是一个希望实现链上自治的区块链解决方案,目标是能够通过其链上治理的“自我修正”,解决其它一些项目中存在的硬分叉问题。今天我们来简单了解 Tezos 的链上自治以及其共识治理方面的设计。

在这之前,我们先简单介绍下 Tezos 的通证情况。

Tezos 通证是一个增发型通证,其初始发行量是七亿六千万左右,目标年化通胀率大约是5.5%。每年增发出来的新通证发给参与共识的代理人作为激励。Tezos 通证的持有人可以参与共识,参与共识的通证持有人(称为代理人)需要至少一卷(roll)通证(目前,一卷通证为8,000个)。

如果不满一卷通证或者不想自己直接参与共识,可以委托代理人参与。代理人的通证卷数采用自有通证和委托给他的通证数量进行计算,不满一卷的通证忽略。

2. 链上自治

目前,Tezos 链上自治的“自我修正”过程通过投票来实现。参与投票的代理人可以进行提案,对候选方案进行测试,并最终选择合适的方案激活实施。代理人在这样一个“自我修正”过程的影响力大小是由其拥有的通证卷数决定。这个投票过程含有四个阶段,每个阶段有32,768个区块(按 Tezos 的出块时间,大约在3周左右),整个过程大约持续三个月。值得注意的是,在每个阶段开始时,会重新计算代理人的通证卷数。投票的四个阶段简要描述如下:

1. 提案阶段(Proposal period):代理人可以在此阶段最多提出20个提案。最终最受支持的提案会进入到下一阶段。如果没有提案或者两个提案有一样多的支持者,那么会开启一个新的提案阶段。

2. 测试投票阶段(Testing_vote period):代理人对上一阶段胜出的提案进行是否可以进行测试的投票。当参与投票者达到一定数量并且大多数参与投票的代理者希望进行测试时,就会进行下一阶段。否则,会回到投票阶段。

3. 测试阶段(Testing period):在这一阶段,会有一个分叉测试链存在,用于测试新提案。
4. 激活投票阶段(Promotion_vote period):代理人对经过测试的提案进行是否可以激活的投票。当参与投票者达到一定数量并且大多数参与投票的代理者希望激活时,就会激活该提案。否则,会回到投票阶段。

3. 共识治理

Tezos 的共识机制是“Liquid Proof-of-Stake”,是一个 PoS 方案。代理人可以以两个角色参与到共识中:

面包师(baker),负责出块(在 Tezos 的语境中,面包师负责烘焙区块);

担保人(endorser):对面包师烘焙出来的区块进行担保。每次出块时,会从面包师集合中随机(采用 follow-the-satoshi 算法,该算法也被 Cardano 项目采用)选择一卷通证的持有人进行出块,并另外随机选择另外32卷通证对应的持有人来对块进行验证并背书担保。面包师拥有的通证卷数越多,则其出块的机会越大。

在 Tezos 中,一个周期(Cycle)包含4,096个区块。区块的出块间隔至少为1分钟。在当前周期内随机挑选时间对代理人拥有的通证卷数进行快照,以此来确定后面第二个周期内的出块者和担保者。如果某个代理人在连续5个周期内都没有出块成功或者担保成功,那么该代理人将变成被动代理人,将在下一个周期失去烘焙区块或者担保区块的权力。

代理人需要缴纳“安全保证金”(safety deposits),并锁定5个周期。出块保证金为512个 Tezos 通证,验证保证金为64个 Tezos 通证。出块获得出块奖励,数额最大为32*1.25;担保或者担保奖励,数额最大为32*1.25。如果不是有第一优先级的出块者出块,那么数额将会降低。出块奖励变为32*0.1875,担保奖励变为32* 0.83333。手续费一起作为面包师的奖励发放。目前保证金的安全比例为8.25%。

做恶(双签或者双担保等)都会受到惩罚,担保金和所在周期的奖励都会烧掉。如果有举报者,那么一半会奖励给举报者。

4. 结语

我们简单查分析了一下 Tezos 链上自治以及其共识治理方面的设计。如果你也有相关的想法与建议,欢迎随时与我们交流。

关键词: 本体技术  Tezos  

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