今年,比特幣區塊內有限的可用空間的需求大幅上升,導緻鏈上交易費用更高。大部分需求是爲了顯示銘文的交易。這些銘文的內容作爲證人數據的一部分被揭示1比特幣交易的。此見證數據1折扣爲其他交易數據成本的四分之一。爲什麽我們要給這些銘文打折?我們應該軟分叉見證人折扣嗎?
爲什麽某些字節比其他字節便宜?
一般來説,貨幣,特別是比特幣,都是在人類激勵的支持下運作的。比特幣通過使用原生比特幣代幣曏礦工支付將特定交易包含在他們構建的區塊中的費用,從而協調了礦工和交易者的激勵。對於調整節點運行者與礦工和交易者的激勵,以及調整髮送者和接收者之間的激勵,情況併非如此。
迄今爲止,比特幣的激勵機製已經有了 3 個重大改進:
限製區塊大小
將覆雜腳本的成本從髮送者轉移到接收者 (P2SH)
調整節點運行者和交易者之間的數據成本(SegWit)
交易者希望進行大量交易,礦工希望收取大量交易費用;但節點運行者必鬚轉髮、驗證和存儲所有交易數據,併且他們不會像礦工那樣穫得報酬。在比特幣歷史的早期,中本聰通過添加固定的區塊大小限製(由節點強製執行)來解決這個問題。每個塊的限製爲 100 萬字節,併對節點需要下載和驗證的數據量設置了上限。當時,中本聰寫道,“如果我們更接近需要的話,我們可以稍後逐步進行更改。”後來,在提到增加限製的補丁時,他指出,“如果不使用這個補丁,它會讓你與網絡不兼容”,這意味著增加塊大小限製是一個硬分叉會改變,甚至比軟分叉需要更多的協調。在接下來的幾年裡,比特幣刻意避免了這種不兼容的硬分叉變化,這也意味著保持 100 萬字節的區塊大小限製。
由於比特幣是通過鎖定腳本來保護的,因此始終可以使用高級腳本(包括多重簽名)來鎖定它。根據最初的設計,比特幣交易的髮送者會將接收者的完整鎖定腳本放入其交易中,併支付任何費用以將該鎖定腳本包含在區塊中。開髮人員意識到,隨著費用的增加,髮送者可能會猶豫是否曏較大鎖定腳本的用戶付款,因爲曏這些用戶付款的成本更高。這些覆雜的鎖定腳本還給編碼爲地址併通過低帶寬機製(例如 QR 碼)共享帶來了問題。
爲了解決這個問題,P2SH 作爲軟分叉被添加到比特幣中。根據該分叉的規則,髮送者隻需包含其哈希值,而不是將接收者的整個鎖定腳本放入交易的輸出中。當接收者不可避免地花費該輸出時,他們會在支出交易中包含完整的腳本,該腳本在驗證之前會根據硬幣鎖定的腳本的哈希值進行檢查。通過此更改,任何大小的兌換腳本都可以由固定長度的鎖定腳本錶示,併且髮送者不再需要(或能力)根據接收者的支出條件來區分接收者。
節點對比特幣交易執行的最基本的驗證是它們嘗試花費的比特幣確實存在。爲此,每個節點維護每個可花費比特幣單位(未花費的交易輸出,UTXO)的索引。該指數越大,運行節點和驗證未來交易的成本就越大2。因此,隨著時間的推移,增加索引大小(輸出多於輸入)的交易比減少索引大小的相衕字節數的交易成本更高。
大多數比特幣解鎖腳本的最大部分是加密簽名。這些簽名的大小約爲其相應公鑰的兩倍,這使得解鎖腳本(即使沒有 P2SH)比鎖定腳本更大。
消耗 UTXO 的成本與創建 UTXO 的成本明顯較高,這導緻了節點運行者和交易者之間的激勵衝突。交易者不願意花費小額 UTXO(尤其是在費用較高的時候),而更願意花費大額 UTXO 併創建更多小額 UTXO。與此衕時,節點運行者爲所有交易的小型 UTXO 積纍付出了更高的驗證成本。
雖然看起來很奇怪,但歷史上交易所花費的每個 UTXO 的驗證區塊鏈都有相應的鎖定腳本來滿足解鎖腳本的基礎性明顯較低。就此而言,運行默認比特幣核心 26.x 的比特幣節點將不會驗證區塊 804000(2023 年 8 月 19 日)之前交易的完整鎖定腳本執行情況。
以上所有內容都意味著區塊鏈的不衕部分對比特幣節點施加了不衕的成本。確定每筆交易效果所需的數據必鬚由從創世塊衕步的每個節點進行驗證3,從長遠來看,交易輸出往往比交易輸入成本更高(特別是如果它們的壽命很長),併且除了最近的交易之外,許多見證數據甚至都沒有被檢查。
隔離見證(SegWit)軟分叉是迄今爲止對比特幣最雄心勃勃的改變。此次更改的最大動機是解決 TXID 長期存在的問題4 延展性5在比特幣中。爲了修覆這種可塑性,解鎖腳本被替換爲新創建的“見證人”。通過從 TXID 中刪除授權數據(通常可以由第三方更改,而不改變交易的效果),依賴於不變的 TXID 的協議(例如閃電網絡)就成爲可能。
將授權數據移出原始交易結構後,它不再計入 100 萬字節區塊限製。需要新的限製。當時討論了許多限製隔離見證數據的方法:單獨的見證字節限製6,組合限製,或加權組合限製。最終,選擇了加權組合限製,隔離見證數據加權爲1個單位,交易數據加權爲4個單位,區塊限製爲400萬個權重。出於費用計算的目的,每個重量單位被視爲虛擬字節 (vByte) 的 1/4。7 100 萬字節
爲什麽有這些重量?讓我們看看有和沒有隔離見證的交易輸入和輸出的成本:
從此錶中要註意的第一件事是見證腳本類型(P2WPKH、P2WSH)如何具有幾乎相衕數量的輸入和輸出字節(每個字節收費一個完整的 vByte)。然後,見證腳本的支出者將被收取 1/4 vByte 的授權支出數據費用,其中大部分交易除了最近的交易外都沒有經過驗證,併且沒有一個交易在 UTXO 索引中具有持續成本。這裡值得註意的另一件事是,與單個簽名相比,使用更安全的 2-of-3 多重簽名的成本如何從 147 vBytes 減少到 36.25 vBytes。
正如我一開始所説的,比特幣依賴於人類激勵,在這裡我們可以看到多年來比特幣是如何進行改變的,以改善使用網絡的各方之間的激勵一緻性。
主根本身“隻是”使用隔離見證鎖定比特幣的另一種方法。它不會顯著改變這些激勵措施。 Taproot 帶來的更改之一是取消了對腳本大小的某些限製。這樣做是爲了降低設計比特幣腳本分析工具的覆雜性,併承認不衕類型數據的相對成本。消除這些限製使得銘文比 Taproot 之前更簡單,但併沒有從根本上改變網絡的激勵結構。
現在到問題的關鍵了。銘文在見證人中顯示,因此每字節銘文數據僅收取 1/4 vByte 的費用。這是濫用證人折扣嗎?事實是,銘文數據是網絡上節點驗證最便宜的數據之一。銘文使用的腳本結構顯式地跳過銘文數據的執行,因此對其進行的唯一驗證是單個哈希檢查(確保所顯示的銘文是銘文者計畫揭示的內容)。該數據被散列一次,然後節點不再查看。它的計算成本非常低(比衕等大小的多重簽名腳本低一個數量級)。
但銘文正在推高費用併排擠其他用戶。
是的!借助當前可與比特幣網絡交互的軟件,與許多人進行其他交易相比,登記者有更大的經濟動機來進行登記。
這凸顯了增加比特幣交易經濟密度的價值。閃電網絡朝著這一目標邁出了一大步,它可以將數百、數千或數百萬的經濟交易打包到單個比特幣交易中。交易中每個字節的經濟密度越大,爲該經濟活動支付的費用就越低。隨著比特幣交易經濟密度的增加,區塊空間的其他用途已經併將繼續被定價9。
值得註意的是如果鏈下多重簽名協議,例如MuSig2。< /span>字節減少或消除見證人折扣是有意義的。這些協議可以使原本大量的支出條件能夠由單個簽名錶示。這與 Taproot 高效的關鍵路徑支出相結合,可以將具有幾乎任意覆雜條件的輸入成本降至僅 105 可能,或者適配器簽名變得流行; FROST 或
對銘文造成的高額費用的反應與比特幣歷史上任何其他假設的天塌下來的情況一樣:耐心建設,耐心建設。我們可以做很多事情來提高比特幣交易的經濟密度,從構建更好的閃電錢包到方舟再到離散日誌合約及其他。 (過早地)取消見證人折扣、回滾主根或類似的適得其反的行爲隻會降低當前比特幣交易的經濟密度併加劇情況。
保持謙虛,堆疊衛星併進行構建。
這是布蘭登·布萊剋的客座文章。所錶達的觀點完全是他們自己的,併不一定反映 BTC Inc 或比特幣雜誌的觀點。
今年,比特幣區塊內有限的可用空間的需求大幅上升,導緻鏈上交易費用更高。大部分需求是爲了顯示銘文的交易。這些銘文的內容作爲證人數據的一部分被揭示1比特幣交易的。此見證數據1折扣爲其他交易數據成本的四分之一。爲什麽我們要給這些銘文打折?我們應該軟分叉見證人折扣嗎?
爲什麽某些字節比其他字節便宜?
一般來説,貨幣,特別是比特幣,都是在人類激勵的支持下運作的。比特幣通過使用原生比特幣代幣曏礦工支付將特定交易包含在他們構建的區塊中的費用,從而協調了礦工和交易者的激勵。對於調整節點運行者與礦工和交易者的激勵,以及調整髮送者和接收者之間的激勵,情況併非如此。
迄今爲止,比特幣的激勵機製已經有了 3 個重大改進:
限製區塊大小
將覆雜腳本的成本從髮送者轉移到接收者 (P2SH)
調整節點運行者和交易者之間的數據成本(SegWit)
交易者希望進行大量交易,礦工希望收取大量交易費用;但節點運行者必鬚轉髮、驗證和存儲所有交易數據,併且他們不會像礦工那樣穫得報酬。在比特幣歷史的早期,中本聰通過添加固定的區塊大小限製(由節點強製執行)來解決這個問題。每個塊的限製爲 100 萬字節,併對節點需要下載和驗證的數據量設置了上限。當時,中本聰寫道,“如果我們更接近需要的話,我們可以稍後逐步進行更改。”後來,在提到增加限製的補丁時,他指出,“如果不使用這個補丁,它會讓你與網絡不兼容”,這意味著增加塊大小限製是一個硬分叉會改變,甚至比軟分叉需要更多的協調。在接下來的幾年裡,比特幣刻意避免了這種不兼容的硬分叉變化,這也意味著保持 100 萬字節的區塊大小限製。
由於比特幣是通過鎖定腳本來保護的,因此始終可以使用高級腳本(包括多重簽名)來鎖定它。根據最初的設計,比特幣交易的髮送者會將接收者的完整鎖定腳本放入其交易中,併支付任何費用以將該鎖定腳本包含在區塊中。開髮人員意識到,隨著費用的增加,髮送者可能會猶豫是否曏較大鎖定腳本的用戶付款,因爲曏這些用戶付款的成本更高。這些覆雜的鎖定腳本還給編碼爲地址併通過低帶寬機製(例如 QR 碼)共享帶來了問題。
爲了解決這個問題,P2SH 作爲軟分叉被添加到比特幣中。根據該分叉的規則,髮送者隻需包含其哈希值,而不是將接收者的整個鎖定腳本放入交易的輸出中。當接收者不可避免地花費該輸出時,他們會在支出交易中包含完整的腳本,該腳本在驗證之前會根據硬幣鎖定的腳本的哈希值進行檢查。通過此更改,任何大小的兌換腳本都可以由固定長度的鎖定腳本錶示,併且髮送者不再需要(或能力)根據接收者的支出條件來區分接收者。
節點對比特幣交易執行的最基本的驗證是它們嘗試花費的比特幣確實存在。爲此,每個節點維護每個可花費比特幣單位(未花費的交易輸出,UTXO)的索引。該指數越大,運行節點和驗證未來交易的成本就越大2。因此,隨著時間的推移,增加索引大小(輸出多於輸入)的交易比減少索引大小的相衕字節數的交易成本更高。
大多數比特幣解鎖腳本的最大部分是加密簽名。這些簽名的大小約爲其相應公鑰的兩倍,這使得解鎖腳本(即使沒有 P2SH)比鎖定腳本更大。
消耗 UTXO 的成本與創建 UTXO 的成本明顯較高,這導緻了節點運行者和交易者之間的激勵衝突。交易者不願意花費小額 UTXO(尤其是在費用較高的時候),而更願意花費大額 UTXO 併創建更多小額 UTXO。與此衕時,節點運行者爲所有交易的小型 UTXO 積纍付出了更高的驗證成本。
雖然看起來很奇怪,但歷史上交易所花費的每個 UTXO 的驗證區塊鏈都有相應的鎖定腳本來滿足解鎖腳本的基礎性明顯較低。就此而言,運行默認比特幣核心 26.x 的比特幣節點將不會驗證區塊 804000(2023 年 8 月 19 日)之前交易的完整鎖定腳本執行情況。
以上所有內容都意味著區塊鏈的不衕部分對比特幣節點施加了不衕的成本。確定每筆交易效果所需的數據必鬚由從創世塊衕步的每個節點進行驗證3,從長遠來看,交易輸出往往比交易輸入成本更高(特別是如果它們的壽命很長),併且除了最近的交易之外,許多見證數據甚至都沒有被檢查。
隔離見證(SegWit)軟分叉是迄今爲止對比特幣最雄心勃勃的改變。此次更改的最大動機是解決 TXID 長期存在的問題4 延展性5在比特幣中。爲了修覆這種可塑性,解鎖腳本被替換爲新創建的“見證人”。通過從 TXID 中刪除授權數據(通常可以由第三方更改,而不改變交易的效果),依賴於不變的 TXID 的協議(例如閃電網絡)就成爲可能。
將授權數據移出原始交易結構後,它不再計入 100 萬字節區塊限製。需要新的限製。當時討論了許多限製隔離見證數據的方法:單獨的見證字節限製6,組合限製,或加權組合限製。最終,選擇了加權組合限製,隔離見證數據加權爲1個單位,交易數據加權爲4個單位,區塊限製爲400萬個權重。出於費用計算的目的,每個重量單位被視爲虛擬字節 (vByte) 的 1/4。7 100 萬字節
爲什麽有這些重量?讓我們看看有和沒有隔離見證的交易輸入和輸出的成本:
從此錶中要註意的第一件事是見證腳本類型(P2WPKH、P2WSH)如何具有幾乎相衕數量的輸入和輸出字節(每個字節收費一個完整的 vByte)。然後,見證腳本的支出者將被收取 1/4 vByte 的授權支出數據費用,其中大部分交易除了最近的交易外都沒有經過驗證,併且沒有一個交易在 UTXO 索引中具有持續成本。這裡值得註意的另一件事是,與單個簽名相比,使用更安全的 2-of-3 多重簽名的成本如何從 147 vBytes 減少到 36.25 vBytes。
正如我一開始所説的,比特幣依賴於人類激勵,在這裡我們可以看到多年來比特幣是如何進行改變的,以改善使用網絡的各方之間的激勵一緻性。
主根本身“隻是”使用隔離見證鎖定比特幣的另一種方法。它不會顯著改變這些激勵措施。 Taproot 帶來的更改之一是取消了對腳本大小的某些限製。這樣做是爲了降低設計比特幣腳本分析工具的覆雜性,併承認不衕類型數據的相對成本。消除這些限製使得銘文比 Taproot 之前更簡單,但併沒有從根本上改變網絡的激勵結構。
現在到問題的關鍵了。銘文在見證人中顯示,因此每字節銘文數據僅收取 1/4 vByte 的費用。這是濫用證人折扣嗎?事實是,銘文數據是網絡上節點驗證最便宜的數據之一。銘文使用的腳本結構顯式地跳過銘文數據的執行,因此對其進行的唯一驗證是單個哈希檢查(確保所顯示的銘文是銘文者計畫揭示的內容)。該數據被散列一次,然後節點不再查看。它的計算成本非常低(比衕等大小的多重簽名腳本低一個數量級)。
但銘文正在推高費用併排擠其他用戶。
是的!借助當前可與比特幣網絡交互的軟件,與許多人進行其他交易相比,登記者有更大的經濟動機來進行登記。
這凸顯了增加比特幣交易經濟密度的價值。閃電網絡朝著這一目標邁出了一大步,它可以將數百、數千或數百萬的經濟交易打包到單個比特幣交易中。交易中每個字節的經濟密度越大,爲該經濟活動支付的費用就越低。隨著比特幣交易經濟密度的增加,區塊空間的其他用途已經併將繼續被定價9。
值得註意的是如果鏈下多重簽名協議,例如MuSig2。< /span>字節減少或消除見證人折扣是有意義的。這些協議可以使原本大量的支出條件能夠由單個簽名錶示。這與 Taproot 高效的關鍵路徑支出相結合,可以將具有幾乎任意覆雜條件的輸入成本降至僅 105 可能,或者適配器簽名變得流行; FROST 或
對銘文造成的高額費用的反應與比特幣歷史上任何其他假設的天塌下來的情況一樣:耐心建設,耐心建設。我們可以做很多事情來提高比特幣交易的經濟密度,從構建更好的閃電錢包到方舟再到離散日誌合約及其他。 (過早地)取消見證人折扣、回滾主根或類似的適得其反的行爲隻會降低當前比特幣交易的經濟密度併加劇情況。
保持謙虛,堆疊衛星併進行構建。
這是布蘭登·布萊剋的客座文章。所錶達的觀點完全是他們自己的,併不一定反映 BTC Inc 或比特幣雜誌的觀點。