什麽是 Taproot 以及它如何使比特幣受益?

新手Jan 26, 2024
本文介紹了與 Taproot 相關的三個比特幣改進提案(BIP)。
什麽是 Taproot 以及它如何使比特幣受益?

什麽是Taproot?

Taproot 是對比特幣的一項升級,爲比特幣用戶帶來了幾項新功能和好處。比特幣社區在 2021 年 11 月 12 日的第 709,632 個區塊激活了 Taproot。

Taproot 升級包括三個比特幣改進提案(BIP),它們定義了對比特幣協議的三個不衕升級:

  • Schnorr 簽名 (BIP 340)
  • Taproot (BIP 341)
  • Tapscript (BIP 342)

這三項升級統稱爲 Taproot 升級,通常集體稱爲 BIP Taproot。這些 BIP 引入了新的、更高效、靈活和私密的比特幣轉移方式。

Schnorr 簽名 - BIP 340

作爲 Taproot 升級的一部分,BIP 340 引入了用於比特幣的 Schnorr 簽名。 Schnorr 簽名爲比特幣用戶帶來了多項好處,包括卓越的隱私性、更低的費用和更靈活多重簽名

該 BIP 還指定了Schnorr 公鑰和簽名在比特幣中的編碼方式。與 ECDSA 的 33 字節公鑰相比,用於 Schnorr 簽名的公鑰長度爲 32 字節。此外,Schnorr 簽名的長度爲 64 字節,相比之下ECDSA簽名(包括sighash標誌)長度爲71-72字節。這些小的空間節省爲採用Taproot的比特幣用戶提供了費用上的節省。

了解有關 Schnorr 簽名的更多信息。

Taproot - BIP 341

BIP 340 定義了生成和編碼 Schnorr 簽名和公鑰的規範,但BIP 341定義了比特幣協議如何整合Schnorr 簽名。具體來説,比特幣腳本必鬚更新才能評估 Schnorr 簽名。 Taproot 還集成了默剋爾化替代腳本樹 Merkelized Alternative Script Trees (MAST),允許用戶將輸出鎖定到多個腳本。

支付至Taproot的輸出是版本1的SegWit輸出,所有Taproot交易都是SegWit交易。

支付到Taproot(P2TR)

Taproot 還引入了一種新的比特幣支付腳本類型。支付到Taproot(P2TR)允許用戶曏一個Schnorr公鑰或多種其他腳本的Merkle根支付。使用這種新的腳本類型,用戶可以創建一個UTXO(未花費交易輸出),它可以由私鑰的所有者或能滿足Merkle樹內任何腳本要求的任何人解鎖和使用。

關鍵聚合

Schnorr的關鍵聚合功能使得這種靈活性成爲可能。當比特幣髮送到P2TR輸出時,它會被鎖定到一個單一的公鑰,這個公鑰被稱爲Q。然而,這個公鑰Q實際上是由公鑰P和許多其他腳本類型的Merkle根聚合而成的。Merkle樹中的任何替代腳本都可以用於消費輸出。

>>>>> gd2md-html alert: inline image link here (to images/image2.png). Store image on your image server and adjust path/filename/extension if necessary.
(Back to top)(Next alert)
>>>>>

alt_text

這種設計允許用戶在消費時選擇覆雜的腳本或簡單的支付到公鑰功能,而不是在接收時進行選擇。衕時,它還確保了所有的Taproot輸出在外觀上都是相似的。因爲多簽名輸出、單簽名輸出以及其他覆雜的智能合約在區塊鏈上都呈現出相衕的外觀,這將使得許多鏈分析啟髮式方法變得無效,從而保護了所有Taproot用戶的隱私。

Tapscript - BIP 342

爲了實施 P2TR 交易,BIP 342 新增和更新了若幹操作碼。這些新腳本用於驗證 Taproot 支出和 Schnorr 簽名,它們統稱爲 Tapscript。

Tapscript 的設計旨在最大化 P2TR 支出的未來靈活性,以便允許進行尚未預見的升級。

Taproot的好處

Taproot 升級爲採用 Taproot 的比特幣用戶以及未採用的用戶帶來了許多好處。引入 Schnorr 簽名爲隱私和安全提供了顯著的好處,但 Taproot 和 Tapscript 也帶來了它們自己的優勢。

詳細了解 Schnorr 簽名的優勢。

節省空間

大多數Taproot(P2TR)輸出在區塊鏈上占用的空間比普通的P2PKH輸出少,但比P2WPKH輸出稍大。這主要是因爲P2TR輸出將比特幣直接鎖定到公鑰上,而不是公鑰的哈希。因此,曏Taproot輸出髮送交易會稍微更昂貴,因爲公鑰占用的空間比公鑰哈希大。然而,花費Taproot輸出明顯更便宜,因爲公鑰已包含在scriptPubKey中,不需要在Script Witness中再次包含。

此外,Taproot還定義了Schnorr公鑰和簽名的編碼方案,使它們比ECDSA的對應項更短,從而提供了額外的費用節省。這意味著使用Taproot的交易可以在區塊鏈上占用更少的空間,從而降低了交易費用,併有助於提高比特幣網絡的效率。

隱私優勢

Taproot 升級對隱私的影響可能是其中最重要的方麵。它引入了Schnorr簽名和密鑰聚合,使多重簽名合約看起來與單簽名合約沒有明顯區別,爲所有Taproot用戶提供了更好的隱私保護。


由於閃電網絡依賴2-of-2多重簽名,Taproot使得無法確定哪些交易用於創建閃電通道。

此外,Taproot還通過集成MAST(Merkleized Abstract Syntax Trees)帶來了顯著的隱私優勢。正如前麵提到的,Taproot允許比特幣衕時鎖定多個腳本。然而,在花費Taproot輸出時,支付者無需透露所有可能用於解鎖比特幣的腳本,而隻需透露他們實際使用的腳本。在大多數情況下,Taproot用戶可能會選擇使用付費公鑰選項,這使他們可以保留私下備份的可能性。

詳細了解 Taproot 如何升級 Lightning 的用戶體驗。

安全升級

從技術和理論角度來看,與ECDSA簽名相比,Schnorr簽名被認爲更安全。這是因爲Schnorr簽名的安全性證明所需的假設條件較少。像所有橢圓曲線加密方案一樣,ECDSA和Schnorr都依賴於一個假設,即離散對數問題難以解決。然而,爲了確保安全性,ECDSA還依賴於其他額外的假設。盡管如此,迄今爲止,在比特幣存在的整個歷史中,尚未髮現ECDSA被繫統性地破解的案例。

Schnorr簽名還消除了ECDSA簽名中可能存在的簽名可塑性問題。雖然交易的可塑性問題已通過SegWit升級得到解決,但ECDSA的簽名可塑性特性仍然存在。

Taproot啟用了Taro協議

Taro是一個由Taproot驅動的協議,允許用戶在比特幣區塊鏈和閃電網絡上髮行資産。通過以Taproot爲中心的設計,與以前嘗試在比特幣上引入其他資産的方法相比,這種資産髮行可以更加私密和可擴展。Taro協議由Lightning Labs於2022年4月提出。

在Taro協議中,Taproot用於將資産元數據嵌入到現有的交易輸出中,而Schnorr簽名則用於提高簡單性和可擴展性。Taro這個名字是Taproot Asset Representation Overlay(Taproot資産錶示覆蓋)的首字母縮寫,這錶明如果沒有Taproot,這種升級將無法實現。

Taproot激活

當提出對比特幣進行升級時,首先由開髮者社區進行討論。一旦提案正式化,它將被分配一個BIP編號。然後,代碼編寫、審核、測試和合併的工作開始,接著,比特幣節點運營商必鬚決定何時以及如何激活這個升級。

在2020年1月,Schnorr、Taproot和Tapscript升級分別被分配了BIP 340、341和342號,併自那時以來一直在進行討論和開髮。到了2020年底,這三個升級的代碼實現已經完成、測試通過、審核完畢,併合併到比特幣核心代碼中。

隨著時間的推移,在2021年5月,超過90%的礦工錶示支持Taproot升級,併且於2021年11月12日的區塊709,632上激活併強製執行了BIP 340、341和342。在激活比特幣的升級方麵,有多種方法可供選擇,而比特幣社區則選擇了一種路徑併加以執行。

比特幣激活路徑

在比特幣社區中,BIP 8和BIP 9是兩種常見的激活升級的方法。這兩個過程都始於對比特幣礦工支持情況的調查。如果絶大多數礦工通過他們挖掘的區塊中的消息錶示支持升級,那麽升級將被激活。但是,BIP 8和BIP 9之間存在一個關鍵區別,即在礦工支持不足的情況下如何處理。

根據BIP 9的規定,如果礦工支持不足,升級不應進行,而BIP 8則規定在延遲期之後應該激活升級。在Taproot激活的情況下,這兩種提案的變體被提出。然而,值得註意的是,比特幣社區對Taproot的支持是壓倒性的,很少有批評意見。

因此,具體的激活路徑在很大程度上是無關緊要的。

聲明:

  1. 本文轉載自[river],著作權歸屬原作者,如對轉載有異議,請聯繫Gate Learn團隊,團隊會根據相關流程盡速處理。
  2. 免責聲明:本文所錶達的觀點和意見僅代錶作者個人觀點,不構成任何投資建議。
  3. 文章其他語言版本由Gate Learn團隊翻譯, 在未提及Gate.io的情況下不得覆製、傳播或抄襲經翻譯文章。
即刻开始交易
注册并交易即可获得
$100
和价值
$5500
理财体验金奖励!
立即注册