Blockchain
並發礦工如何不顛覆對方的工作?
每次在區塊鏈上添加一個新區塊時,礦工都必須重新開始他們的工作,因為下一個區塊必須具有對前一個區塊的正確引用。
讓我們假設每個塊都有一些隨機數,這樣也有足夠小的散列(小於目標)。一般來說,有2256個可能的雜湊值。設目標為t。目標也可以理解為一些可接受的雜湊值。因此,在每次嘗試(即找到一個塊)中找到合適的散列的機率為t / 2 256 。
在一個塊遵循參數p = t /2 256的幾何分佈之前不成功的嘗試次數。遵循這種分佈的變數的期望值為 EX = 1/ p = 2 256 / t。因此,每個礦池平均要花費2256 / t次嘗試才能找到一個區塊。
假設每次某個礦池發布一個新區塊時,所有其他礦池都必須重新開始工作,從而放棄對現在無法再使用的區塊的嘗試,那麼並發探勘如何高效?
注意:請詳細一點。我已經讀過這樣的解釋:每次嘗試都有平等的成功機會。但我無法從這麼短的提示中得到它。
礦工過去嘗試過的雜湊數不會影響礦工在下一次立即計算中獲得正確雜湊的機率。因此,從效率的角度來看,礦工是否開始在新區塊上工作並不重要,因為獲得正確雜湊的機率與他繼續在舊區塊上工作的機率完全相同。
想想這個擲硬幣的例子:第一個目標是嘗試正面朝上。您前幾次翻轉失敗,然後目標變為反面。您實現目標的機率仍然完全相同。