但同時 PoX 機制的複雜性在目前已給 Stacks 團隊帶來了一些難題,後續子網的引入更會使得整個網路的複雜性陡增。
作者: EatonAshton2,Beosin 安全研究員
自 2023 年 2 月 Ordinals 協定推出後,BTC NFT 的鑄造與 BRC-20 代幣的熱潮導致 BTC 網路高度活躍。 隨之而來的是 BTC 網路手續費飆升,網路堵塞。 此外,BTC 網路不支援智能合約的特性限制了更複雜的生態業務發展。 市場開始將注意力聚焦在 BTC 二層網路與應用,以期望捕獲 BTC 生態增長的收益。
本文我們將為大家解讀 BTC 二層網路 Stacks,我們將從其架構設計講到其生態部分,以及面臨的挑戰問題。
Stacks 是什麼?
Stacks 由 Muneeb Ali 基於其博士論文創建,該論文仔細介紹了一個圍繞 BTC 構建的互聯網框架。 早期該專案被稱為 Blockstack,2020 年正式改名為 Stacks。 它將自己定義為 BTC 的智慧合約層。
架構設計:
Stacks 在自己的區塊鏈上執行用 Clarity 編寫的智能合約並在 BTC 上最終結算交易。 兩條鏈通過 Proof of Transfer 機制交互(具體內容在共識機制介紹),從而利用 BTC 網路的安全性確保交易安全。
由于 Stacks 的交易数据需要由 BTC 网络确认,而 BTC 网络大约每 10 分钟产生一个新区块,那么 Stacks 如何扩容和提速呢?
首先,Stacks 设计了一种特殊机制,允许 Stacks 链上产生称为微区块流 (microblock stream) 的多个小区块,让负责确认 Stacks 当前区块的矿工充分利用 BTC 网络产生两个区块的时间间隔,处理更多交易。当比特币确认当前区块时,这些微区块也将实现最终确认,并且下一个 Stacks 区块会链接到当前最后一个微区块。如下图所示:
Stacks 设定确认微区块的矿工将获得这些微区块手续费的 60%,而产生这些微区块的节点将获得手续费的 40%,以鼓励矿工打包微区块和避免微区块的滥用。
其次,Stacks 目前已推出 Hiro HyperChains,可以将其理解为 Stacks 的 Layer2,为开发者提供高性能的区块链开发平台,以满足低延时,高 TPS 的应用场景。当然,其它种类的子网也将可以构建在 Stacks 上以应对各种需求。这些子网都会先在 Stacks 网络确认交易,然后在 BTC 网络确认最终的状态。
共识机制:Proof of Transfer(PoX)
Stacks 采用了一种称为 Proof of Transfer(PoX) 的共识机制。PoX 是两条区块链之间的共识算法,可以看作是 Proof of Work + Proof of Burn。与 PoW 一样,PoX 要求矿工花费已有的资源 (BTC),以竞争铸造下一个 Stacks 区块的机会;与 PoB 类似,PoX 要求矿工 “燃烧” 掉 BTC 获得 STX 代币奖励。
PoX 的一个特点是矿工花费的比特币不会被销毁,而是转移给已锁定 STX 代币的 STX 代币持有者,这称为 Stacking。通过 PoX 机制,矿工花费 BTC 竞争 Stacks 的出块权力,获得 STX 代币奖励和该区块的交易手续费;STX 持有者通过锁定 STX 代币,获得 BTC 奖励,目前 APY 约 9%。
Stacks 网络会使用一个可验证随机函数 VRF 随机选择出块者(花费的 BTC 越多,被选中的概率越大)。当矿工获得 Stacks 出块权力后,他们会开始打包新的 Stacks 区块。每个 Stacks 区块都包含一个指向前一个 Stacks 区块的哈希指针与指向对应 BTC 区块的哈希指针,从而将 Stacks 网络和 BTC 网络连接起来。
Stacks 下一个重要升级 Nakamoto 会带来哪些变化?
Nakamoto 是 Stacks 下一个重要升级,预计在 2023 年 Q4 完成。该升级将优化 Clarity 语言,引入子网和 sBTC。这一升级将为下一次 BTC 生态的爆发提供比较完善的基础条件。
子网:
Stacks 将会引入支持其它编程语言和执行环境的子网,如 EVM 子网。这会将以太坊上的项目更容易迁移到 Stacks 网络上,让 Stacks 捕获 EVM 链的资金和流量。同时这些智能合约都可以使用比特币作为其资产,并最终在比特币网络上结算。
子网是 Stacks 的扩容解决方案,通过牺牲一定的去中心化提高网络性能。子网可以选择高网络带宽的矿工节点或是属于子网白名单的矿工节点来处理子网的交易,以确保高性能。
sBTC:
sBTC 是 Stacks 在 Nakamoto 升级中推出的去中心化的 BTC 锚定方案。sBTC 的引入将解决 BTC 二层网络如何使用 BTC 资产的问题,在 Stacks 和 Stacks 子网上的智能合约能够使用 sBTC 开展借贷,兑换,铸造稳定币等各种 DeFi 业务,增加 BTC 生态的 TVL。
目前市场上已有很多种 BTC 锚定资产,如将 BTC 引入以太坊的 Wrapped BTC(wBTC),RenBTC 和 tBTC;将 BTC 引入 BTC 二层 RSK 网络的 RBTC。锚定原理大致相同:先在 BTC 网络上锁定 BTC,然后在目标网络上铸造相同数目的锚定 BTC;在目标网络上销毁锚定 BTC,然后在 BTC 网络解锁相同数目的 BTC。但关键在于锁定 BTC 资产的中心化程度,比如 wBTC 是由加密货币托管服务商持有用户锁定的 BTC,中心化风险较高。之前 3AC 和 Alameda 就是 wBTC 的合作经销商,他们的破产导致一些用户无法顺利将 wBTC 换回 BTC。RBTC 采用 BTC 网络的多重签名地址负责锁定 BTC,使用 Powpeg 机制确保 BTC 锁定的信息正确传递到 RSK 网络并执行签名,进一步降低了中心化风险。
sBTC 在 BTC 网络中使用门限签名钱包管理锁定的 BTC,在 Stacks 网络中通过智能合约铸造 BTC,从而实现非托管,去中心化的 BTC 锚定。要执行 peg-out 操作解锁 BTC 必须获得有效的签名:至少获得 70%stackers(锁定 STX 代币在 PoX 中获得 BTC 奖励的用户)的签名权力。这样大大降低了资产托管的中心化风险。
Stacks 的优势
生态优势:
Stacks 是目前最活跃的 BTC 二层网络。在 Ordinals 协议推出后,市场对 BTC NFT 的兴趣逐渐增加,Stacks 上的 NFT 活动也开始活跃。据 Muneeb Ali 的说法,Stacks 网络已铸造价值超 65 万美元的 NFT。
此外,Stacks 的 DeFi 项目 Alex 在今年上半年 TVL 上涨 500%,当前 TVL 达 $24.61M。Alex 是 Stacks 的头部 Dex,产品构建非常完善,提供交易,借贷,打新,永续合约等功能。随着 Stacks 的升级和 BTC 生态的增长,Alex 还有更大的发展空间。
Stacks 生态的 Arkadiko 项目类似 MakerDAO,专注于超额抵押资产铸造去中心化稳定币 USDA,提高 Stacks 网络的资产流动性。虽然该协议还未爆发,但我们可以期待 sBTC 引入 Stacks 网络后它的表现。
Citycoin:
CityCoin 是一个构建在 Stacks 上的协议,允许社区通过花费 STX 代币来获得 Citycoin 的奖励,从而为城市的财政做出贡献。参与者花费 STX 代币成为 “矿工” 挖 Citycoin,花费的 STX 代币中的 30% 会存放在城市金库中,剩余的 70% 作为 CityCoin Stackers 的奖励。如果你理解了上文的 PoX 机制,Citycoin 的激励设计几乎与其相同。
迈阿密是第一个加入该项目的城市,推出了 MiamiCoin(MIA)。迈阿密城市金库钱包的总价值已超过 2000 万美元,约占迈阿密市公共预算的 2%,这些资金将会用于回馈当地社区。纽约随后也加入了该计划,推出了 NYCCoin。这让更多公众接触并使用数字资产和钱包,为区域的公共服务筹集资金,也帮助 Stacks 的品牌树立了良好形象。
Stacks 可能面临的挑战
PoX 的设计风险:
PoX 需要 BTC 矿工花费 BTC 参与 Stacks 出块的竞争,从而获得 STX 代币奖励。目前 BTC 矿工之间竞争的较小,收益丰厚(1000 STX/区块,每 4 年奖励减半,最后降至 125 STX/区块),矿工有很大动力参与 Stacks 出块的竞争。从下图数据可以看到,参与 7278 次竞争的矿工花费了约 3.56 个 BTC,获得了 1337000 个 STX 代币(当前约为 29.4 个 BTC)
如果未來 Stacks 獎勵減少,而參與競爭的礦工人數增加,礦工獲得的 STX 代幣獎勵小於其花費的 BTC,那麼礦工還會繼續參與 PoX 嗎? 根據 Onstacks 的數據,目前參與 PoX 的活躍礦工僅 6 位。 後續 Stacks 繼續發展,假設礦工數只增加 10 倍,而 STX 獎勵再過一年左右的時間即將減半到 500 STX/區塊,那麼 STX/BTC 匯率需要再翻 2.5 倍才能保證礦工有利可圖,從而有動力參與 PoX。 因此,要麼 STX 的價值能繼續提升,要麼參與競爭的礦工人數有上限,才能保證 Stacks 的網路繼續運行。 Stacks 能像 BTC 一樣即使經歷礦工「關機」也可以重新復甦嗎?
PoX 的合約漏洞:
2023 年 4 月 19 日,Stacks 發現其 pox-2 合約中的 stacks-increase 函數存在漏洞,導致 bc1qpyjutel6d4gj50dscphjrqcp29ljtfjel7ccap 地址獲得了比理論計算上更多的 BTC 獎勵。 該計算錯誤是因為 stacks-increase 函數將諸如資料庫修改的操作與決定狀態更改的邏輯混在一起,然後使用 reward-cycle-total-stacked 作為全域變數在連續反覆運算中保存狀態。 目前 Stacks 團隊暫時將 Stacks 切換到 PoB 共識,後續將 pox-2 替換為 pox-3 合約,然後 Stacks 恢復採用 PoX 共識。 社區中有開發者呼籲將 Clarity 改良為函數式,表達式導向的開發語言,以方便靜態分析和進行形式化驗證,避免在未來主網上再次出現此類漏洞。
總結
Stacks 無疑是 BTC 二層網路的頭部專案,有持續發展的生態和優質的品牌效應,而且即將迎來重大升級:可靠、無需信任的 BTC 橋,sBTC,子網和 Clarity 語言的優化,為 BTC 生態的爆發提供基礎條件。 但同時 PoX 機制的複雜性在目前已給 Stacks 團隊帶來了一些難題,後續子網的引入更會使得整個網路的複雜性陡增。 如何確保 Stacks 網路正確運行,順利完成 Nakamoto 升級是 Stacks 團隊需要努力解決的挑戰。
免責聲明:作為區塊鏈資訊平臺,本站所發佈文章僅代表作者及嘉賓個人觀點,與 Web3Caff 立場無關。 文章內的資訊僅供參考,均不構成任何投資建議及要約,並請您遵守所在國家或地區的相關法律法規。