比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads

干貨 | UTXO 合并是什么?_BYT

Author:

Time:1900/1/1 0:00:00

來源:BixinInstitute,原題《UTXO合并》

DavidA.Harding文

本文由幣信研究院原創編譯,原文鏈接:

https://github.com/bitcoinops/scaling-book/blob/6a7b1e9cc64ddf832b86276e7569604334f9012c/x.consolidation/consolidation.md

本文版權歸原作者所有,僅代表作者本人觀點,不代表幣信或幣信研究院的觀點或立場。

本文約6500字,閱讀全文需約20分鐘。

未使用交易輸出合并是指將存儲在多個UTXO中的比特幣價值合并為一個UTXO。這樣可以減少你控制的UTXO的數量,同時使你的余額保持大致相同,從而在為了獲得快速確認需要支付的時候,更有機會能夠創建更小、更實惠的交易。

合并示例

把交易想象成一個矩形,其高度是它的費率,其長度是它的大小,其面積是它的總費用。例如,以下所示為一筆簡單交易,它從一個P2WPKHUTXO花費到兩個P2WPKH輸出——一個輸出給客戶,另一個作為找零回到花費者那里。

大多數錢包最終都會遇到這樣的情況,即它們在一個UTXO中沒有足夠的價值來支付它們想要花費的金額。這就要求它們通過花費更多的UTXO為交易增加更多價值。例如,讓我們在示例交易中花費兩個額外的P2WPKHUTXO:

盡管這似乎是一個很小的變化,但它幾乎使我們的交易大小和成本增加了一倍。這就是合并發揮作用的地方。通過提前準備,我們可以把大型交易的三個UTXO,通過一筆自己發給自己的低費率交易,合并到一個UTXO。然后,我們可以在高費用交易中使用單個UTXO向客戶付款,交易形式與上述第一個示例交易相同:

比較總成本,我們發現兩次交易的版本比使用三個UTXO的單筆高費率交易便宜40%。即使兩次交易的版本使用了更多的總區塊空間,這也是可能的。

Bitrue:所有受安全事件影響的用戶將得到全額補償:4月18日消息,數字資產交易平臺 Bitrue 發布安全事件更新,表示所有受到事件影響的用戶將得到全額補償,已經部分完成了安全檢查,因此能夠恢復除 QNT、MATIC 和 HOT 之外的所有代幣的正常操作,將繼續努力盡快完成安全檢查。

此前4月14日消息,Bitrue熱錢包遭受攻擊,損失約2440萬美元。[2023/4/18 14:09:48]

如果合并交易在你發送第二筆給客戶的交易之前得到確認,那么,與單筆交易相比,客戶不會遇到任何額外的延遲,因此你可以節省少量的錢而完全無需改變接收方的體驗。

平均花費的UTXO

從前面的示例中,我們可以看出,當需要在一個交易中使用多個UTXO時,支出是低效的,而合并才有用。這對你來說有多頻繁?如果你可以獲取以下兩個數據,則可以使用下面提供的簡單公式估算每個交易使用的UTXO的平均數量。

轉入——你的錢包從其他人處獲得的輸出數量。

轉出——錢包創建的將比特幣發送給其他人的交易數量。如果你使用批量付款,請注意,這是交易數量,而不是付款數量。為了提高精度,你可以在此總數中包括你期望在錢包為空之前進行的交易數量。

要計算每筆交易花費的UTXO的平均數量,請使用以下公式:

average_utxos=(轉入+轉出)/轉出

之所以轉出在除號的上下都有,是因為我們預期你創建的大多數交易,也會產生一個找零輸出,把未使用的價值作為一個新UTXO返回到你的錢包。

上面等式的最小現實結果是1.0,這也是交易可包含的UTXO的最小數量。你的結果越是高于1.0,你將從UTXO合并中受益越多,這將在下一部分中看到。

預計節省

要估計使用合并可以節省多少,讓我們看看一筆典型交易的總費用如何取決于它花費了多少UTXO。查看此圖表時,請將x軸與你在上一節中計算的UTXO平均數量進行比較。

如果我們能使用僅支付上圖所用費率的1/10的合并交易,將所有多余的UTXO合并為一個UTXO,會怎么樣?然后,我們可以按足額費率只用一個UTXO去創建常規支出。將這些數據覆蓋在上圖的頂部,我們可以看到可以節省多少:

跨鏈交易和流動性路由協議Squid完成350萬美元融資:金色財經報道,跨鏈交易和流動性路由協議Squid宣布完成350萬美元融資,North Island Ventures領投,Distributed Global、Fabric Ventures、Galileo、Chapter One和Node Capital等參投。

據悉,Squid是Axelar Network上的跨鏈交易和流動性路由協議。Squid利用現有的DEX在鏈之間交易和發送任何本地代幣。交易可以與Axelar的通用消息傳遞組合,因此Squid可以使用任何資產在任何應用程序和任何用戶之間實現一鍵交易。[2023/2/1 11:39:33]

讓我們以百分比的形式繪制節省的量:

顯然,我們節省的實際金額將取決于用于合并的低費率和用于支付客戶的較高費率之間的比率。使用本文附錄中提供的數據,在撰寫本文時,通常可以實現以下比率:

另一個會影響我們節省金額的事情是,為了花費每筆UTXO,我們需要向交易中添加多少數據;即交易輸入的大小。對于P2WPKH,大約為每UTXO68vbytes;但是對于P2SH2-3多簽,大約為294vbytes。假設我們將常規支出的費率統一為1/10,則各種常見腳本模板的節省為:

根據以上估計,我們預計,至少在某些時候,幾乎所有活動的比特幣服務都可以通過合并節省大量費用。例外情況是,UTXO的平均數量非常少,或者在快速費率和慢速費率之間的差額持續小的時候嘗試合并的服務。

UTXO池

上面的示例假定你將從擁有n個UTXO變為僅有一個UTXO,但是,如果你需要廣播一筆交易而你的交易其中一筆又沒有被確認,那么這可能會造成問題。

從全節點的角度來看,UTXO有兩種形式:已確認和未確認。已確認UTXO是最佳區塊鏈上一筆交易的輸出。大多數現有節點將始終接受第一眼看到的已確認UTXO的支出,前提是該支出是有效的,即支付了適當的費率,小于100000vbytes,并且遵循其他一些簡單規則。

美國OCC:美國銀行一直在減少他們對加密貨幣的興趣:金色財經報道,美國貨幣監理署(OCC)周四發布了半年度風險展望報告,其中加密貨幣的風險引起了該機構的高度重視。該報告指出,大多數加密貨幣市場參與者似乎對今年發生的壓力和意外毫無準備,導致數百萬消費者遭受重大損失。美國絕大多數重要的銀行在沒有得到該機構同意以安全的方式開展業務的情況下,都不得涉足新的加密業務。

OCC代理主任Michael Hsu稱,自今年Terra / LUNA和FTX事件的雙重爆發以來,美國銀行一直在減少他們對加密貨幣的興趣。[2022/12/9 21:32:38]

一個未確認UTXO是一筆仍在內存池里的交易的輸出。為了防止針對節點內存池的DoS攻擊,節點對使用未確認UTXO的交易設置了其他限制。這意味著,你無法保證能夠在任意時間使用未確認UTXO。例如,在第一個交易被確認之前,錢包可能無法傳播以下所示的第二個交易:

由于許多用戶希望在請求付款后的幾秒鐘內就在錢包里收到新的未確認交易的通知,因此許多支出者不希望自己陷入這種狀態:等待之前的一筆交易得到確認,而無法向網絡提交新交易。這會導致這些花費者維護一個UTXO池——一套可以隨時使用的已確認UTXO。

UTXO池不會顯著影響前面所述的節省,因為你始終可以等到以后將池子合并為一個UTXO。但是,你在不同UTXO之間分配資金以確保即時可花費性的次數越多,你需要付款超出你控制的任何單個UTXO的價值的可能性就越大——這削弱了UTXO合并的費用節省。

如果你很少在UTXO池中遇到該問題,則可以忽略這種情況,因為它的效率很低。如果經常發生,則有幾種選擇:

1.通過保持輸出數量相同并增加每個輸出的價值,來增加UTXO池中輸出的平均價值,從而總體上增加池子里的資金量。請注意,這還會增加你因盜竊或熱錢包意外而蒙受的金錢損失。

2.通過保持總量不變但減少輸出數量,增加UTXO池中輸出的平均價值。你可以通過批量付款來減少在任何特定時間所需的UTXO數量來完成此操作。

3.如本章稍后所述,專注于創建不找零的交易。由于后面小節中所描述的原因,不找零的交易通常不如合并有效,但可以為你節省一些錢。當優化你的UTXO池以進行不變的交易時,你希望UTXO擁有各種金額,以便你有盡可能多的不同金額組合。

最佳合并大小

Nic Carter:白宮關于加密挖礦氣候影響的報告存在九大錯誤:9月19日消息,CoinMetrics聯合創始人Nic Carter近日發文指出,白宮科技政策辦公室(OSTP)發布的研究報告《美國加密資產的氣候和能源影響》存在9個關鍵錯誤,具體如下:幾乎沒有新數據;忽略業內專家的貢獻;依賴De Vries/Digiconomist相關文章;依賴Gallersd?rfer、Klaa?en和Stoll相關文章;

引用Mora等人2018年發表的垃圾論文;在自己輕率使用數據的同時,敦促謹慎使用數據;對使用可再生能源的礦工所做的努力置若罔聞;拒絕預測比特幣的能源消耗軌跡。提出愚蠢且適得其反的建議。[2022/9/19 7:06:49]

要合并UTXO,你要在交易中包含的數據不只是UTXO,還必須包括輸出,該輸出將資金返還給自己,并包含一些交易樣板。你在單個交易中合并的UTXO越多,該交易的固定成本在UTXO之間的分配就越好,每個UTXO的成本漸近地接近其中一項輸入的平均大小。

如上所示,通過同時合并額外UTXO所節省的金額并不是特別大,因此即使你不注意合并大小,也可以獲得合理的效率。

冷錢包合并

某些服務在其錢包之間有著基本的職責劃分。收到的客戶存款或付款都將存入冷錢包。付款或提款是使用熱錢包進行的。必要時,一個或多個工作人員將錢從冷錢包轉移到熱錢包。

一個簡單的合并策略是將在一定時期內收到的所有UTXO都放到冷錢包里,然后將它們合并到一個UTXO。但是,你可能會想知道這是否產生了浪費,因為你可能最終在以后將單個UTXO拆分為熱錢包UTXO池的多個UTXO。例如,如果將10個UTXO合并為1個UTXO,則將其轉移回5個UTXO似乎效率很低。

但是,兩種替代選項可能更糟。第一種替代選項是你不合并冷錢包。你只用等到需要轉賬到熱錢包并執行合并。這最大程度地減少了區塊鏈空間的使用——但所有這些空間都用在了單筆大型交易里。如果你需要交易進行快速確認——例如,因為你需要這筆錢才能動熱錢包——你可能會為該交易支付高額費率,從而失去合并冷錢包的好處。

第二種替代選項是,將10個UTXO合并到冷錢包中的5個UTXO,然后將5個冷的UTXO轉移到5個熱錢包UTXO。在所有可用選項中,這將使用最多的區塊空間。它以低合并費率創建了一筆大型交易,并以較高的費率創建了一筆中等規模的交易來把錢發送到熱錢包。這使它成為表現最差的選項。

中華老字號剪刀品牌“張小泉”推出數字藏品:金色財經報道,據 “張小泉”官方公眾號,這家中華老字號剪刀品牌已宣布推出匠師道系列數字藏品,主要用來賦能線下品宣活動,結合實物促進實體銷售,首發定制“4+1”款,集齊四款匠師神器即可提前解鎖SSR級數字藏品神王之刃的購買資格和實物商品。不過,張小泉在投資者互動平臺表示,數字藏品計劃目前處于探索和嘗試階段,其未來進展存在較大不確定性。[2022/6/11 4:18:24]

雖然最大程度地合并UTXO然后在以后進行拆分似乎有點愚蠢,但本節開頭描述的簡單合并策略確實可以提供最大的節省。

隱私問題

當你收到從未使用過的新地址的付款時,查看區塊鏈歷史的分析人員將不知道誰擁有該UTXO。但是,如果你將UTXO與他們已確定屬于你的其他UTXO合并,則分析師可以做出合理的假設,即所有合并的資金均屬于你。

因此,試圖最大化自己的比特幣余額或交易歷史的私密性的用戶不應使用本文檔中描述的UTXO合并。以前使用過諸如混幣之類的技術來將其UTXO的所有權歷史與其他UTXO混合在一起的用戶,尤其應該避免這種情況。

有可能在混幣期間執行一種限量的合并,例如,在Joinmarket或Wasabi中的實現。此外,未來協議開發的構想,例如通道工廠或混合池,可能會使由多個人擁有的多個UTXO合并為一個UTXO,然后用于定期支出的情況變得更為普遍,使得分析者更不清楚誰擁有來自合并的幣。

選擇UTXO進行合并

你的目標是使用一個UTXO完成盡可能多的付款,因此你應該首先合并最低價值的UTXO。此外,通過確保每次選擇接收到特定地址的UTXO時,還選擇接收到同一地址的所有其他UTXO,可以減少隱私損失。例如,假設你想在下面的示例錢包中合并三個UTXO:

你應該選擇abcdef:0,因為它是價值最低的UTXO。然后選擇cdefab:0,因為它被發送到與abcdef:0相同的地址。最后,選擇bcdefa:0,因為它是價值次低的UTXO。

關于選擇相關UTXO的更多信息,請參閱BitcoinCore里的-avoidpartialspend配置選項。

合并與競爭技術

在使用UTXO合并的同時,無法有效地使用另一些節省費用的技術,因此以下小節將它們與合并進行了比較,同時突出了它們的優缺點。

不找零的交易

不找零的交易不包含找零輸出,這使典型交易的大小減少了約31至43vbytes。盡管在僅花費一個UTXO的時候有可能創建一筆不找零的交易,但是,通常需要同時花費兩個或更多UTXO才能產生一筆不找零的交易。這是因為,如果你愿意使用任意數量的輸入,那么,可以在交易中包括的UTXO組合的數量會極大地有助于尋找一筆不找零的交易。

不找零的交易節省了區塊空間和費用,因此強烈建議你使用。但是,與需要在同一筆交易中花費兩個或多個UTXO的不找零交易相比,有效使用UTXO合并幾乎總是可以節省更多的錢。這是因為,所有常用腳本的交易輸入都比交易輸出大得多,因此可以省略輸出省下的成本并不能彌補必須包含額外輸入的成本。

不找零的交易還會從你的錢包中刪除一個UTXO,與UTXO合并一樣,減少了你未來的交易費負擔。節省下來的錢更難分析,因為通常你會湊整交易費來創建不找零的交易,從而增加支出費率。但是,即使我們忽略這一點,因為輸入遠遠大于輸出,所以,以較低的費率進行合并仍將比以較高的支出費率創建兩個輸入的不找零交易節省更多的錢。考慮一個示例:Alice和Bob分別收到10個UTXO。Alice將其UTXO合并為單個UTXO,費用為正常支出費用的1/10,然后發送五筆付款。Bob將自己的UTXO分開存放,并自己發送五筆付款,每筆付款都使用兩個UTXO來按正常支出費率創建不找零的交易:

Alice的合并交易為679.25vbytes;她隨后的五筆付款交易是136.50vbytes。Bob的五筆不找零的交易大小為169.25vbytes。

如果Alice和Bob都以相同的費率發送他們的付款交易,我們可以使用一些簡單的代數來計算Bob進行合并交易所需的費率百分比,以便與Alice使用不找零的交易節省的錢相等:

719.25*x+5*140.50=5*177.25

x=0.26

總之,如果Alice能夠以她通常花費費率的1/4或更低進行合并,她將比Bob省下更多的錢,即使她使用了比他多將近一倍的區塊空間。本章附錄中的費率數據表明,在我們粗略的假設下,超過96%的時間都有可能節省費用。

如果Bob需要為每個交易使用兩個以上的輸入來創建不找零的交易,即使Alice為合并交易使用了相應較高的費用率,她也可以節省更多的錢。

就是說,與合并交易相比,不找零的交易的明顯優勢在于,它們使支出者節省了區塊空間并節省了適度的交易費,同時保留了他們的隱私以防上述「合并隱私」部分所述的問題。對于大多數個人消費者,甚至是花費不頻繁的小企業而言,隱私優勢對他們來說比合并節省的交易費更為重要。

預測性/有機UTXO管理

預測性UTXO管理是由BitGo提供的一種服務:「通過在高費率減少交易大小,同時在低交易費時自動清理和處理幣的小片段,來降低總體成本。」這種技術的具體實現是專有的,但它可能類似于DmitryPetuhov所描述的有機UTXO合并。

此類技術消除了合并交易使用的額外區塊鏈空間,從而使其可能更有效率并節省更多交易費。它可能更容易實現某些服務,因為不需要等待數小時或數天即可確認合并交易。此外,BitGo的預測性UTXO管理系統尤其似乎可以使用上一節中所述的不找零的交易實現部分節省,以及其中描述的額外的節省和隱私好處。

但是,在節省費用方面,對于希望在接下來的幾個區塊里確認其支出交易的支出者,UTXO合并通常會比預測性/有機技術節省更多的錢。這是因為,利用預測性/有機交易在區塊鏈空間上省下的幾十個字節,與能夠通過在較低費率支出UTXO來節省很大比例的UTXO支出成本并不匹配。實際上,在前面的插圖中對此進行了量化:

對于平均每筆交易花費兩個或更多UTXO且可以按正常費率的50%或更少的價格進行合并的人,合并至少可以使成本達到收支平衡,并且可以輕松地比發送普通交易節省更多的錢。本章附錄中包含的費率數據顯示,在我們分析的2019年11月和12月期間,有99.85%的可能性為名義上的2個區塊確認目標節省至少50%的費率。

同樣,預測性/有機方法的確具有以下優勢:與現有服務的合并相比,它的實現可能要容易得多,并且與不找零的交易相結合,可以實現適度的額外節省并增強隱私性。不過,專注于最大程度地節省費用的支出者可能會希望專注于UTXO合并。

增加交易費

節省最大的合并交易,應該以你認為允許交易在需要之前確認的最低費率發送。例如,如果你可以等待一周的時間來確認交易,那么你應該使用交易費估算工具的目標費率在1008個區塊內進行確認。

但是,來讓一筆先前發送的合并交易更快地確認,或者因為費率意外上漲,有時你可能需要增加其手續費。在這種情況下,你有幾種選擇:

對于從熱錢包到熱錢包的合并,你應發出BIP125信號,這樣你可以使用費用替代來增加交易費,這是最有效的增加交易費類型。

對于從冷錢包發送到熱錢包的合并,你可以輕松地使用「為父輩付費的子輩」來增加交易費。

對于從冷錢包發送到冷錢包的合并,你可能需要設計你的交易,以便它們始終包含支付給熱錢包的少量輸出。這樣,你就可以通過熱錢包使用CPFP收費功能,而無需重新打開冷錢包。但是,除非你打算把錢轉到你的熱錢包里,否則這種額外的輸出可能會稍微降低合并效率。

結論

對于既頻繁接收又頻繁發送付款的組織來說,合并是省錢的最有效方法之一。它相對容易實現,如果做得好,收到你付款的人將永遠不會注意到你正在這樣做。

另見

AnthonyTowns的《田野報告:在Xapo合并了400萬個UTXO》

MarkErhardt的《演講:unspent管理與幣的選擇》

附錄A:

下圖顯示了使用BitcoinCore的交易費估算的2個區塊確認目標和1008個區塊確認的目標,在一段時間內可用的預計節省。

下表總結了達到一定節省率的頻率。我們看到,幾乎總是可以通過等待一周來節省50%的費率,并且通常可以節省90%或更多。

我們使用上述的一周目標是因為,這是BitcoinCore的評估器所提供的最長期限,并且對于許多組織而言,等待一筆合并交易一周的時間來確認是很容易的。后續的有關費率估算和緊急權衡的章節將更詳細地分析不同確認目標之間的費率差異。

-TheEnd-

Tags:ALIBITBYTICERealis Networkbybit幣怎么提出SBYTEslice幣價格

fil幣價格今日行情
摩根溪CEO:如果過去五年投資組合中比特幣占1%,其表現就可超過所有投資組合。_比特幣

摩根溪首席執行官MarkYusko在1月30日發布的Keizer報告中接受MaxKeizer采訪時表示,比特幣代表著對技術和創新的投資,使其成為任何投資組合中必不可少的.

1900/1/1 0:00:00
下一個支持100倍杠桿的DEX真的會脫穎而出嗎?_DEX

現貨交投清淡,價格萎靡不振,一二級市場估值倒掛,賺錢機會難覓?很多人發現從區塊鏈項目的私募、山寨幣投機中根本無法穩定盈利時,主流加密貨幣的高杠桿產品開始變得時髦起來.

1900/1/1 0:00:00
行情分析:Bakkt比特幣期權表現疲軟,五月減半是否迎來轉機?_GMT

今日解讀 Bakkt近期推出的BTC期權表現呈現疲軟狀態。根據ICE數據,Bakkt在1月20日至24日的BTC期權交易量為零.

1900/1/1 0:00:00
CFTC前主席擬通過非盈利基金會推廣“數字美元”_CAR

美國商品期貨交易委員會前主席J.?ChristopherGiancarlo正計劃通過建立一個非盈利組織來推廣基于區塊鏈的數字美元.

1900/1/1 0:00:00
觀點 | PoS更便宜:駁Paul Sztorc “沒有什么比工作量證明更便宜”論斷_以太坊

作者:EricWall 翻譯&校對:安仔C1int&阿劍 來源:以太坊愛好者 編者注:原標題為《觀點|PoS更便宜》三個月前,我在推特上發了這張圖片.

1900/1/1 0:00:00
區塊鏈周報 | 國內聚焦利用區塊鏈技術協助疫情防控與物資分配 瑞士首個區塊鏈上IPO獲批_區塊鏈

本報告由火幣區塊鏈研究院出品,報告發布時間2020年2月3日,作者:袁煜明、王蕊 摘要: 國內熱點: 1.廣東互聯網行業黨委:利用區塊鏈等技術為群眾提供疫情防控信息和數據服務.

1900/1/1 0:00:00
ads