bitcoin-dev

Great Consensus Cleanup Revival

Great Consensus Cleanup Revival

Original Postby Antoine Riard

Posted on: June 29, 2024 01:53 UTC

Antoine reached out with an inquiry regarding the robustness of C pointers, particularly in the context of preventing memory and CPU Denial of Service (DoS) issues tied to memory management.

He specifically mentioned concerns around hypothetical scenarios where rule checking, such as validating the 64 bytes size for all block transactions, might become a point of vulnerability. To illustrate his point, Antoine referenced the validation logic found in libbitcoin's block::check() function, highlighting it as the equivalent of core's CheckBlock process. The function in question is detailed within the libbitcoin system's repository, accessible at https://github.com/libbitcoin/libbitcoin-system/blob/master/src/chain/block.cppL751. Antoine's communication underscores a keen interest in understanding how memory and CPU DoS vulnerabilities can be mitigated through effective memory management practices and robust pointer usage in programming.