Go-Ethereum

刪除私人網路中的 coinbase 交易

  • January 27, 2022

我願意建立一個難度較低的私有乙太坊網路。我可以將每個塊的難度固定為 1(或恆定),以避免隨著塊數的增加而出現非常高難度的問題。

但這具有減少塊時間的缺點,因此會更快地耗盡磁碟空間。

**有什麼方法可以修改 geth 原始碼以刪除礦工獎勵並因此刪除 coinbase 交易?**所以當有一些真實的交易時,一個塊被添加到鏈中。這將在很大程度上節省磁碟空間,我們可以享受不斷的困難。

乙太坊沒有 coinbase 交易。獎勵會自動記入區塊頭中的礦工地址(在處理完所有交易後)。礦工地址只有 20 個字節,因此消除它不會節省太多。

在 PoW 鏈中,安全性基於探勘的塊,因此生成更少的塊是違反鏈安全性的。也許您可能想要切換到 PoA 網路或其他替代方案,例如使用 Plasma 鏈。

有什麼方法可以修改 geth 原始碼以刪除礦工獎勵並因此刪除 coinbase 交易?

乙太坊將通過增加其餘額為 coinbase提供挖礦獎勵。然後,如果您不想為coinbase提供獎勵,您只需在共識中刪除以下這些行。

https://github.com/ethereum/go-ethereum/blob/a1f8549262567ddacac3d4180f8a6ca0826036a9/consensus/ethash/consensus.go#L567

https://github.com/ethereum/go-ethereum/blob/a1f8549262567ddacac3d4180f8a6ca0826036a9/consensus/ethash/consensus.go#L575

希望這會有所幫助!

引用自:https://ethereum.stackexchange.com/questions/58419