Mining-Theory
工作量證明如何在區塊鏈中發揮作用?
抱歉,如果這個問題看起來微不足道,但它現在困擾了我一段時間。當一個人試圖改變一個舊塊時,我理解了概念證明是如何工作的。但是對於最新區塊的情況,這將如何運作?
例如,假設我是一個不斷探勘區塊的攻擊者。每次我收到一個新塊的請求時,我都會在嘗試找到雜湊之前添加一個欺詐交易。每次收到新區塊的請求時,我都會這樣做。如果我無法在有人之前成功找到新區塊,那沒關係,我將丟棄我目前在欺詐區塊上的工作,將接受誠實區塊,並再次對新區塊重複相同的操作。
過一段時間,我應該很幸運,我的欺詐區塊將是第一個發佈到網路上的區塊。當這種情況發生時,我的區塊將成為誠實鏈的一部分,並且沒有辦法知道這一點。
區塊鏈如何防止這種攻擊?
你會浪費你的能量,因為網路會簡單地忽略你的塊。
比特幣的規則是最佳(*)有效鏈將被網路中的節點接受。如果您添加包含無效交易的塊,節點將丟棄您的塊(以及在該塊之上建構的任何潛在繼任者,即使那些僅包含有效交易)。
(*) 最佳定義為鏈中所有區塊的最大難度總和。在平局的情況下,首先收到的小費用於挑選獲勝者。