作者:Muneeb Ali
2021 年8 月11 日
鑑於比特幣近1 萬億美元的市值和被越來越多的機構採用,比特幣DeFi 是一個巨大的、尚未開發的市場。然而,儘管比特幣越來越多地被用作主權貨幣,但就DeFi而言,直到現在,比特幣在沒有通過中心化交易所或以包裹BTC形式的單獨區塊鏈的情況下,其生產效率不如其他加密貨幣。
Stacks 生態系統的開發者最近證明了比特幣DeFi在今天是可能的。經過Stacks 社區成員Friedger Muffke 、 Asteria和Jude Nelson與Stacks其他社區開發者的長期合作,他們成功部署了比特幣與NFT 和其他加密資產的交易(swaps) 。
原生BTC 交換到新資產是比特幣DeFi 的基礎設施。從本質上講,現在可以直接在比特幣上實現類似以太坊的功能。這將導致先進的去中心化應用程序和圍繞原生BTC 交易構建的類似Uniswap 的自動做市商AMM 的爆炸式增長,所有這些都使用純比特幣交易並受益於比特幣的安全性。
隨著這一發展,用戶很快將能夠對穩定幣、衍生品、永續合約和其他基於Stacks 的加密資產進行去信任比特幣交易,以及購買任何數字資產(如NFT 和去中心化域名),所有這些都是通過純比特幣進行的比特幣鏈上的交易。隨著USDC 進入Stacks ,去信任的BTC/USDC 交易將成為可能。這是一個巨大的市場——日交易量接近1.5 億美元,無需交易所即可交易!同樣,xBTC 將啟用BTC 與xBTC 的去信任交易,然後可用於一系列DeFi 產品。
在這篇文章中,我將重點介紹最近由Friedger 和Stacks 生態系統中的其他開發者開創的去信任交易(trust-less swap) 的發展,我將向您展示如何使用Clarity 來嘗試使用此類交易。
但首先,讓我們談談我們是如何做到這一點的。
真正的比特幣DeFi
由於比特幣的腳本語言的限制,比特幣DeFi 在歷史上一直很困難,但這同時也是它的優勢。比特幣不容易編程。比特幣故意沒有提供給我們在其他生態系統中看到的智能合約功能。這是一種有意的折衷,目的是為比特幣作為一種去中心化的的價值存儲提供安全性和可靠性。
開發者試圖通過創建衍生比特幣資產來應對這一挑戰,這些資產需要中心化的交易方或有包裹BTC的單獨的區塊鏈。但是包裹BTC 不是比特幣,許多比特幣人不相信獨立區塊鍊或單方託管解決方案的安全性和去中心化。中心化替代品對比特幣類DeFi 產品的需求一直存在,但真正的比特幣DeFi 之前一直沒有被破解。
真正的比特幣DeFi 是什麼意思?關鍵組件是能夠發送鏈上比特幣交易並在智能合約中執行邏輯,從而消除對中心媒介的需求。
鑑於Stacks 合約對比特幣狀態的可見性以及Stacks 固有的利用比特幣安全性和結算保證的能力,Stacks 在實現真正的比特幣DeFi 方面具有獨特的優勢。 Stacks 鏈通過其傳輸證明共識機制與比特幣相連,因此所有Stacks 交易都以比特幣結算。這確保了Stacks 共享比特幣對交易重組的長期、無與倫比的安全性。
介紹下雙體船去信任交易(Catamaran Trust-Less Swaps)
上個月,Stacks 社區開發者使用合約部署了可用的比特幣交易(swaps),這些合約對比特幣狀態具有獨特的可見性,並且可以觸發由純比特幣交易驅動的基於Stacks 的智能合約中的操作。這些目前被稱為“雙體船交易” (Catamaran swaps),這些交易展示了一個通過Stacks 啟用的比特幣DeFi 應用程序的世界。這些是去信任交易,這意味著執行交易零依賴任何第三方或託管服務——沒有KYC,沒有交易對手風險。
該術語是閃電社區中更知名的潛艇交易(Submarine swap) 概念的類似擴展。潛艇交易是鏈上到鏈下的原子交換(atomic swaps)。雙體船交易是三方交易,其中兩筆交易發生在Stacks 鏈上,一筆交易發生在比特幣鏈上。與一些動作發生在鏈上(水上)和一些鏈下(水下)的潛艇交易相反,所有操作都發生在兩個不同的區塊鏈上,因此叫雙體船。
雙體船交易的這種實現依賴於另一個Clarity 合約,該合約驗證給定的比特幣交易是在比特幣鏈上的給定區塊中挖出的。通過將提供的塊詳細信息的哈希值與可通過Clarity的塊信息函數查看的哈希值進行比較來進行驗證。然後將比特幣交易的merkle根和提供的merkle證明與驗證塊的merkle根進行比較。如果這些哈希值相同,則可以得出結論,比特幣交易確實包含在比特幣鏈上的區塊中。
再深入研究下機制,在第一筆Stacks 交易中,數字資產被置於智能合約的託管中,並且為交換定義了比特幣接收者地址、BTC 數量、時間限制等參數。然後執行比特幣交易。一旦確認,第二筆Stacks 交易將驗證比特幣交易並釋放Stacks 資產。
這些交易合約用Clarity 編寫,只有70 行長,並且使用了比特幣庫合約的驗證邏輯。驗證BTC 交易的典型合約函數如下所示:
與swaps 類似,觸發比特幣交易時可以觸發其他邏輯,例如,償還貸款,鑄造新代幣......(例如,Friedger Pool 為每筆比特幣獎勵交易鑄造的包裹棧押獎勵代幣) 。
目前有一些技術限制可能會導致去信任交易失敗。太大的比特幣交易(> 1024字節,> 8次進出)或在閃塊期間發生的交易無法在鏈上驗證。 Stacks 2.1 將帶來改進。因此,當前版本的交易合約具有取消功能,可以在一定期限後將資產釋放給賣方。在這些情況下,需要手動轉移資產。
Swaps的改進
現在是開發的早期階段, Stacks 2.1 可以進行改進,將這些交互所需的交易數量從3 減少到2,改善閃塊故障,解除任何其他現有網絡限制,並為最終用戶和開發者的交易優化UI。
其他解決方案
Stacks 並不是唯一一個注重比特幣DeFi 的項目,考慮到比特幣生態系統的利害關係,這是正確的。當今市場上的替代性包裹比特幣資產為該領域帶來了創新,並且在某些情況下表現出有意義的牽引力。也就是說,迄今為止,這些資產中沒有一個實際上是在比特幣上結算——它們在其他網絡上結算,一些開發者和用戶對資產的安全性和去中心化存在疑問。
還有一些正在進行的實驗,例如連接到以太坊虛擬機的RSK 、擴展比特幣的Lightning (閃電) 和使用比特幣側鏈的Liquid 。 Taproot和Sapio等開發也為比特幣較低級別提供了更多功能。
與我們一起構建
這只是圍繞比特幣創建的整個開放金融世界的開始。我們計劃在比特幣DeFi 上發布更多帖子,因此請留意後續發布的文章。同時,查看GitHub 上雙體船交易的實施,加入Stacks社區Discord以獲取更多信息,並使用我們易於使用的工具進行構建。