Mining-Theory
創建空塊與創建完整塊
我已經閱讀了有關該主題的許多不同答案。
礦工自己決定是否在他的區塊中包含任何交易以及有多少交易(只要區塊大小小於 1MB?)是否正確?
什麼對礦工更有利?為什麼:創建一個空塊,或創建一個包含池中所有交易的塊/或小於 1MB?或者有沒有最優的?
礦工不包含任何交易以獲得獎勵不是更快嗎?更何況,如果是大礦池那樣做,豈不是有接管網路的危險?
是的,您是正確的,礦工可以決定是否在他們正在探勘的區塊中包含交易。協議本身並不強制它們包含任何事務。相反,他們有經濟動機將交易包括在內,因為他們可以收取交易費用並獲得更多利潤。
這對他們來說是一個有趣的權衡,因為他們的利潤必須超過驗證這些交易的成本。但是,我懷疑交易驗證不會花費礦工任何費用,因為他們可以在使用不同硬體
i+1
探勘塊時驗證和散列交易塊i
:驗證是在 CPU 上完成的,探勘是在 ASIC 上完成的。但也有一些有趣的情況:例如,
i+1
如果另一個礦工 B 找到了區塊i
,並且其中包含來自礦工 A 的下一個區塊的交易,礦工 A 必須重新計算他們的下一個i+1
區塊。在這種情況下,礦工 A 必須從他的區塊中刪除一些 TXi+1
並重新計算 Merkle 樹。或者礦工 A 可以創建一個空塊i+1
並在其上進行探勘。有時,在區塊上挖礦時
i+1
,礦工甚至跳過驗證其他礦工的區塊i
,以期早點開始[1]來贏得比賽。希望這有助於澄清一些事情。