最快!最省!手把手教你合理設定BTC轉賬礦工費

買賣虛擬貨幣
作者:明觀
編輯:tokenpocket錢包


最近有朋友諮詢我關於btc轉賬的事情,他表示對btc轉賬收取礦工費這一行為很不理解:“你們不是整天都說比特幣是去中心化的嗎?那為啥每次使用比特幣轉賬還要扣礦工費?這些扣的礦工費哪裡去了?多少的礦工費才是最合適的?”


“這是tp公眾號上一期關於挖礦的科普文章——是利益的誘惑還是慾望的驅使?帶你瞭解神秘的btc挖礦,你先看完。”我將上一期文章的連結甩了過去。


大約過了一刻時間,他看完又來詢問:“挖礦費是給礦工了嗎?那礦工不是已經有挖礦的獎勵了嗎,為什麼還要給他礦工費啊?”


我猛然發現很多我們認為理所當然的事情,其實都是人云亦云,預設了其存在合理性,但是實際並不瞭解其背後的原理。因此,我覺得有必要深究一下btc轉賬背後的事情。










礦工費存在的原因



首先關於礦工和挖礦的細節在上一期的挖礦科普文章中已經詳細說明,上文也有連結,沒看過的建議去看一下。但是因為上一期的主題是挖礦,所以涉及到交易的方面我沒有展開講,這裡要給大家說明一下:礦工將交易資訊打包進區塊時,他會獲得對應的收益作為激勵,收益包含兩部分:一部分是挖礦的產出,一部分是打包的交易中的礦工費。至於為什麼明明有了挖礦產出還需要礦工費激勵,可以從以下幾個方面去考慮:


1、激勵。上文提到礦工的激勵包含挖礦收益和礦工費兩部分。但是考慮到btc減產的問題,大約在2140年btc會被挖完。如果沒有礦工費,這個時候將沒有足夠的激勵來促使礦工繼續工作。雖然現在看來與挖礦產出相比,礦工費少的可憐,但是到時候必然也會有一批礦工停機,那個時候幣價與算力會重新達到平衡。關於激勵機制,中本聰在btc白皮書中有過這樣的描述:“只要既定數量的電子貨幣已經進入流通,那麼激勵機制就可以逐漸轉換為完全依靠交易費”。所以只要有足夠多的交易需求,礦工費還是可以使一部分礦工在btc停產後還能夠繼續為btc網路的安全提供算力保障。


2、阻止大量的微量、垃圾交易衝擊網路。這個應該不難理解,如果沒有礦工費,即轉賬交易沒有門檻,交易者無需考慮轉賬成本問題。那到時候必然會有很多微量和垃圾交易充斥btc網路,極大地影響btc網路的效能。


以上即為礦工費存在的原因,是對其存在合理性的解釋。文首我朋友的提問屬於對去中心化概念的混淆,覺得所謂去中心化就應該沒有礦工,沒有礦工費,但是有無礦工與是否去中心化之間是沒有直接關聯的在btc礦工分散式存在的基礎上來看,礦工可以被看做是系統的維護者,他們既保證了btc網路的平穩執行,又不會干預系統本身的執行方式,因此不會改變系統的去中心化特質。當然,在如今的算力分佈情況下,如果考慮到以國家或者礦池為單位,算力的集中或許會破壞系統的去中心化,這就是題外話了,我們暫且不考慮。









礦工費和交易速度



聊完合理性,我們再來聊聊礦工費高低對交易速度的影響問題。假設你作為一名礦工,在進行區塊打包時,為了利益最大化,你會優先選擇按照礦工費的高低順序來打包還是按交易發起的時間早晚來打包?答案必然是按礦工費高低順序打包。由於一個區塊的大小是固定的,因此在交易高峰時期(同時進行的交易數量非常多),一個區塊內放不下,那麼這次沒有進行打包的交易就會滯留到下次。因此很多人為了快速到賬,會採取提高礦工費的方式。如果一個交易的礦工費給得很低,很可能面臨一直不會被打包的情況,直至擁堵消失,交易數量變少後才能被打包。



就目前的市場來講,如果交易不給礦工費,礦工一般是不會去打包的,所以現在錢包上轉賬時都會設定一個最低的礦工費(即交易手續費)。如果你的轉賬金額數量很大並且希望快速到賬,你可以在錢包轉賬設定裡選取最大的手續費,或者自定義本次交易的手續費。如果你的轉賬金額不大且無所謂到賬速度,那你可以選擇小額手續費。相對於這兩種比較極端的情況,我們平時大多數的情況下,都是希望在不影響到賬速度的情況下,儘可能地節省手續費,但是手續費應該設定多少才合適呢?


首先你要先知道,交易的礦工費是怎麼計算。現在大部分錢包是按照交易位元組大小來設定礦工費的,計算公式是:交易的位元組大小 * 每位元組的礦工費。使用者透過手動調節每位元組礦工費的數值來設定整個交易的礦工費,每位元組的礦工費越高,交易的速度就越快。所以要做到又快又省,就要從交易的位元組大小和每位元組的礦工費這兩點入手。你可以把交易的位元組大小理解為交易所蘊含的資訊,通常由交易的輸入和輸出來決定。正常來說我們的轉賬交易都是一對二的,即一個輸入地址(我們自己的地址)和兩個輸出地址(對方的地址和找零地址),一對二的交易大小一般為226位元組左右。至於多對多的交易情況我就不詳細展開講了,本文只考慮一般情況,大家興趣可以去查查utxo記錄模型資料,看不懂的話可以在tokenpocket公眾號後臺留言給我們,我會考慮單獨寫一期專門介紹utxo的文章。










隔離見證帶來什麼




看到這裡你可能會問,對於一般的一對二的交易,位元組大小不是固定的嗎?有什麼方法可以改變交易位元組的大小嗎?還真有,那就是隔離見證交易。所謂的隔離見證交易簡單來說就是將交易分成兩部分,一部分是交易資料;第二部分是見證資料,隔離見證交易會將見證資料隔離在區塊基本資訊之外,可以有效的降低交易的位元組大小,解決延展性攻擊的問題,順帶變相增加了區塊的交易容量。在使用隔離見證交易時,一對二的交易大小可以減小到142位元組左右。



因此,在每位元組礦工費用一定的情況下,使用隔離見證交易的礦工費要更低。很多人可能對隔離見證交易沒概念,也不知道怎麼操作,這點不用擔心,tokenpocket錢包會幫你搞定。我們只需在token pocket錢包轉賬btc時,選擇轉賬給隔離見證相容地址即可。隔離見證的地址多以“bc”開頭,而普通地址則以“1”開頭,“3”開頭可能是多重簽名地址或過渡期用的隔離見證地址。



在使用隔離見證減小了交易位元組大小之後,就要探討如何科學合理的設定每位元組的礦工費,以達到費用與速度的相容。










如何設定最優gas




關於手續費的設定,我之前一直使用的都是btc.com上推薦的最佳手續費。但是這個推薦手續費使用起來並不好用,還需要經過一些換算,也無法直觀地看到等待情況,非常不適合新手。後來我在網上找到了一個對新手很友好也很方便的工具網站:https://bitcoinfees.earn.com。


開啟網站,首先在左上角fees的位置,將費用的單位調成satoshis。satoshi即sat,是btc的最小計量單位,換算公式為1btc=10^8sat,用sat可以很方便直觀的表示微量btc。舉個例子,我說0.0000001btc肯定沒有用10sat方便和容易理解。現在絕大部分錢包在設定礦工費用是都以sat/b為單位,所以在網站裡改成這樣的單位就可以免去換算直接操作。設定好單位之後,我們來看條形圖,最左邊的是數字0、1-2、3-4依次往下表示礦工費的範圍。每個範圍對應兩個條形,上方橙紅色的條形表示還未確認的交易數,下方藍黑色的表示已經確認的交易數目。我們再把目光轉到條形圖右邊,delay表示可能延遲的區塊數,time即對應的預估確認時間。



要注意的是,上方的橙紅色條形圖是會隨著費用範圍的變化逐漸變綠的。我們可以認為,橙紅色代表交易確認速度很慢,不理想。從上往下看,隨著礦工費用的增加,橙紅色的條形逐漸變綠,首先變綠的那個條形對應的範圍可以看成是臨界區間,在這個區間內,價效比最高,在下圖中我們可以看到,每位元組礦工費為45-46sat時,條形完全變綠,此時等待區塊數為0-1個,確認時間約為30分鐘。



如果你不想等太久,又拒絕高額的礦工費,那就只需要在用錢包轉賬時把每位元組礦工費設定成45-46sat/b,這裡我們以token pocket的轉賬為例,可以看到錢包裡已經貼心的提示了最佳的費用數目為46sat/b,與我們的目標一致,一鍵即可設定,懶人福音!當然如果你就是錢多任性,也可以去高階設定裡自定義更高的費用。




最後我們回顧一下,想要做到轉賬最快,礦工費最省需要做到兩點:
1、使用例如tokenpocket錢包這樣支援隔離見證的錢包進行轉賬交易;
2、使用工具網站:https://bitcoinfees.earn.com 根據自己的需求選擇合適的礦工費用或者使用tokenpocket錢包的推薦費用。
btc系列知識科普專題是由tokenpocket發起的有深度、有態度的大型科普性內容專題,旨在科學系統地普及區塊鏈及數字貨幣、數字錢包等相關知識。tokenpocket是全球領先的數字貨幣錢包,已為數百萬使用者提供可信賴的數字貨幣資產管理服務。專題文章由錢包社羣優秀志願者tp俠撰寫投稿,文章版權歸作者及tokenpocket所有,轉載請註明出處。


免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;