比特幣挖礦難度與算力解釋!

算力

比特幣挖礦形同猜數字謎,礦工要找出一個隨機數(nonce)參與雜湊運算 1hash(block+nonce)
,使得區塊雜湊值符合難度要求。算力則指計算機每秒可執行雜湊運算的次數,也稱為雜湊率(hashrate)。
下圖是當前比特幣算力圖表 2。到 2017 年時,比特幣挖礦所需算力瘋漲。這與不斷研發出的新型礦機投入市場有關——這些礦機利用新的技術,擁有更強的運算能力,即單位成本下的算力在快速增長,由此帶來了整體算力的提升。



算力單位

算力每隔千位劃為一個單位,最小單位 h=1 次,其他分部是:
  • 1 h/s = 每秒可執行一次雜湊運算。
  • 1 kh/s = 每秒 1,000 雜湊(一千次)。
  • 1 mh/s = 每秒 1,000,000 次雜湊(百萬次)。
  • 1 gh/s = 每秒 1,000,000,000 次雜湊(十億次)。
  • 1 th/s = 每秒 1,000,000,000,000 次雜湊(萬億次)。
  • 1 ph/s = 每秒 1,000,000,000,000,000 次雜湊。
  • 1 eh/s = 每秒 1,000,000,000,000,000,000 次雜湊。

如果不清楚單位簡稱,可以檢視下面國際單位的字首表。


挖礦難度計算動態調整挖礦難度 difficulty

為什麼算力會變化呢?這和比特幣協議設計有關。中本聰設計比特幣時,加入挖礦難度調整機制是為了使得比特幣出塊時間能理想的恆定在 10 分鐘左右。比特幣協議規定每隔 2016 個區塊,將根據過去最近 2016 個區塊出塊總時間調整,自動調整下一個 2016 個區塊的挖礦難度。理想情況下 2016 個塊需要兩週(2016*10s)時間,如果實際用時不到兩週則增加難度,如果超過兩週就降低難度。

原本中本聰設計的是一個公平的完全去中心化的一個數字貨幣系統,每個人都可以使用個人電腦進行挖礦。然而,有利可圖時大量新算力不斷加入,礦工競爭激烈,使得單個礦工的挖礦成功率幾乎為零。2011 年起礦池出現,大量礦工紛紛加入礦池,以穩定收入,攤薄成本。大量算力融入,使得比特幣挖礦難度越來越大。數字貨幣挖礦業形同軍事競備,挖礦裝置不斷更新迭代,不再遵循摩爾定律。

專業礦機專門針對雜湊演算法、散熱、耗能進行最佳化,這脫離了比特幣網路節點執行在成千上萬的普通計算中並公平參與挖礦的初衷。礦池的算力佔據,也使得比特幣風險一直存在:51% 算力攻擊。


挖礦難度計算公式

需要多少算力才能找出一個隨機數,由當前區塊的挖礦難度決定,難度越大所需算力越多。但挖礦難度並不在區塊資訊中,只在網路節點中依據規則動態計算,公式如下:
d=t1 /t
t 字母是 target 的縮寫,d 字母是 difficulty 縮寫。 t1 和 t 均是一個 256 位的大數字 (big
number),其中 t1 為一個非常大的常數 2 256?32?1。依據公式,t越小,挖礦難度 d 越大。
依據公式,當 t=0
時,d 無窮大,標誌著無法計算出結果。幸運的是, t 不會為 0,最小值為 1,此時難度值最大,為 2256?32?1=2224?1。當 t=t1
時,難度值為最小值 1。


免責聲明:

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

推荐阅读