「挖礦」到底在做什麼?

Spread the love

 

所謂「挖礦」,就是為了要尋找將新的區塊嵌在有過去一切交易紀錄的區塊鏈尾端的鑰匙的工作。

但具體來說,挖礦到底是怎麼樣作業呢?

逐一嘗試Nonce值來尋找「鑰匙」

如同每筆交易根據雜湊函式來調換成六十四位數雜湊值,其實每個區塊也能根據雜湊函式來調換成六十四位數雜湊值。而要追加新區塊時,將「之前區塊的雜湊值+這次區塊所包含的全部交易資料+隨機的文字列(Nonce值)」同樣調換成六十四位數雜湊值後,規定必須要找到那最一開始的十六至十七位數全部都為零的Nonce值。

由於Nonce值是隨機的三十二位元數值,所以可自行決定。但是Nonce值只要有一位數不同,產生的雜湊值也會完全不一樣。也就是說,隨意的Nonce值從一端嵌上後,就得徹底檢查。產生的雜湊值前面十六位數碰巧是玲的機率極低。

 

例如:

「0000000000000000GYEUKSH3N5I3JAJ1LJGHWEKWL2LVKG1U2KRH3UFBGKEU38BCWUF291」

隨機出現的雜湊值前面的十六位數皆為零的機率非常低

 

由於僅在十分鐘之內就要反覆進行數億次、數兆次的嘗試,所以需要龐大的機器功率與電力。然而,這並不是有某種意義的計算,只是要尋找雜湊值碰巧最一開始的十六位數為零的Nonce值。這就是挖礦的事實。

 

每十分鐘就展開地確認競賽

挖礦並非由一人進行,而是每十分鐘全世界的礦工都會參加,並且以競賽的形式來進行。一開始就找到前述所提到的Nonce值者為贏家,其獎賞便是比特幣。因此唯有競賽優勝者才會「挖到」比特幣。

每個競賽大約十分鐘就會有結果。所以當某人成為贏家時,新的競賽又會開始。由於要不停反覆摸索尋找鑰匙的作業,所以對活用高規格機器的礦工比較有利。

 

只有贏家才能獲得比特幣作為獎賞

礦工的動機就是獲得比特幣。每次最先解開程式的人可以獲得12.5顆比特幣。

為了要挖礦,礦工通常會需要借倉庫、買特別的電腦、支付電費。挖礦的獎賞若高出成本,便是獲利。現在由於比特幣的價格順利發展中,也就有了利益。換句話說,縱使花費成本也有挖礦的價值。

然而這並非永久的保障。電腦的處理能力是依循「摩爾定律」(Moore’s law),每一年半到兩年以倍數增加,調度機器功率的成本應該也會隨之下降。但若比特幣價格急遽下跌,可能就會無法吸收挖礦成本。

現在挖礦的業者數量減少。倘若沒有資本力是做不到的,因此個體戶較無法加入挖礦活動。執行挖礦作業的電腦是24小時、365天皆全力運行著,不管是噪音還是散熱量都很大,要冷卻的機器費用亦是相當可觀。

由於挖礦的難度會持續提高,或許最終會變成只有幾家擁有資本力的公司才會參加競賽,形成壟斷的狀態也說不定。

 

蓋印章的部長生存戰

為了能夠更清楚說明挖礦是什麼,以下將以一個例子進行說明。

未確定的交易若堪比「待批示文件」,擁有裁決權的部長其桌上就會累積越來越多待批示文件。而累積100件就要速速整理然後蓋上印章,收到「已確認」的資料夾中。

待批示的文件有著各自的優先順序。想要部長越快裁決的、位於順序前面的文件要準備好作為獎勵的小費(手續費高的交易)。部長就會以有獎勵小費的文件先進行批准。而順序較後面的文件,則會持續尚未決定的的狀態。

說明到此,這是在一個部門裡發生的事。但其實相同的「待批示文件」在世界各地的分公司裡正流通著。在世界各地的分公司裡,部長的桌上持續堆著相同的「待批示文件」。

每當累積到100件,各地的部長們就如同競賽般蓋著印度,而上鎖文件櫃時的密碼鎖的密碼每次都不一樣,在反覆嘗試尋找正確數字的比賽裡,最先找到正確密碼的部長,就成為確認比賽中的優勝者,獨得獎賞。

 

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *