Blockchain

如果在多個不同礦工的區塊中添加相同的交易怎麼辦?

  • October 27, 2020

我知道礦工可以自由地從記憶體池中選擇交易,

假設記憶體池中有 5 個事務 Tx1 Tx2 Tx3 Tx4 和 Tx5,

有 3 個礦工 M1 M2 和 M3

M1 已使用 Tx1 Tx2 和 Tx3 創建了塊

M2 已使用 Tx2 Tx3 和 Tx4 創建了塊

M3 已使用 Tx2 和 Tx5 創建了塊

==

M1成功解塊並獲得比特幣和交易費方面的獎勵

同時 M2 和 M3 成功解塊,在這種情況下,M2 和 M3 會獲得獎勵和交易費用嗎?因為 Tx2 已經是 M1 區塊的一部分,並且已經被確認。

不,來自 M2 和 M3 的塊很可能最終會被丟棄。原因是一旦 M1 廣播它的區塊,大多數礦工將放棄他們目前的區塊並開始嘗試解決下一個區塊。

沒有什麼可以阻止 M2 和 M3 在 M1 之後廣播他們的區塊,希望他們也能夠生成下一個區塊並接管最長的鏈。問題是現在生成一個區塊的成本是數十萬美元的電力,因此嘗試連續解決兩個區塊是一場昂貴的賭博。

在回答您的主要問題時,如果已經包含在一個塊中的交易出現在後續塊中,那麼新塊將被完整節點和其他礦工拒絕為無效。

“在這種情況下,M2和M3會得到獎勵和交易費嗎?” 簡單的答案->是的。但是區塊獎勵不能立即使用。它們被時間鎖定為 100 個區塊。

當這種情況發生時,其他礦工將通過在其上施加 pow 來暗示他們接受這 3 個區塊(M1、M2、M3)中的哪一個。在幾個區塊內,區塊鏈將勝過其他兩個。一旦達到 100 個區塊的限制,現在位於最長鏈中的區塊中的獎勵將可以被任何跟隨該鏈的人使用和接受。

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