质押(Stacking)
介绍
通过将其代币锁定一段时间并作为对共识至关重要的签名者参与,堆栈(Stacks,STX)代币持有者可获得比特币作为堆栈(stacking)奖励,以此为网络提供有价值的服务。如果你不熟悉 Stacks 中签名者的概念,请务必查看 签名部分。本文档是关于堆栈及其工作原理的概念性概述。
pox-4.clar 是堆栈合约。如果你有兴趣尝试包括状态更改、独立堆栈(solo stacking)和池式堆栈(pool stacking)在内的转移证明(proof of transfer)用例,你需要的所有函数都可以在已部署的合约中找到:
堆栈(Stacking)与抵押(Staking)
虽然在 Stacks 网络上的堆栈在概念上与抵押相似,但 Stacks 不是 PoS(权益证明)网络,并且存在一些关键差异。
Stacks 中的堆栈与 PoS 网络中的抵押之间有两个主要区别。
以燃烧链代币产生的收益
在抵押中,用户锁定一种代币并以相同的代币获得收益。而在堆栈中,用户锁定一种代币(STX),但收益以“燃烧链”代币(BTC)支付,而不是以被锁定的同一种代币。在 PoX 中,收益来自一个有限的外部来源(来自 Stacks 挖矿者的比特币存款)。在 PoS 中,收益来自该货币本身的发行计划。
这些发行率如何设定?在以太坊中,发行率由网络使用量决定。以太坊的目标是创建一个通缩的货币供应,因此发行率根据网络的使用情况来确定。为了使以太坊交易被视为有效,交易必须包含在交易执行期间被烧毁的基础费用(base fee)。 发行率是以算法方式确定的 逐区块取决于这些基础费用加上正常燃气费(gas fee)烧毁了多少 ETH。
堆栈不会以相同的代币产生收益,因此不需要为堆栈奖励发行新的 STX。堆栈收益需要外部代币(BTC)的输入。Stacks 确实有发行率并确实会产生新的 STX 代币,但该过程与堆栈及堆栈收益机制是分离的。
没有罚没(slashing)
尽管堆栈者通过担任签名者在 Stacks 中履行了对共识至关重要的角色,但在 PoX(转移证明)中不存在罚没的概念。
相反,如果堆栈者未能履行其作为签名者的职责,他们只是无法解锁其 STX 代币,也不会收到比特币奖励。
堆栈是一种内置操作,由“转移证明”(PoX)机制要求执行。PoX 机制由 Stacks 网络上的每个矿工执行。
堆栈功能作为智能合约使用 Clarity 实现。阅读更多关于 该合约.
锁定与解锁 STX
当 STX 代币被“锁定”时,不会发生 STX 代币的转移。锁定 STX 是非托管的,STX 代币仍保留在你的钱包中。当你发起堆栈交易时,这些代币在协议层面被锁定且不可花费,但它们不会离开堆栈者的钱包。
在锁定期结束时,它们将被自动解锁(在协议层面上可再次花费)。这是隐式发生的;没有直接的交易来解锁它们。
堆栈流程
堆栈机制可以表示为一系列操作流程:

调用 API 以获取即将到来的奖励周期的详细信息
查询网络以发现即将到来的周期参数和时间。
确认特定 Stacks 账户的资格
验证该账户是否满足最低要求并有资格参与。
确认 BTC 奖励地址和锁定时长
指定接收支付的比特币地址并输入所需的锁定周期。
广播堆栈交易以锁定 STX
交易被广播且 STX 代币被锁定。这必须在下一个奖励周期的准备阶段之前完成(正在进行的奖励阶段的最后 100 个比特币区块)。
奖励周期执行并发送比特币奖励
堆栈机制执行奖励周期并将奖励发送到配置的比特币奖励地址。
在锁定期间监控解锁时间和奖励
在锁定期内,你可以获取有关解锁时间、预期奖励等的详细信息。
代币在锁定期后被释放
一旦锁定期过去,代币将再次变为可花费。
显示奖励历史
显示诸如以往奖励周期收益等历史详情。
请记住,奖励周期的目标时长约为 ~2 周。该时长基于比特币网络的目标区块时间(10 分钟),并且有时可能由于 确认时间差异 而增加。
委托堆栈流程
你可以进行堆栈的两种主要方式:独立堆栈(solo stacking)和委托堆栈(delegated stacking)。
独立堆栈
独立堆栈遵循一般的堆栈流程。你堆栈你自己的 STX 代币并运行你自己的签名者。要作为独立堆栈者运行,你必须拥有最低数量的 STX 代币。该最低值是动态的,可通过查看 API 的 pox 端点 在 min_threshold_ustx 字段中找到。
委托堆栈

委托堆栈的不同之处:
在代表代币持有者进行堆栈之前,委托者必须获得账户所有者的授权。授权限制了委托者可堆栈的最大金额;该最大值可以被设置得高于可用资金。一个账户只能关联一个委托者。
账户设置委托关系。它们可以选择性地限制必须用于支付的比特币奖励地址,并指定到期的燃烧区块高度以限制委托期限。
委托者从不同账户锁定 STX(“池化阶段”),直到他们达到参与堆栈所需的最低额度。
一旦委托者锁定了足够的 STX,他们就可以在下一个奖励周期中最终确认并提交参与。
某些委托关系可能允许 STX 持有者直接从矿工处接收支付。
委托可以根据到期规则自动终止,或通过主动撤销委托权利来终止。
代币持有者资格
Stacks(STX)代币持有者并非自动获得堆栈奖励。要参与,他们必须:
在奖励周期开始前承诺参与
承诺至少最低数量的 STX 代币以保住奖励名额,或与他人池化以达成最低要求
将 STX 代币锁定在指定期限内
提供一个受支持的比特币地址以接收奖励
维护他们的签名者软件(如果他们运行签名者)

代币持有者有各种提供者和工具来支持他们参与堆栈。Stacks 网站包含一份 矿池和堆栈选项列表.
PoX 共识算法中的堆栈
堆栈是 PoX 的内置功能,并通过在 Stacks 区块链上的一系列操作发生。 完整的转移证明实现细节 在 SIP-007 中。以下是该算法最相关操作的摘要。
请注意 SIP-007 描述的是在 Nakamoto(升级)之前的堆栈。尽管大部分功能保持不变,但堆栈者现在还有作为签名者的额外职责,如 SIP-021.

堆栈发生在 2100 个比特币区块的奖励周期中(大约两周)。奖励周期分为两个阶段:准备阶段和奖励阶段。
准备阶段持续 100 个比特币区块,是 PoX 锚区块选择即将到来奖励阶段的新堆栈者的阶段(详细信息见 SIP-007)。
由于在 Nakamoto 升级之后 Stacks 不再发生分叉,PoX 锚区块总是在下一个奖励周期开始前的 100 个比特币区块时已知。它是紧接准备阶段之前的最后一个任期开始区块。
PoX 锚区块标识下一个堆栈者。他们有 100 个比特币区块来准备签署 Stacks 区块,包括完成用于签名区块的分布式密钥生成(DKG)轮次。
PoX 合约要求堆栈者在堆栈或委托堆栈 STX 时登记他们的区块签名密钥,以便整个网络可以验证区块上的签名。
该过程通过以下方式处理: 运行签名者 然后随后以该签名者的身份进行堆栈操作。
堆栈与签名
堆栈与签名是不同的操作,但两者都是必要的。签名者必须堆栈他们的 STX 代币,而没有相关签名信息你不能进行堆栈。具体细节取决于独立与委托堆栈。
独立堆栈(Solo Stacking)
如果你是独立堆栈,有两种签名选项。
运行你自己的签名者
你可以按照“如何运行签名者”指南来运行你自己的签名者。这需要技术知识和运行一台机器的资源。详见该指南。
与其他签名者合作
如果你不想运行自己的签名者,你可以与其他签名者合作并在你的堆栈交易中包含他们的签名。如何操作的详细信息在 堆栈 STX 指南中。
委托堆栈(Delegated Stacking)
如果你将 STX 委托给池运营者,你不需要运行签名者。池运营者会执行实际的堆栈交易并负责运行签名者。
如果你是池运营者,请参阅 运营矿池指南.
如何以及在哪里进行堆栈
堆栈的选项包括独立堆栈、参与矿池、使用交易所以及流动性堆栈(liquid stacking)。Stacks 网站有一个 堆栈页面 描述这些选项。
有关如何进行堆栈的详细说明,请参阅 堆栈 STX 指南.
用于堆栈数据和统计的工具与浏览器:
https://app.signal21.io/
https://www.stacking-tracker.com/
https://www.stakingrewards.com/calculator?asset=stacks
https://stacking.tools/
最后更新于
这有帮助吗?