域修网 Web3.0元宇宙 什么是Stacks?C二层**Stacks可能面临哪些挑战

什么是Stacks?C二层**Stacks可能面临哪些挑战

什么是Stacks?C二层**Stacks可能面临哪些挑战

作者:@EatonAshton2,Beosin安全研究员。

自2023年2月Ordinals协议推出后,C NFT的铸造与BRC-20代币的热潮导致C**高度活跃。随之而来的是C**手续费飙升,**堵塞。此外,C**不支持智能合约的特性限制了更复杂的生态业务发展。市场开始将注意力聚焦在C二层**与应用,以期望捕获C生态增长的收益。

本文我们将为大家解读C二层**Stacks,我们将从其架构设计讲到其生态部分,以及面临的挑战问题。

Stacks是什么?

Stacks由Muneeb Ali基于其博士论文创建,该论文仔细介绍了一个围绕C构建的互联网框架。早期该项目被称为Blockstack,2020年正式改名为Stacks。它将自己定义为C的智能合约层。

架构设计:

Stacks在自己的区块链上执行用Clarity编写的智能合约并在C上最终结算交易。两条链通过Proof of Transfer机制交互(具体内容在共识机制介绍),从而利用C**的安全性确保交易安全。

Source: Beosin

由于Stacks的交易数据需要由C**确认,而C**大约每10分钟产生一个新区块,那么Stacks如何扩容和提速呢?

首先,Stacks设计了一种特殊机制,允许Stacks链上产生称为微区块流(microblock stream)的多个小区块,让负责确认Stacks当前区块的矿工充分利用C**产生两个区块的时间间隔,处理更多交易。当比特币确认当前区块时,这些微区块也将实现最终确认,并且下一个Stacks区块会链接到当前最后一个微区块。如下图所示:

Source: Dystopia Labs, Beosin

Mechani Detail:https://github.com/stacksgov/sips/blob/main/sips/sip-001/sip-001-burn-election.md#operation-as-a-leader

Stacks设定确认微区块的矿工将获得这些微区块手续费的60%,而产生这些微区块的节点将获得手续费的40%,以鼓励矿工打包微区块和避免微区块的滥用。

其次,Stacks目前已推出Hiro HyperChains,可以将其理解为Stacks的Layer2,为开发者提供高性能的区块链开发平台,以满足低延时,高TPS的应用场景。当然,其它种类的子网也将可以构建在Stacks上以应对各种需求。这些子网都会先在Stacks**确认交易,然后在C**确认最终的状态。

共识机制:Proof of Transfer(PoX)

Stacks采用了一种称为Proof of Transfer(PoX)的共识机制。PoX是两条区块链之间的共识算法,可以看作是Proof of Work + Proof of Burn。与 PoW 一样,PoX 要求矿工花费已有的资源(C),以竞争铸造下一个 Stacks 区块的机会;与 PoB 类似,PoX 要求矿工“燃烧”掉C获得STX代币奖励。

PoX 的一个特点是矿工花费的比特币不会被销毁,而是转移给已锁定STX代币的STX代币持有者,这称为Stacking。通过PoX机制,矿工花费C竞争Stacks的出块权力,获得STX代币奖励和该区块的交易手续费;STX持有者通过锁定STX代币,获得C奖励,目前APY约9%。

Source: https://docs.stacks.co/docs/stacks-academy/proof-of-transfer

Stacks**会使用一个可验证随机函数VRF随机选择出块者(花费的C越多,被选中的概率越大)。当矿工获得Stacks出块权力后,他们会开始打包新的Stacks区块。每个Stacks区块都包含一个指向前一个Stacks区块的哈希指针与指向对应C区块的哈希指针,从而将Stacks**和C**连接起来。

Stacks下一个重要升级Nakamoto会带来哪些变化?

Nakamoto是Stacks下一个重要升级,预计在2023年Q4完成。该升级将优化Clarity语言,引入子网和sC。这一升级将为下一次C生态的爆发提供比较完善的基础条件。

子网:

Stacks将会引入支持其它编程语言和执行环境的子网,如EVM子网。这会将以太坊上的项目更容易迁移到Stacks**上,让Stacks捕获EVM链的资金和流量。同时这些智能合约都可以使用比特币作为其资产,并最终在比特币**上结算。

子网是Stacks的扩容解决方案,通过牺牲一定的去中心化提高**性能。子网可以选择高**带宽的矿工节点或是属于子网白名单的矿工节点来处理子网的交易,以确保高性能。

sC:

sC是Stacks在Nakamoto升级中推出的去中心化的C锚定方案。sC的引入将解决C二层**如何使用C资产的问题,在Stacks和Stacks子网上的智能合约能够使用sC开展借贷,兑换,铸造稳定币等各种DeFi业务,增加C生态的TVL。

目前市场上已有很多种C锚定资产,如将C引入以太坊的Wrapped C(wC),RenC和tC;将C引入C二层RSK**的RC。锚定原理大致相同:先在C**上锁定C,然后在目标**上铸造相同数目的锚定C;在目标**上销毁锚定C,然后在C**解锁相同数目的C。但关键在于锁定C资产的中心化程度,比如wC是由加密货币托管服务商持有用户锁定的C,中心化风险较高。之前3AC和Alameda就是wC的合作经销商,他们的破产导致一些用户无法顺利将wC换回C。RC采用C**的多重签名地址负责锁定C,使用Powpeg机制确保C锁定的信息正确传递到RSK**并执行签名,进一步降低了中心化风险。

sC在C**中使用门限签名钱包管理锁定的C,在Stacks**中通过智能合约铸造C,从而实现非托管,去中心化的C锚定。要执行peg-out操作解锁C必须获得有效的签名:至少获得70%stackers(锁定STX代币在PoX中获得C奖励的用户)的签名权力。这样大大降低了资产托管的中心化风险。

Source: https://stx.is/tc-pdf

Stacks的优势

生态优势:

Stacks是目前最活跃的C二层**。在Ordinals协议推出后,市场对C NFT的兴趣逐渐增加,Stacks上的NFT活动也开始活跃。据Muneeb Ali的说法,Stacks**已铸造价值超65万美元的NFT。

此外,Stacks的DeFi项目Alex在今年上半年TVL上涨500%,当前TVL达$24.61M。Alex是Stacks的头部Dex,产品构建非常完善,提供交易,借贷,打新,永续合约等功能。随着Stacks的升级和C生态的增长,Alex还有更大的发展空间。

Stacks生态的Arkadiko项目类似MakerDAO,专注于超额抵押资产铸造去中心化稳定币USDA,提高Stacks**的资产流动性。虽然该协议还未爆发,但我们可以期待sC引入Stacks**后它的表现。

Source: https://twitter.com/muneeb/status/1456007656305479684

Citycoin:

CityCoin是一个构建在Stacks上的协议,允许社区通过花费STX代币来获得Citycoin的奖励,从而为城市的财政做出贡献。参与者花费STX代币成为“矿工”挖Citycoin,花费的STX代币中的30%会存放在城市金库中,剩余的70%作为CityCoin Stackers的奖励。如果你理解了上文的PoX机制,Citycoin的激励设计几乎与其相同。

source: https://docs.citycoins.co/core-protocol/mining-citycoins

迈阿密是第一个加入该项目的城市,推出了MiamiCoin(MIA)。迈阿密城市金库钱包的总价值已超过2000万美元,约占迈阿密市公共预算的2%,这些资金将会用于回馈当地社区。纽约随后也加入了该计划,推出了NYCCoin。这让更多公众接触并使用数字资产和钱包,为区域的公共服务筹集资金,也帮助Stacks的品牌树立了良好形象。

Stacks可能面临的挑战

PoX的设计风险:

PoX需要C矿工花费C参与Stacks出块的竞争,从而获得STX代币奖励。目前C矿工之间竞争的较小,收益丰厚(1000 STX/区块,每4年奖励减半,最后降至125 STX/区块),矿工有很大动力参与Stacks出块的竞争。从下图数据可以看到,参与7278次竞争的矿工花费了约3.56个C,获得了1337000个STX代币(当前约为29.4个C)

Statistics: https://app.onstacks.com/

如果未来Stacks奖励减少,而参与竞争的矿工人数增加,矿工获得的STX代币奖励小于其花费的C,那么矿工还会继续参与PoX吗?根据Onstacks的数据,目前参与PoX的活跃矿工仅6位。后续Stacks继续发展,假设矿工数只增加10倍,而STX奖励再过一年左右的时间即将减半到500 STX/区块,那么STX/C汇率需要再翻2.5倍才能保证矿工有利可图,从而有动力参与PoX。因此,要么STX的价值能继续提升,要么参与竞争的矿工人数有上限,才能保证Stacks的**继续运行。Stacks能像C一样即使经历矿工“关机”也可以重新复苏吗?

PoX的合约漏洞:

2023年4月19日,Stacks发现其pox-2合约中的stacks-increase函数存在漏洞,导致bc1qpyjutel6d4gj50dscphjrqcp29ljtfjel7ccap地址获得了比理论计算上更多的C奖励。该计算错误是因为stacks-increase函数将诸如数据库修改的操作与决定状态更改的逻辑混在一起,然后使用reward-cycle-total-stacked作为全局变量在连续迭代中保存状态。目前Stacks团队暂时将Stacks切换到PoB共识,后续将pox-2替换为pox-3合约,然后Stacks恢复采用PoX共识。社区中有开发者呼吁将Clarity改良为函数式,表达式导向的开发语言,以方便静态分析和进行形式化验证,避免在未来主网上再次出现此类漏洞。

总结

Stacks 无疑是C二层**的头部项目,有持续发展的生态和优质的品牌效应,而且即将迎来重大升级:可靠、无需信任的 C 桥,sC,子网和Clarity语言的优化,为C生态的爆发提供基础条件。但同时PoX机制的复杂性在目前已给Stacks团队带来了一些难题,后续子网的引入更会使得整个**的复杂性陡增。如何确保Stacks**正确运行,顺利完成Nakamoto升级是Stacks团队需要努力解决的挑战。

本站声明:网站内容来源于**,如有侵权,请联系我们,我们将及时处理。