在加密貨幣挖礦中,我們會在礦池的統計中經常看到孤塊率這一詞。對於挖礦新手而言,這個詞也許還有些陌生。在平常的挖礦中,除了常規區塊以外,其實還有著空塊、孤塊、叔塊的存在,而這些不同於常規區塊的爆塊也將一定程度上影響到礦工的收入。
ViaBTC微比特礦池的BTC數據統計
空塊
加密貨幣挖礦其實是一個計算打包的過程,礦工們首先需要進行算力競爭,誰先解出區塊難題誰就先獲得了記賬權,獲得記賬權的礦工需要把用戶廣播出來的交易信息打包到這個區塊中,隨後放到區塊鏈上傳遞下去。
而如果礦工獲得記賬權後,並不在區塊中打包交易信息,我們就將其稱作為空塊。空塊上不包含交易信息,只是礦工利用它來獲得區塊獎勵。這種情況下,由於不包含交易,所以也無法獲得相應的交易礦工費/Gas費獎勵,因此礦工只能獲得最基礎的爆塊獎勵。

孤塊
在區塊鏈網絡中,由於區塊在網絡中傳輸和廣播是需要一定的時間,如果兩個礦工幾乎同時發現了同樣高度的塊,那麼就會出現競爭關係。最終稍微晚一點誕生的區塊雖然也是正常運算產生的,但由於「最長鏈」原則,這個稍晚一些的區塊將無法成為主鏈的一部分,在比特幣網絡中,我們把這些挖得稍晚的區塊叫 「孤塊」,是需要完全拋棄掉的,挖到孤塊的礦工也無法得到相應的區塊獎勵。

孤塊率越高將意味著挖到的無效區塊越多,收入也會隨之降低。因此如何降低孤塊率成為礦池和礦工們會去思考的問題,例如ViaBTC微比特礦池通過自行研發的比特幣客戶端,對比特幣網絡廣播和傳輸過程進行了技術優化,使得礦工能夠更快地發現和廣播比特幣新的區塊,降低了礦工挖礦的孤塊率,保障礦工收益。
叔塊
在以太坊中,也有「孤塊」這一現象的出現。但是由於以太坊的出塊時間比較短,為了防止礦池算力過大控制挖礦過程,同時避免算力的浪費,如果主鏈中的區塊願意接受這些稍晚產生的「孤塊」,那麼它就可以成為叔塊,被包容進接受它的主鏈區塊中,而這部分挖出叔塊的礦工也能獲得相應的叔塊獎勵。
叔塊機制的目的是為了更好地保護以太坊網絡的安全。相較於比特幣,以太坊的出塊時間要短很多,這樣很有可能會出現臨時分叉,在這種情況下,孤塊的大量存在會容易導致以太坊的主鏈可能不是「最重」的那條鏈,最終影響到主鏈的安全性,因此加入將「孤塊」變成「叔塊」的機制其實是一種更安全的行為。
這些挖出了包容叔塊的區塊的礦工能夠獲得相應的叔塊引用獎勵,大約為1/32的基礎挖礦獎勵。當然叔塊的產生也會有一些限制,叔塊必須是區塊的前2層-7層的區塊的直接子塊,並且隨著間隔越大,叔塊獎勵會越少,比如是前2層區塊的子塊也就是間隔1層可以獲得7/8的挖礦基礎獎勵,間隔兩層可以獲得6/8,以此類推。
總體來看,對於礦工而言,空塊的誕生會導致礦工費/Gas費的減少,孤塊率過高也就是無效計算過多將直接導致收入減少,叔塊引用將獲得一定的額外的叔塊引用獎勵。所以礦工在接入算力時,最好應該考慮一些孤塊率更低的礦池,從而更好地保障自己的挖礦收入。


