什么是 Stacks 以及它是如何工作的?

本文介绍了Stacks区块链,它是一个layer-1区块链,旨在通过在比特币之上构建来增强比特币的功能。Stacks使用Proof-of-Transfer共识机制与比特币互连,并将所有Stacks交易结算在比特币上。Stacks还具有独特的智能合约语言Clarity,优化了可预测性和安全性。

什么是 Stacks?

什么是 Stacks?

什么是 Stacks?

Stacks 是一个允许执行智能合约的 layer-1 区块链。与广为人知的智能合约区块链(如 EthereumCardanoSolana 或 Avalanche)相比,Stacks 与 Bitcoin 生态系统相关联,因为它旨在通过在其之上构建来增强 Bitcoin 的功能。

虽然这个目标可能与 Bitcoin 侧链、drivechains 或第二层解决方案的目标类似,但作为一个 layer-1 区块链本身,Stacks 有其独特的方式来实现这一点。该项目有自己的节点、自己的网络、自己的矿工以及自己的代币。与不同的 Bitcoin 侧链相反,Stack 的代币 (STX) 不与链上 BTC Hook。与 Bitcoin 的连接建立如下:Stacks 区块链使用 Bitcoin 基础层区块链作为可靠的存储和广播媒介,这意味着 Stacks 上发生的一切(在 Stacks 区块中编译的交易历史)都记录在 Bitcoin 本身之上。

用更技术性的术语来说,可以说:Stacks 的整个状态都 settlement 在 Bitcoin 上。为了创建任何 Stacks 区块,必须在 Bitcoin 区块链本身上启动一个 Bitcoin 交易。此交易记录相应 Stacks 区块的哈希值,并确保 Stacks 区块明确地锚定在 Bitcoin 区块链上的一个区块内。这样,Stacks 的整个交易和状态历史都明确地表示在 Bitcoin 基础层上。

谁在 Stacks 背后?

Stacks 项目最初由 Muneeb AliRyan Shea 在普林斯顿大学相遇后创立。最初,该项目以 Blockstack 的名称开始。早在 2017 年,该项目就成功发布了 Blockstack 浏览器的公开 alpha 版本。该项目的早期目标是启动一个去中心化身份系统。2018 年,Blockstack 通过成功启动了 Stacks 1.0 区块链转型为 Stacks。

此后,建设工作继续进行,一年后,Stacks 在美国历史上首次获得美国证券交易委员会 (SEC) 认证的代币发行中筹集了约 2300 万美元。在整个 2020 年,都在进行向 Stacks 2.0 的迁移工作。2021 年初,一次成功的硬分叉发生,Stacks 2.0 的主网启动。

最初启动该项目的公司 Blockstack PBC 已转型为 Hiro PBC。这家公司主要为 Stacks 构建开发者工具,并且可以被认为是当今 Stacks 生态系统中的核心实体。

Stacks 究竟是如何与 Bitcoin 互连的?

如今,各种项目都声称他们正在 Bitcoin 之上构建,而且他们似乎都在以不同的方式进行构建。Stacks 及其与 Bitcoin 关系背后的关键概念是其独特的共识机制,称为 Proof-of-Transfer (PoX)。通过这种共识机制,Stacks 通过在 Bitcoin 上 settlement 所有 Stacks 交易与 Bitcoin 绑定。

Proof-of-Transfer 是 Proof-of-Burn (PoB) 的一种改进,最初被提议作为 Stacks 区块链的共识机制。通过 Proof-of-Burn,参与共识算法的矿工会 burning 已经建立的区块链的一种加密货币(通过将其发送到 burning 地址)。这是他们证明他们为提议新区块而产生了成本的方式。通过 Proof-of-Transfer,这种机制略有修改:使用的加密货币不会 burning (即销毁),而是分配给一组帮助保护新链的参与者。

因此,在 Stacks 的案例中,想要挖掘 Stacks 原生代币 (STX) 并参与共识的矿工需要将 Bitcoin 交易(包含 Bitcoin 单位)发送到预定义的 Bitcoin 地址。只有通过将 Bitcoin 转移到预先确定的随机 Bitcoin 地址列表,才能在 Stacks 区块链中生成区块。最终由排序法决定哪些矿工可以生成区块。但是,被选中概率随着矿工转移到 Bitcoin 地址列表中的 bitcoin 数量的增加而增加。

从某种意义上说,Stacks 的共识机制正在模仿 Bitcoin 的 Proof-of-Work 机制。但 Stacks 矿工不是使用能源来生成新区块,而是使用 bitcoin(他们需要以市场价格购买)来维护 Stacks 区块链。由于这种方法会给 Stacks 矿工带来成本,因此会得到相应的补偿。补偿也与 Bitcoin 相似,因为它以区块奖励和来自 Stacks 网络的交易费用的形式提供。补偿由协议以 STX(Stacks 的原生区块链代币)的形式发布。区块奖励如下所示

  • 在主网启动后的前 4 年,每个区块释放 1,000 STX
  • 在接下来的 4 年中,每个区块释放 500 STX
  • 在接下来的 4 年中,每个区块释放 250 STX
  • 从那时起,无限期地每个区块释放 125 STX

由于 Stacks 区块奖励也会连续三个期间每四年减半,因此这些 Stacks“减半”与 Bitcoin 减半同步。

没有 Proof-of-Stake 的 Sta(c)king

如果没有 Proof-of-Transfer,问题是:矿工参与 Stacks 区块生产需要发送的 Bitcoin 单位去了哪里?接收者是 Stacks 。这意味着:作为 STX 持有者,可以通过广播一条签名消息来注册奖励周期,该消息将锁定一个人的 STX 代币以获得定义的锁定期限。同时,Stacks 需要提供他的 Bitcoin 地址,以接收来自区块提议矿工的资金。

暂时锁定 STX 以获得 bitcoin 奖励,以支持 Stacks 区块链的网络安全和共识,听起来很像普通的 staking,这在称为 Proof-of-Stake 的共识机制中很常见。正如我们所见,Stacks 的共识机制根本不是 Proof-of-Stake。这也是为什么在 Stacks 生态系统中,当谈论锁定一个人的 STX 代币以参与网络安全时,用户通常使用术语“stacking”而不是“staking”。Stacking 发生在具有固定长度的奖励周期中。在每个奖励周期中,来自 stacking 参与者的一组 Bitcoin 地址会收到 bitcoin 奖励。

Stacks 的可扩展性如何?

尽管 Stacks 建立在 Bitcoin 之上,但它并不是扩展 Bitcoin 交易吞吐量的第二层技术。它更像是一个与 Bitcoin 相邻的区块链,旨在为 Bitcoin 的基础层区块链带来新功能。然而,由于 Stacks 是其自身的 layer-1 区块链,其区块锚定到 Bitcoin,因此事实是:挖掘 Stacks 区块的时间与 Bitcoin 的预期区块时间相匹配,平均为 10 分钟。问题出现了:这是否意味着 Stacks 区块链的交易吞吐量受到与 Bitcoin 区块链相同的限制?

答案是:当然不是。Stacks 区块链已经实施了一种称为微区块的机制,该机制允许增加交易吞吐量和速度。与 Bitcoin 区块同时确认的 Stacks 区块称为锚定区块,并且根据 Bitcoin 的 mining 算法,这些区块平均每 10 分钟发生一次。在这些锚定区块之间,Stacks 允许创建微区块,这使得 Stacks 交易能够快速 settlement 并具有高度的信心。一旦相关的锚定区块获得批准,纳入微区块的交易将被确认。通过这种方法,Stacks 区块链实现了可扩展性。

Clarity:Stacks 独特的智能合约语言

在 Stacks 的 layer-1 区块链和 Bitcoin 之间建立适当的互连至关重要,因为只有这样才能论证 Stacks 固有的智能合约能力有益于 Bitcoin。如果没有充分的连接,Stacks 上的智能合约将与 Bitcoin 没有任何关系。

在详细阐述 Stacks 独特的智能合约语言 Clarity 之前,我们首先需要扩展 Stacks 智能合约如何与 Bitcoin 基础层交互。当深入研究这些机制时,我们可以看到,从概念上讲,一个“孤立的”Bitcoin-Stacks 智能合约有 3 种不同的交易。两个 Stacks 交易和一个 Bitcoin 交易。

在第一个 Stacks 交易中,任意状态更改(几乎可以是任何内容)被写入 Stacks 智能合约,并且定义了诸如 Bitcoin 接收者地址、Bitcoin 数量或任何其他内容之类的参数。在此之后,执行一个 Bitcoin 交易,该交易在 Bitcoin 区块链上 settlement Stacks 的状态。一旦 Bitcoin 交易得到确认,就会执行第二个 Stacks 交易,该交易验证 Bitcoin 交易(即,Bitcoin 基础层区块链上的 Stacks 当前状态),然后执行 Stack 智能合约指示的任何内容——例如,基于 Stacks 的数字资产的发布。这就是 Clarity 智能合约如何锚定到 Bitcoin 区块链上的过程,从而使这些智能合约能够基于在 Bitcoin 区块链上看到的动作进行操作。

事实上,可以通过 Stacks 智能合约实现大量不同的软件逻辑。除了用于金融用例的去中心化应用程序外,还可以包括其他功能:

  • 访问控制(例如,付费访问)
  • 非同质化(例如,收藏品)和同质化代币(例如,稳定币)
  • 商业模式模板(例如,订阅)
  • 应用程序特定的区块链

Stacks 智能合约语言的独特之处在于它优化了可预测性和安全性。Clarity 通过两种关键方式将自己与其他的智能合约语言区分开来

  • 该语言按原样(未编译)进行解释并在区块链上广播。
  • 该语言是可判定的(不是图灵完备的)。

第一个特性确保了执行的智能合约代码始终是人类可读且可审计的。第二点保证了可以精确地确定执行了哪些代码,用于什么功能以及持续时间。

  • 原文链接: realvision.com/blog/what...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
realvision
realvision
江湖只有他的大名,没有他的介绍。