天天看點

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

作者:明觀

編輯:TokenPocket錢包

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

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

“這是TP公衆号上一期關于挖礦的科普文章——是利益的誘惑還是欲望的驅使?帶你了解神秘的BTC挖礦,你先看完。”我将上一期文章的連結甩了過去。

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

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

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

礦工費存在的原因

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

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

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

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

礦工費和交易速度

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

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

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

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

隔離見證帶來什麼

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

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

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

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

如何設定最優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即對應的預估确認時間。

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

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

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

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

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

最後我們回顧一下,想要做到轉賬最快,礦工費最省需要做到兩點:

1、使用例如TokenPocket錢包這樣支援隔離見證的錢包進行轉賬交易;

2、使用工具網站:https://bitcoinfees.earn.com 根據自己的需求選擇合适的礦工費用或者使用TokenPocket錢包的推薦費用。

BTC系列知識科普專題是由TokenPocket發起的有深度、有态度的大型科普性内容專題,旨在科學系統地普及區塊鍊及數字貨币、數字錢包等相關知識。TokenPocket是全球領先的數字貨币錢包,已為數百萬使用者提供可信賴的數字貨币資産管理服務。專題文章由錢包社群優秀志願者TP俠撰寫投稿,文章版權歸作者及TokenPocket所有,轉載請注明出處。

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