深入解析比特幣手續費機制,讓你在交易中更明智

人們宣傳比特幣的時候常常會講:“可以向各種張三李四免費轉賬。”其實不一定,有時還是需要手續費的。

2013年,一個比特幣的價格為20美元。2017年,轉一個比特幣要花20美元。

手續費的目的一來為激勵礦工不輟挖礦,二來以維護比特幣網絡安全(維穩費?)。早期礦工的挖礦底薪比較高,每個區塊50枚BTC,但是創世塊之后每出21萬個塊(每四年),底薪減半。所有2100萬枚比特幣都被挖出后,由交易費充當挖礦獎勵。

關于減半算法的代碼,長這樣。

CAmount GetBlockSubsidy(int nHeight, const Consensus::Params& consensusParams)

獎勵金在2012年當時候從50比特幣減半為25比特幣,2016年從25比特幣減半為12.5b比特幣。大概2020年就會再減半為6.25比特幣。

那麼,怎麼確定什麼時候需要掏交易費、掏多少合適?

比特幣網絡規則內置交易費用結構,取決于系統推薦的(標準)客戶端。 我們拿比特幣核心(bitcoin core)打個比方,看看轉帳時,需要過哪幾道:

1. 花哪些幣?

客戶端首先確定用哪些幣來完成支付。

好比, Bob給Alice轉了2枚比特幣;Rose又給Alice轉了3枚比特幣,那麼兩次轉賬金額會單獨地趴在Alice的錢包中,直到被花出去。(注意:兩筆轉賬不會“自動合并”為5BTC)。

那麼,經過一陣子,錢包中會積累不同金額的比特幣,所以才說,得考慮下用哪些做支付。

可用金額叫做交易的“輸入”,最終發送金額(包括退回到錢包的找零)稱為“輸出”。

2. 避免過于零碎的支付

若交易“輸出”(包括找零)小于0.01BTC,則收取0.0001BTC的手續費。 “選幣”時,算法會盡量避開那些找零金額低于0.01BTC的幣。

3. 老幣、大額交易優先

若發送的比特幣金額過小,或幣齡過低,則很有可能被收取費用。 每筆交易都有優先級,由“輸入”的年齡、金額和交易輸入數量決定。

具體而言就是, 客戶端將每一筆輸入的金額與該輸入在區塊中存在的時間相乘,將所有乘法結果相加再除以交易字節大小。

若結果小于0.576,則收取交易費。所以,有一堆零碎且/或很新的“輸入”,又不想掏手續費可以這麼干,交易里加上一個大額且較老的輸入即可。這里邊,比較關鍵的就是這個金額x年齡的平均值。

如果在第3步中某交易本來是收費的,但隨著時間流逝,又有新的區塊不斷產生,那麼原先交易中“輸入”年齡也隨之增長,進一步提升了交易的優先級,因此第3步中產生的費用可能會被免除。

4. “稱重”收費(按每千字節收費)

最后,客戶端檢查交易的字節長度。長度取決于輸入和輸出的數量,大致可用下列公式計算:

148 * 輸入數量 + 34 * 輸出數量 + 10

若長度小于10000字節且在第3步中有足夠高的優先級,那麼這筆交易最終被確認為免費,反之需收費, 費用默認為0.0001BTC/千字節(不足1k的按1k計算)。 可自行在客戶端相關設置中更改交易費數額。 低于0.0001BTC的設置不會生效。新費用設置生效后,將覆蓋步驟2中的費用,兩者不疊加。

接著說幾個例子:

1. 過猶不及

說:Alice錢包中趴著兩筆“輸入”,金額分別為1BTC和2BTC。然后Alice想買杯2.99999BTC的咖啡。這時就不存在選幣這一說了,因為有且只有兩筆輸入,都用上才夠咖啡錢,剩下0.00001BTC找零。注意,步驟2提到: 若交易“輸出”(包括找零)小于0.01BTC,則收取0.0001BTC的手續費。 說明,咖啡交易將被征收0.0001BTC的手續費。結果就是交易會失敗,因為Alice手里的余額不足。

這就有意思了:Alice手上有3BTC,但是沒法買2.99999BTC的咖啡。Alice可以把3BTC全部付給商家以避免手續費(假設第3步的費用為0),但有些商家可能會要求支付準確的金額。

2. 人品爆發

說:Alice人品大爆發,在某賠率64000的賭博游戲中,用0.02BTC撥來1280BTC。網站支付獎金時,自己錢包里并沒有可丁可卯的1280BTC,于是只能用各種零碎輸入(含找零)來各種湊。

最后,這筆湊出來的獎金大小是51203字節。是這樣,交易大小超過10000字節,費用增至0.0005BTC/每千字節(其實早期的交易費用就是0.0005,后來變成0.0001的),那麼, 這里的手續費就是52*0.0005 = 0.026BTC。 比玩家的本兒還高。

當然,還是比PayPal轉便宜。

注: 使用Paypal手續費為 4.4% + 0.3 USD/每筆。

好比,1280刀轉賬,1280*4.4% + 0.3 = 56.62 刀

注意:最后繳納的手續費是0.0286BTC,有可能是因為沒有使用(推薦)標準客戶端來創建交易,然后這個客戶端在計算費用時有點小問題。

這是個真事兒,見:Bitcoin Transaction 0a05beb2b1ad62d54a40e624d763cd97f10369b8e0527a3046dd2562cef4652c

3. 機關算盡,不掏錢

有種交易踏在免費的懸崖邊上,大小為9999字節,堪稱交易費躲閃之王。全部輸入中只有一個是1聰(satoshi,即比特幣最小單位,0.000 000 01 BTC = 1 satoshi, 以致敬比特幣創始人Satoshi Nakamoto);但是有另一個大額輸入拉高了優先級,免除交易費用。

必須支付手續費嗎?

捎帶腳說一句,手續費其實不是強制的。有些礦工并沒有很在意這些收費標準,也會把一些沒有手續費的交易記錄到區塊中。使用標準客戶端的“原始交易”(raw transactions)界面能創建手續費低于標準費用的交易,而且,還是有可能人品爆發的被礦工打包入塊的。

發文者:鏈站長,轉載請註明出處:https://www.jmb-bio.com/4278.html

讚! (0)
Donate 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
Previous 2023 年 2 月 28 日 下午 5:26
Next 2023 年 2 月 28 日 下午 5:36

相關文章

  • 探究比特幣價格背後的影響因素,理解加密貨幣市場波動

    比特幣的價格是由市場的供需決定,由需求決定其價值。 首先,大家必須看好它未來的發展,這樣才有人愿意為它買單,買單的人越多其價格就越高。 由于比特幣的特性,最終只能產出2100萬枚幣,在市場上能造成一定稀缺性。 但是,隨著時間的推移,比特幣如果只是停留在代碼的研發階段,那也沒有什麼意義,得有現實的實際應用場景來體現其使用價值,不然就只有收藏價值,流通于比特幣愛…

    比特幣科普 2023 年 2 月 28 日
  • 挖掘比特幣的原理,探究比特幣的發行過程

    什麼是比特幣挖礦 比特幣節點互相連接時,會從對方處獲取自己沒有的交易。但由于比特幣長期積累天量的交易,兩個節點逐條對照你缺了哪些交易/我缺了哪些交易,是非常困難的事情。 為解決這一難題,中本聰發明了區塊鏈(Block chain)這一重要技術。節點借助區塊(block)來同步交易,保證了所有節點數據的統一性,并通過競爭區塊打包權(也就是挖礦)的方式,保證了區…

    比特幣科普 2023 年 2 月 28 日
  • 區塊鏈入門:比特幣是如何實現去中心化的?

    一、區塊鏈的本質 區塊鏈是什麼?一句話,它是一種特殊的分布式數據庫。 首先,區塊鏈的主要作用是儲存信息。任何需要保存的信息,都可以寫入區塊鏈,也可以從里面讀取,所以它是數據庫。 其次,任何人都可以架設服務器,加入區塊鏈網絡,成為一個節點。區塊鏈的世界里面,沒有中心節點,每個節點都是平等的,都保存著整個數據庫。你可以向任何一個節點,寫入/讀取數據,因為所有節點…

    比特幣科普 2023 年 2 月 28 日
  • 探究比特幣手續費的細節,了解如何節省交易成本

    比特幣的交易手續費是一個很巧妙的設計,同時也是一個比較讓人迷惑的知識點。比如,查看一條交易,會看到手續費并不對應一個具體的 output 。到底手續費的額度是誰來定的,收取手續費的操作步驟是怎樣的,手續費的提高會不會影響比特幣用于做日常小額支付呢?本文一一來揭曉。 手續費的是在自由市場中形成的 比特幣是一個去中心化的系統,手續費的具體數額不是通過中央權威來規…

    比特幣科普 2023 年 2 月 28 日
  • 探索比特幣常見問題,解答你的疑惑

    概覽 什麼是比特幣? 比特幣是一個共識網絡,促成了一個全新的支付系統和一種完全數字化的貨幣。它是第一個去中心化的對等支付網絡,由其用戶自己掌控而無須中央管理機構或中間人。從用戶的角度來看,比特幣很像互聯網的現金。比特幣也可以看作是目前最杰出的三式簿記系統。 誰創造了比特幣? 比特幣是第一個實現了“隱秘貨幣”概念的貨幣。1998年,Wei Dai在cypher…

    2023 年 2 月 28 日
每日鏈頭條給你最新幣圈相關資訊!