每日最新頭條.有趣資訊

比特幣怎樣挖礦?

藉由確認交易

當你聽說比特幣“挖礦”(mining)的時候,你設想幣是從地裡挖出。但比特幣並沒有實體,為什麽我們稱之為挖礦呢?

因為它類似於金礦開採,因為比特幣存在於協議的設計中(正如黃金存在於地下),卻尚未見光(就像黃金還沒有被挖出來一樣)比特幣協議規定某個時間點將會有 2100 萬枚比特幣存在。“礦工”所做的就是讓它們一個個見到天日。

礦工們因創建經過驗證的區塊,並將它們打包進區塊鏈而獲得獎勵。

圖|比特幣(來源:Unsplash)

節點

回溯一下,讓我們來談談“節點”。節點是運行比特幣軟體,並通過參與信息傳遞保持比特幣運行的強大計算機。任何人都可以運行一個節點,你只需下載一個比特幣軟體(免費的)並讓某個端口打開(缺點是它消耗電和存儲空間 ——寫入網絡時佔用大約 145 GB 的存儲空間)。節點會在網絡上散播比特幣的交易信息。一個節點會將信息發送到它所知道的節點,後者繼續將信息傳送至其所知道的節點,以此類推。以此在全網快速完成信息的散播。

有些節點是挖礦節點(通常被稱作“礦工”)。這些節點將未結算交易組為區塊,並將其添加入區塊鏈中。它們是如何做到的?通過解決作為比特幣項目一部分的複雜數學難題,並將答案打包入區塊。而要解決的難題是要找出一個數字,這一數字與區塊中的數據結合並通過哈希函數運算後,能夠產生一個落在特定範圍內的結果。但實際過程遠比本文描述得更為複雜。

對於追求細節的人而言,該數字被稱為“隨機數”(nonce)它是“不重複數字”的串聯。在比特幣來說,隨機數是落在 0 到 4,294,967,296 間的整數。

解決難題

礦工們如何發現該數字?通過隨機猜測。哈希函數使得預測輸出值變得幾乎不可能。所以,礦工會猜測數字並將哈希函數應用於猜測數字與數據的組合。生成的哈希值必須以預先設置的 0 的個數開始。沒有辦法知道哪個數是正確的,因為兩個連續整數能給出的多種結果。此外,可能有幾個隨機數能生成期望的結果(desired result),也可能一個也沒有(在這種情況下,礦工會繼續嘗試,但使用不同的區塊配置)。

第一個得出期望範圍(the desired range)內哈希值的礦工會向全網宣布其勝利。而後所有其他礦工立刻停止對該區塊的計算,並開始計算下一個區塊的哈希值。作為對相應工作的獎勵,成功算出正確哈希值的礦工將獲得一些新的比特幣。

圖|比特幣挖礦(來源:Pixabay)

經濟學

在寫作本文時,單個區塊的獎勵是 12.5 個比特幣,這些比特幣在寫作本文時的價值幾乎達到 200,000 美元。

儘管聽起來這並非一筆輕鬆的交易。有許多的挖礦節點都在為區塊獎勵而爭搶,能否勝出視運氣與計算力(後者越多,能夠得出正確哈希值的概率越大,你也就越幸運)而定。

還有,成為挖礦節點的成本是十分可觀的,不僅因為你需要強有力的硬體(如果你有比競爭者更快速的處理器,你有更大的機會趕在他們之前獲得正確的數字),還因為運行處理器所要消耗的龐大電力。

此外,作為解決難題的獎勵而授予的比特幣的數量將減少。現在它是 12.5 枚,但每四年左右它會減半一次(下一次減半預計會發生在 2020 - 2021 年左右)。比特幣的價值,相對於電力和硬體成本可能會在未來幾年內上升,以部分彌補數量減少的問題,但目前尚不確定。

難度

計算難度(哈希字元串開頭所需的 0 的個數)經常調整,所以通常平均花費 10 分鐘來處理一個區塊。

為什麽是 10 分鐘?這是比特幣開發者認為,要穩定逐漸減少新比特幣數量,直到最大總量達到 2100 萬枚(預計在 2140 年的某個時間)所必需的時間。

如果截至目前你比較明白我們的講解,那要恭喜你!關於這個系統仍然有很多東西要去解釋,但至少現在你對這個天才的程序與概念有一個大體的認知。我們第一次擁有了這樣的一個系統,它允許以去中心化、免信任、防篡改的方式進行電子化轉账。它的反響可能是巨大的。

譯者:王澤龍

責編:吳姿瑩

本文版權屬於 CoinDesk 中文

未經授權禁止轉載

區塊鏈101

區塊鏈技術是如何運作的?|區塊鏈 101

什麽是分布式账本(Distributed Ledger)?|區塊鏈 101

誰是中本聰?|比特幣 101

什麽是比特幣?|比特幣 101

獲得更多的PTT最新消息
按讚加入粉絲團