delvingbitcoin
PPLNS with job declaration
Posted on: December 17, 2024 13:27 UTC
The discussion focuses on a vulnerability within the consensus mechanism where an attacker can send numerous block proposals that require extensive validation time, posing a risk of a free attack due to the potential for these blocks to be invalid.
This issue is highlighted in detail on DelvingBitcoin.org. To mitigate such attacks, two primary strategies are recommended. The first involves delaying the validation process until a certain threshold of shares has been received, which helps in prioritizing the validation of potentially legitimate blocks over fraudulent ones. The second strategy suggests prohibiting non-standard transactions within the template to reduce the chance of processing potentially problematic or malicious transactions.
Further examination of the problem reveals that merely verifying transactions against the JDS mempool is insufficient for ensuring the validity of a block proposal. This is because it does not account for unknown transactions that could be introduced through an sv2 message. These transactions, even if fetched and included, might still be slow to validate or could involve high-value fake coins, complicating the validation process. Additionally, conflicts within the JDS mempool may necessitate the eviction of other transactions to accommodate new ones, further complicating the procedure.
To robustly determine the validity of proposed blocks, it's suggested that nodes should verify them as they would any standard block but without requiring proof-of-work (PoW). Currently, the lack of an RPC method for such a verification process poses a challenge, as existing methods like submitblock
demand PoW. Introducing a new RPC method that allows for the verification of blocks without PoW could significantly enhance the system's resilience against such attacks by streamlining the validation process for proposed blocks without compromising security measures.