转移证明(PoX)


什么是转移证明?

转移证明中的参与者是谁?

PoX 核心组件概览
技术实现细节
版本
日期
主网合约
SIP
总结:一句话理解 PoX
其他资源
最后更新于
这有帮助吗?


在前面的章节中,我们看了 Stacks 的愿景和理念,并详细讨论了它如何与比特币相连接,以及它如何在不修改比特币本身的情况下扩展功能。在本节中,我们将简要介绍实现这一点的出块机制:转移证明。
本节将对转移证明做一个概念性的概述。若想了解出块在技术层面究竟是如何发生的更多细节,请查看以下章节: 出块.
Stacks 层依赖 STX 和 BTC 来实现其新颖的共识机制,称为转移证明(Proof of Transfer,PoX),该机制同时利用了 Stacks 和比特币两层。PoX 在精神上类似于比特币的工作量证明(PoW)共识:就像比特币 PoW 矿工消耗电力并以 BTC 获得奖励一样,Stacks PoX 矿工花费(已挖出的)BTC,并以 STX 获得奖励。
与 PoW 类似,PoX 使用单一领导者选举:PoX 矿工只需花费 BTC 即可竞标,他们按出价权重获得成为领导者的随机概率。领导者选举发生在比特币链上,而新区块则写入 Stacks 层。通过这种方式,PoX 复用了比特币矿工已经完成的工作,并不会消耗任何显著的额外电力:对于 Stacks 节点来说,仅需运行普通笔记本电脑/电脑以使用 BTC 进行竞标的成本。
与 PoW 类似,PoX 是无需许可的:任何人都可以成为 Stacks 矿工,只要他们愿意花费 BTC。此外,任何 STX 持有者都可以锁定自己的 STX(称为“stacking”)来参与 PoX 共识,并通过为系统做有用工作而获得比特币奖励,也就是作为去中心化比特币锚定的签署者。秉持比特币的理念,Stacker 会因其对系统的正向贡献而获得奖励,并因不良行为受到经济性抑制(但与有质押惩罚的权益证明系统不同,他们不会被“削减”)。
最后,PoX 共识的性质使 BTC 与 STX 之间的价格比率能够持续记录并在链上可用,作为一种链上比特币价格预言机。这对去中心化锚定很有价值,因为它消除了对外部预言机的需求,如关于该锚定机制的配套论文所述。
下图以流程图形式展示了 PoX 共识机制及其相关参与者之间的关系。

如流程图所示,转移证明还提供了两个关键动力,它们协同工作以保护并运行网络。
经济层面 – BTC 从矿工转移到 Stacker,形成一种根植于比特币本身的双向激励结构。矿工提交 BTC 以参与出块,实际上是在竞争生成下一个 Stacks 区块的权利。作为回报,成功的矿工会获得新铸造的 STX 和交易费。另一方面,Stacker 锁定自己的 STX 以支持共识,并作为奖励获得矿工提交的 BTC。该机制将 Stacks 经济直接与比特币绑定,使参与者之间的激励保持一致,并将安全性锚定在真实的外部资产上,而不是仅仅依赖通胀或内部代币机制。
程序层面 – 除了经济激励之外,PoX 还提供了技术协调层,用于决定区块如何生成、验证和最终确定。矿工在比特币上的 BTC 承诺作为领导者选举的输入,用以决定谁可以构建下一个 Stacks 区块。区块一旦生成,就会通过密码学方式关联并锚定到比特币,从而继承其结算保障。通过这种方式,PoX 不只是一个经济交换机制——它还是协调区块构建、排序和最终性的共识引擎,同时保持与比特币 L1 的可验证连接。

谁有资格挖出下一任期的 Stacks 区块?
参与者:矿工
理念:花费 BTC 来赢得出块机会
通过以下方式进行单领导者选举 密码学抽签
嵌入 可验证随机函数 (VRF)状态到比特币交易中
在每个比特币区块上产生一个确定但不可预测的胜者
通过区块提交进行挖矿:(区块哈希,VRF 种子)对
VRF 种子 = hash(VRF 证明)
那矿工花费的 BTC 去哪里了?
参与者:单独 stacking 或池化 stacking 的 Stacker
理念:花费的 BTC(来自矿工)会发送给 STX 持有者
预期 BTC 支付 = 你的锁定量 / 总锁定量 的函数
锁定的 STX 永远不会离开你的账户,并会自动解锁
将无产出的 STX 移出流通
奖励周期:2100 个比特币区块
奖励阶段:前 2000 个比特币区块
准备阶段:最后 100 个比特币区块
锚定区块:准备阶段中确认的第一个 Stacks 区块
奖励集合:锚定区块中已锁定 STX 的快照


锁定的 STX 也能保护网络吗?
参与者:承担签名者角色的 Stacker
理念:利用 PoX 收益激励良好的链服务质量
将 PoX 收益作为复制和排序区块的“薪资”
Stacks 在你进行 stacking 时选择签名者公钥
签名者用带权签名签署来自矿工的区块(按奖励槽数量加权)
一旦 70% 以上的奖励槽签名确认,区块就会被追加
区块签名者集合每个奖励周期变化一次
假定 70% 以上的签名者在线且诚实
诚实的签名者投票拒绝(燃烧)故障 Stacker 随后的 BTC

转移证明功能以 Clarity 智能合约的形式在 Stacks 网络上实现。
转移证明多年来经历了多个迭代。下面列出转移证明的不同智能合约实现。
PoX 4
2024-04-22
PoX 3
2023-05-27
PoX 2
2023-03-20
当前 PoX 4 合约的演示说明可在以下位置查看: 示例合约 一节中了解更多关于这一过程的信息。
• PoX 每个 BTC 区块会随机选出一位单领导者区块矿工 • PoX 激励矿工生成 STX 区块并赚取 STX 区块奖励 + 交易费 • PoX 激励 STX 持有者锁定 STX,以从矿工那里获得 BTC 收益 • PoX 抑制 BTC L1 矿工进行干扰 • PoX 激励作为签名者的 Stacker 维护网络健康
[SIP-001] SIP-001 全面列出了选择比特币来保护 Stacks 的原因。
[SIP-007] 关于 stacking 和转移证明的原始设计细节。
[SIP-021] Nakamoto 升级:快速且可靠的区块
[Stacks 开发者 YT] PoX:幕后机制
[Stacks 开发者 YT] 开发者如何测试 Stacks 网络?
[Hiro YT] Stacks 转移证明智能合约详解
最后更新于
这有帮助吗?
这有帮助吗?