Network
關於工作量證明(PoW)的問題
我將用一個例子來描述我的問題。
假設網路正在努力將塊 #100 添加到區塊鏈。攻擊者使用“合法”交易的組合重新創建塊 #99,這意味著它們可以被散列到實際塊 #99 正在使用的相同散列(並且沒有雙花)。
然後,他將區塊廣播到網路。網路如何知道這個塊是假的並拒絕它?
我認為這與 PoW 有關,但我不是 100% 確定。有人可以詳細解釋一下拒絕的過程嗎?
提前感謝您的任何答案!
在您的範例中,如果塊 99 實際上確實散列到相同的確切值(幾乎不可能),那麼沒有什麼可以將它與實際的塊 99 區分開來,因此它不會被認為是假的,也不會被傳播,因為它已經存在在庫存向量中。用於創建塊散列的散列函式的屬性會阻止這種情況,因為如果沒有相同的確切數據,它將不會產生相同的塊散列。請參閱數字指紋。
區塊散列是通過創建所有交易的散列(使用默克爾樹)並將其與塊頭中的其他元數據一起散列來創建的。改變交易(甚至只是交易的順序)會改變默克爾根,從而改變區塊雜湊。見<https://en.bitcoin.it/wiki/Block_hashing_algorithm>