Blockchain

礦工何時決定停止收集交易並開始計算雜湊以試圖獲勝?

  • March 6, 2016

我對礦工是選擇等待更多交易(更多費用)還是在收到來自網路的第一筆交易後立即開始感到困惑。一旦礦工開始計算雜湊值,它就會將新交易排隊,對嗎?

我的困惑是:每個礦工節點都會計算不同區塊的雜湊值。有些會比其他人有更多的交易。有關係嗎?

如果我很幸運地找到了僅包含一筆交易的區塊的解決方案,但其他人找到了包含我的交易和另一筆交易的區塊的解決方案,那麼他贏了,對嗎?

因此,一個區塊中的交易越多,解決散列難題就越困難,對嗎?如果是,為什麼?

有人可以澄清一下這個交易分組是如何由挖礦節點完成的嗎?

我對礦工是選擇等待更多交易(更多費用)還是在收到來自網路的第一筆交易後立即開始感到困惑。一旦礦工開始計算雜湊值,它就會將新交易排隊,對嗎?

是的,他們可以在看到以前的交易後立即開始探勘,並使用他們隨時看到的新交易更新區塊模板。早期的 Satoshi 客戶端每隔幾秒更新一次模板,現代礦工似乎每半分鐘或更長時間更新一次,具體取決於軟體。他們更新區塊模板沒有任何好處,除非他們這樣做可能會獲得更多費用,如果他們錯過交易,則不會造成真正的傷害。

如果我很幸運地找到了僅包含一筆交易的區塊的解決方案,但其他人找到了包含我的交易和另一筆交易的區塊的解決方案,那麼他贏了,對嗎?

不,這是不正確的,沒有礦工與區塊中的交易數量斷絕關係。如果他們可以在相同的高度和相同的難度目標上看到兩個競爭的塊,那麼首先看到通常是大多數人使用的行為。如果他們確實與交易數量平分秋色,那麼礦工們就可以用自己的虛假區塊填充區塊,並始終贏得任何比賽。

因此,一個區塊中的交易越多,解決散列難題就越困難,對嗎?

不,無論該塊實際包含的交易數量如何,一個塊的標頭總是 80 字節長。這是因為區塊頭只包含交易的雜湊值,而不是交易內容本身。對於一個沒有交易的區塊,除了支付給礦工的一個區塊或一個有數千個交易的區塊,難度是相同的。

有人可以澄清一下這個交易分組是如何由挖礦節點完成的嗎?

很難回答這個問題,因為大多數池都執行完全定制的軟體,它們有自己的標準和它們自己執行的優化。一般來說,他們會收集所有有他們想要接受的費用的有效交易,並將它們組裝成他們希望創建的最大大小的塊,任何沒有被包含在記憶體池中,以供以後或其他人探勘.

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