Protocol

挖礦解決了什麼問題?

  • April 16, 2021

當然,挖礦的功能是保護區塊鏈,但我正在尋找更抽象的摘要,說明挖礦試圖解決的確切問題是什麼?我相信它被稱為拜占庭將軍問題,但是可以用幾句話來描述嗎?

網路需要以固定的時間表從一大群人中隨機選擇一個陌生人,並使用“散列彩票”作為一種相當公平的方法來做到這一點。這是對需要 POW 原因的一個很好的定義嗎?

換句話說:假設我開發了另一種方法來每隔幾分鐘選擇一個隨機的 p2p 節點,誰來發布下一個塊,這可以取代基於 cpu 的工作證明嗎?

在我看來,礦工解決“難題”是對比特幣的最大誤解之一。許多新聞來源都這樣解釋,但實際上並非如此。

礦工所做的只是猜測,直到他做對了。礦工獲取他的交易區塊(包括向自己發送費用和區塊獎勵的 coinbase 交易)併計算其雜湊值。雜湊計算是一個非常常見的過程,一點也不“難”。他得到的雜湊值需要匹配某個條件。隨著越來越多的礦工嘗試,這種情況變得更加困難(參見難度)。當礦工得到一個符合條件的雜湊值時,他可以將其發布給所有其他比特幣客戶端,並將該區塊添加到區塊鏈中。

擁有更多電腦能力的礦工贏得區塊的機會更大的原因是因為他們可以簡單地猜測得更快。他們可以每秒計算更多的雜湊值來測試條件,(挖礦能力以雜湊/秒錶示。)

之所以需要工作量證明,是因為比特幣協議希望大約每 10 分鐘才發現一次區塊。因此,隨著越來越多的礦工進入遊戲,它必須變得越來越難。POW 確保找到一個塊並不容易並且需要一些時間。這也是挖礦的人越多難度越大的原因。每兩週,算法會調整難度,以便以前兩週的平均算力每 10 分鐘再次找到一個區塊。

所以,回答你的第二個問題:如果你能找到一種替代方法來實現與目前在比特幣挖礦中所做的完全相同的事情,它可以取代它。但是比特幣是按原樣程式的,可能永遠不會改變這種方法。但是有些山寨幣使用不同的方法來分配硬幣和保護區塊鏈。

簡而言之,挖礦解決了實現全球商定的交易排序和選擇幾個不兼容交易之一的問題。


這是需要解決的問題:

如果我有 10 個比特幣,並且我同時向網路的兩個遙遠部分引入一個交易,將 10 個比特幣提供給 Alice,另一個交易將 10 個比特幣提供給 Bob。

不同的節點(錢包等)將以不同的順序接收這兩個交易,一些節點首先獲得 Alice 交易並拒絕 Bob 交易作為雙花嘗試。其他反之亦然。

全世界如何最終同意 Bob 和 Alice 中的哪一個擁有 10 個比特幣?


挖礦提供了一種機制,用於定期選擇指定排序的節點(並因此選擇拒絕哪個交易)。它還為解決網路各部分之間的交易順序衝突視圖提供了基礎。

挖礦提供了這個排序的不可變和可驗證的連續記錄。

引用自:https://bitcoin.stackexchange.com/questions/14461