【新手入門系列 2 】 區塊鏈「礦工」挖的是什麼「礦」? – 共識機制與挖礦介紹
前言
在我們新手系列的第一篇文章中已經稍微介紹到了區塊鏈的基本概念,但也留下了一個問題 – 「要怎麼確定帳本的準確性呢?」
另外,相信你也一定聽過一個既熟悉又陌生的名詞 -「挖礦」,你也可能聽過,因為「挖到礦」而一夜暴富的故事,但其實,挖礦與前面提到的問題有著很大的關係,而它們都與另一個名詞 – 共識機制有關。
那...... 到底什麼是共識機制呢?它與挖礦又有什麼關係?而挖礦到底是要挖什麼「礦」?千萬別被這些專有名詞嚇到了,只要接著往下看,你可以發現其實區塊鏈沒這麼難!
在這篇文章,你將會知道:
-
什麼是共識機制?
-
什麼是挖礦?怎麼挖礦?
-
挖礦獎勵從何而來?
什麼是共識機制?
說明白了,其實共識機制一直存在在你我的身邊。
假如你跟你的朋友們想決定晚餐要吃什麼,有的想吃拉麵、有的想吃牛排 … 等等許多意見。最後你們大家決定,用投票的方式決定要吃什麼,結果想吃拉麵的人比較多,於是決定一起去吃拉麵。
從意見分歧到一致決定去吃拉麵,也就是你們對於吃晚餐這件事所產生的「共識」。而你們是透過投票產生的共識,所以「投票」,就是你們產生決定的「共識機制」。
這樣看來,共識機制好像很常見,那為什麼在區塊鏈的世界裡會特別的重要呢?
區塊鏈為什麼需要共識機制?
或許無法決定大家的晚餐吃什麼,大不了各自吃自己喜歡的就好。但在分散式的區塊鏈系統中,問題就會非常嚴重!
如果沒有先設立好紀錄資料的準則,每個人都只照自己的紀錄走,沒有確定的共識方向,系統紀錄就會產生混亂,而導致整個系統無法運作下去!
所以說,區塊鏈系統必須要先設定一套共識機制,讓參與者都按照這個規則所產生的共識走下去,來維護系統資料的正確性,這樣系統才能持續運作下去。
但如果是任何人都可以參加的區塊鏈系統,要怎麼讓來自世界各地、相互不認識的人,共同維護區塊鏈系統呢?這就要談到另一個常與共識機制一同出現的名詞 – 挖礦。
什麼是挖礦?
聽到挖礦,在你腦中是不是浮現了戴起安全帽、拿著鎬子,進去礦坑中挖寶石的畫面?
雖然在區塊鏈的世界裡,挖礦並不是像前面說的一樣,但兩個的目標都是一樣的 – 透過開採、創造具有價值的東西獲利。
在一般的挖礦,是獲得寶石等有價值的礦物;而在區塊鏈,則是靠幫助別人記帳。
為什麼幫別人記帳可以獲利?這個問題就好比問銀行為什麼要幫人們保管資產一樣。因為銀行可以從中(例如交易手續費)獲得好處,所以它才會願意這麼做。
一般來說,區塊鏈的共識機制通常也包含了獎勵機制,給予協助維護與打包資料紀錄到鏈上的礦工一些獎勵,讓人們更有動力去協助系統運作。而最常見的獎勵,就是加密貨幣。
※補充說明,所謂的打包意思是將紀錄到新區塊中的資料進行加密運算後,利用特殊的編碼技術 – 例如比特幣的 SHA256 等雜湊函數 ,與上一塊區塊相連的過程。
這些協助打包資料工作的人,就被稱為「礦工(Miner)」,而將資料打包紀錄到區塊鏈上的過程,就被稱為「挖礦 (Mining)」。
換句話說,區塊鏈礦工所挖的礦,就是礦工依照共識機制完成記帳而獲得的加密貨幣獎勵。
當然,決定共識的方式不只有投票一種,在區塊鏈的世界中也是如此。常見的共識機制,如 PoW、PoS 等等,以下讓我們用這兩種共識機制來說明,礦工們要如何進行挖礦。
工作量證明 (Proof of Work;PoW)
工作量證明是第一個,也是曾被廣泛使用的共識機制模型。大家耳熟能詳的加密貨幣,例如比特幣 (BTC)、以太坊 ( ETH ) 1.0 等等,都是採取此模型運作的。
在工作量證明,所有礦工會參與計算某個依一定密碼學方式產生的數學難題(前段提到的雜湊函數值),並比看誰先算出。第一個解決題目的礦工,就取得這個區塊的記帳權,並為區塊鏈連接新的區塊(又稱為出塊),隨後將新區塊廣播至網路上,成為區塊鏈上公認的紀錄,其他礦工會依照新出的區塊為準,繼續競爭下一塊的數學題。
換句話說,在工作量證明的狀況下,投入越多工作資源(算力)、算的越快,就越容易獲得記帳權。
在這個機制之下,顯示卡的算力就成了獎勵多寡的關鍵。這也是為什麼有段時間顯示卡一貨難求的原因之一。
不過,由於工作量證明需要礦工投入大量電力去運算解題。《紐約時報》就曾經報導,比特幣在 2021 年時的挖礦電力用量,幾乎是 Google 全球營運一年總用電量的 7 倍,可見其對於資源消耗有多大。
權益證明(Proof of Stake;PoS)
針對工作量證明模式消耗資源的問題,在 2011 年時, Bitcointalk 論壇上提出了權益證明模式,作為另一個共識機制方案。
現在很多區塊鏈,例如艾達幣 (ADA)、以太坊 2.0 等,都開始用 POS 共識機制,讓顯卡挖礦漸漸變為夕陽產業。
權益證明要求參與記帳的人需要先質押一定數量的幣。質押的越多,獲得記帳權的機會也就越大。通常,為了避免大型質押節點壟斷記帳權的狀況,會再依質押的時間長短賦予「幣齡 (Coin Days)」,只要一獲得記帳權後,該批質押的幣齡就會重新計算。
換句話說,在權益證明的狀況下,質押的幣越多、越久,就越容易獲得記帳權。
比較特別的是,在權益證明模型中,如果礦工驗證了一筆虛假的交易到鏈上被發現,系統將會從他質押的幣中扣除一定「罰金」,保障整體交易安全。
※ 補充說明:PoW 是利用電腦的算力進行挖礦,所以也有人稱它為「算力挖礦」;雖然 PoS 與 PoW 的運作方式不同,但兩者都是透過打包資料上鏈獲取獎勵,所以也有人稱 PoS 為「持幣挖礦」。
挖礦獎勵來自哪裡?
礦工挖的礦是加密貨幣,這我們已經知道了,但這些加密貨幣是從哪裡來的呢?
這裡我們以比特幣系統來舉例。當礦工取得記帳權並完成打包資料到鏈上的工作時,他會獲得兩種獎勵:
1. 隨新區塊產出的新幣
在比特幣系統,每個新區塊的產生,會一併發行一定數量的新幣給打包這個區塊的礦工。
然而,比特幣約每四年會減少每個新區塊一半的新幣產出 (一開始是 50 枚、2012 年時剩 25 枚、2016 年時剩 12.5 枚 …)。比特幣的總發行量定為 2100 萬枚,如果按照前面的發放速度,在 2140 年時就會發放完畢。
如果沒有新幣產出,那之後礦工又有什麼動力挖礦呢?
2. 交易手續費
每筆比特幣交易會收取一定比例的手續費。而獲得記帳權的礦工也可以獲得該區塊的全部手續費作為獎勵。
在其他系統,例如以太坊,使用者甚至可以選擇付出更多的手續費 (在以太坊稱為燃料費 ( gas fee) ) ,讓礦工優先選擇手續費較高的交易先打包,加快交易被確認的速度。
所以,即使在沒有新幣產出的情況下,仍然可用手續費作為獎勵礦工挖礦的誘因。
結語
共識機制是區塊鏈,尤其是任何人都可以參與的公有鏈系統,在運作上不可或缺的的存在。而挖礦,是讓人們參與系統維護的動力來源,兩者可以說是區塊鏈靈魂,是區塊鏈系統能否存續運作的關鍵!
然而您應該也注意到了,不論您是想參與挖礦,或使用區塊鏈上的服務,可能需要一個地方管理您的加密貨幣,用來收取獎勵或支付手續費。在現實中可能是您的銀行帳戶或皮夾,那在區塊鏈的世界是什麼呢?
下一章,我們將說明區塊鏈的世界中的重要工具 – 區塊鏈錢包。
發佈者對本公告的內容承擔全部責任