挖礦是什麼,算力是什麼?我來講透挖礦

買賣虛擬貨幣

我們知道比特幣需要挖礦,挖礦才能獲得新的比特幣。可是,不是說比特幣網路是分散式賬本嗎?是拿來記賬的,記賬跟獲得新比特幣有什麼關係?記賬記的是什麼賬?

現在有人在搞礦場和礦池進行挖礦,礦場是什麼?礦池又是什麼?好像是很多礦機放在一起。那這些計算機到底在幹嘛?據說挖礦很耗費電力,現在比特幣整個網路每天所耗的電力比荷蘭一個國家還多,為什麼?既然出塊的時間是固定的,那增加算力有什麼用呢?



挖礦挖的是什麼?

當然挖的是比特幣、以太坊等數字貨幣。

挖礦的本質是透過計算雜湊函式,對前面的交易進行確認,確認之後,系統自動生成一個新的區塊,這個區塊得到其他節點的確認(搶到了記賬權)後,就連結到前面的區塊鏈之上。比特幣是對這個確認行為所進行的獎勵。

按比特幣網路的設計,在最初,每確認一筆交易(即每完成一次挖礦),礦工(記賬的電腦)就會得到50個比特幣作為獎勵。這個獎勵數目,大約每隔四年就會減半。因為第一筆比特幣交易發生在2009年,現在是第三個四年,每次成功挖到礦得到的比特幣是6.25個。



為什麼是每四年就減半呢?

這是系統的硬性設定。中本聰在最初就將系統設定為:每產生210,000個區塊之後,就將比特幣獎勵數量減半。因為比特幣網路每出一個區塊的時間約為10分鐘,出完210,000個區塊的時間大約是四年。

這就會幫助我們理解,為什麼比特幣的總量是趨於恆定的。其實中本聰在設計比特幣的時候,並沒有規定比特幣總量是多少,而只是做了上面的設定。根據上面的設定,即每隔四年比特幣獎勵數量減半,到2140年,就基本不會再有新的比特幣產生了(其實是,到那時新產生的比特幣數量實在是太少了,可以讓我們忽略不計)。到那時,比特幣總數會在2100萬個。


怎麼挖礦?

我們說過,挖礦的本質是爭奪記賬權利,誰先搶到記賬權,誰就得到比特幣獎勵。那麼,怎樣搶到記賬權呢?

先讓大家記住一個條件:誰先算出那個小於給定雜湊值h0的雜湊值h(x),誰就挖礦成功了。即,挖礦要求解決這樣一個數學題:給定h0,要求算出x,使得h(x)<h0。有人可能會說,那我隨便找一個小於h0的h(i),算出與之對應的x不就行了嗎?

雜湊函式不同於一般函式的地方。數學上的一種函式,又稱雜湊函式

對於一般的函式f(x)=y,給定y值,可以算出x。但是對於雜湊函式h(x)=y,給定y值,不能倒推出x是多少。它是一個單向計算函式,只能由x算出h(x)。那麼計算h(x)時,輸入值x是什麼呢?這就是挖礦問題的關鍵。



礦機在幹什麼?

計算h(x)<h0,其實是找一個隨機數(nonce)。因為雜湊函式無法倒推,因此,只能透過不斷嘗試的辦法,去找這個4位元組的隨機數。說白了,就是猜。在不斷嘗試隨機數(nonce),以便把它和區塊頭裡其他的字串一起輸入雜湊函式h(x)之後,使得h(x)小於系統給定的值h0。

增加算力有什麼用?

以前用cpu就能挖到礦,但隨著礦機越來越多,甚至雲算力的出現競爭越來越激烈,後來有人開始有人用gpu,就是我們電腦顯示卡用到的處理器;再後來,專門的挖礦晶片(asic)出來了,算力進一步提高。再到只要算力的雲算力挖礦,增加算力就相當於一次次讓數學更好的人來參與這個解題過程。

為什麼建礦池?

礦池就是我邀請人組成一隊,越多越好。這樣一來,我人數多,每一次都可同時列舉多個nonce值來試,因此,我方的贏面會大一些。



比特幣發放

伴隨挖礦成功,系統就會獎勵給這個節點一些比特幣(今年是6.25個)。這個記錄會被寫在這個區塊裡。由此可知,比特幣其實只是一條記錄,一個權益證明。這個記錄顯示是誰擁有這些比特幣,那麼他就擁有這麼多的比特幣,不必給某人一張紙或者其他東西來證明。這也是稱它為虛擬貨幣的原因所在。

比特幣挖礦的優缺點

比特幣挖礦的優缺點與它的pow共識機制息息相關。

優點

(一)去中心化

pow理論上是將記賬權利平均分配給網路上的各個節點。但隨著礦池越來越多,越來越大,這一優點正在被削弱。

(二)安全性高

要控制這個網路,必須擁有全網50%以上的算力,要達到這樣的程度,成本要求是非常高的,因此,安全性很高。

缺點

(一)能源浪費

從前面可以看出,猜nonce值的過程,從某種程度上說沒有任何意義。而因為需要猜的次數特別多,這就會讓計算機耗費大量電力。據說,現在整個比特幣網路挖礦每天的能量損耗相當於荷蘭整個國家的電力損耗

微信關注 :信富人生,瞭解更多挖礦



免責聲明:

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

推荐阅读

;