五分鐘瞭解Taro :比特幣和閃電網路的多資產協議

語言: CN / TW / HK

作者:灑脫喜

比特幣自從去年 11 月份啟用 Taproot 升級之後,似乎很少有新技術方案的聲音,而縱觀整個 DeFI 領域,閃電網路的 TVL 規模(因為缺乏激勵等原因)在一眾協議當中也顯得毫不起眼,那這種情況有可能改變嗎?

(圖:閃電網路的TVL變化, 資料來自https://defillama.com/chain/Bitcoin)

今日,閃電網路開發商 Lightning Labs 宣佈完成了 7000 萬美元 B 輪融資,此外,他們還宣佈了一種用於在比特幣區塊鏈上發行資產(例如穩定幣)的 Taro 協議,據悉,使用這個協議,使用者還可以通過閃電網路進行即時、大容量、低費用的交易。

在概念上,Taro 有點類似於早期的彩色幣(colored coins),我們知道,USDT 最早就是通過 omni 彩色幣協議發行的一種穩定幣資產,但由於比特幣網路結算慢、費用高的特性,比特幣上的 USDT 份額佔比已經越來越少(注:具體資料可以參考https://tether.to/en/transparency)。

而不同之處在於, Taro 依賴於比特幣的最新升級 Taproot 來構建新的樹形結構,其允許開發人員在現有 output 輸出中嵌入任意資產元資料,其使用 Schnorr 簽名來提高簡單性和可擴充套件性,並且重要的是,它可以與閃電網路上的多跳(multi-hop)交易一起使用。為此,Lightning Labs 還發布了一系列關於 Taro 協議的比特幣改進提案(BIP),以徵求開發者社群的反饋和意見,你可以在  GitHub ‌ 上了解更多資訊並閱讀完整的 Taro 規範。

Taro 協議的組成部分

要了解 Taro 協議,我們需要先熟悉比特幣的幾個概念,例如公鑰密碼學、密碼學雜湊、默克爾樹(Merkle trees)、比特幣 UTXO、Taproot 等(關於 Taproot 是什麼,推薦閱讀 DeFi 之道編寫的《 比特幣Taproot升級終於要來了!一文了解它的過去、現在與未來 ‌》)。

而 Taro 利用了 Taproot、taptweak、稀疏默克爾樹(簡稱 SMT)以及默克爾和樹(Merkle sum trees)概念的組合來發行比特幣原生資產,其中,稀疏默克爾樹(SMT)和 Merkle sum trees 組合成了稀疏默克爾和樹(簡稱 MS-SMT)。

(注:關於 taptweak 等新概念的解釋,有興趣的讀者可以閱讀lightning labs的 文件 ‌。)

而這個 MS-SMT 樹的根,被新增到一個 taproot 指令碼中,並一起建立一個 taproot 地址。

Taro 發行者沒有使用自己的區塊鏈,而是將 MS-SMT 樹儲存在鏈外,並向資產持有者發出證明。這些資產的所有者可以獨立驗證其賬戶是否包含在該樹中,是否填寫了適當的金額,是否存在相應的 taproot 交易,以及是否在比特幣區塊鏈上得到了確認。

而要發行 Taro 資產,我們必須首先建立它的識別符號,這是一個 32 位元組的資產 ID,它是通過雜湊運算三個元素產生的:(1)用於鑄造資產的 outpoint,(2)鑄造者選擇的資產標籤(例如品牌名稱的雜湊)以及(3)與資產相關的元資訊(例如連結、影象或文件)。

asset_id = sha256(genesis_outpoint || asset_tag || asset_meta)

一旦發行者釋出了交易並在比特幣區塊鏈上得到了確認,他就不可逆轉地建立了資產。對於觀察者來說,這筆交易看起來就像任何其他標準的 taproot 交易。

而發行後的 Taro 資產,既可以在比特幣主鏈上移動,也可以通過閃電網路進行轉賬。

注:Taro 地址是資產 ID、資產指令碼雜湊、MS-SMT 樹的內部金鑰和數量的 bech32 編碼識別符號,其字首為 Taro 或 Tarot(測試網)。

bech32(hrp=TaroHrp,asset_id ||asset_script_hash || internal_key || amt)

多跳 Taro 轉賬

對於Taro 協議而言,閃電網路的多跳支付是非常重要的一項功能。

從歷史上看,支付網路都會面臨一個自舉問題(無論何時建立新資產,都需要建立一個全新的支付網路來滿足特定資產的支付需求)。而 Taro 採用了一種支付路由模式,在這種模式中,閃電網路可以服務於任何資產,並且可以克服這個自舉問題,

下面我們來通過一個例子理解其中的原理:

想象一下,Alice 和 Bob 有一個容量為 100 美元的閃電網路 USD(L-USD)通道。平衡後,他們都有價值 50 美元的流入流動性,Carol 和 Dave 有一個容量為 100 美元的 L-USD 通道,平衡後,他們都有價值 50 美元的流入流動性。

圖:多跳 Taro 轉賬的示例

如果 Bob 和 Carol 只有一個 BTC 通道,Alice 仍然可以向 Bob 傳送 10 美元的 L-USD,Bob 以 BTC 收取少量的路由費,並將 10 美元的 BTC 轉發給 Carol,Carol 以 L-USD 收取少量的路由費,並轉發 10 美元的 L-USD 到最終目的地——Dave。

這種結構利用了目前閃電網路的網路效應和流動性,來路由轉賬任意數量的資產,避免了為新資產啟動全新網路的需要,並確保比特幣支援網路上的所有交易。它還激勵了閃電網路中 BTC 流動性的增長,以服務於更廣泛的多資產閃電網路。

總結

有關 Taro 協議更深入的技術細節,你可以通過 BIP 進行了解,簡而言之,這種 Taproot 原生設計的主要好處有:

  1. 可擴充套件性:單個 Taproot 輸出可以包含基本無限數量的 Taro 資產;
  2. 可程式設計性:Taro 資產有一個解鎖指令碼,類似於普通的比特幣 UTXO,使開發者能夠將傳輸條件程式設計到所述資產中;
  3. 可審計性:Taro 使用了特殊的樹狀結構,允許對已發行的資產進行有效的供應審計;
  4. 可用性:特定於資產的地址使錢包足夠智慧,以防止使用者錯誤地傳送錯誤的資產。

但由於缺乏 token 激勵,Taro 協議可能依舊會面臨難以大規模擴充套件的困境,那你認為 Lightning Labs 會選擇發行 token 嗎?