Skip to main content
← Projects

Case study

Hyperledger Besu

Fixed malformed raw transaction handling in the Java Ethereum client so empty RLP input returns JSON-RPC Invalid params instead of an internal server error. Added regression coverage across eight malformed payloads.

Context
Hyperledger Besu is an enterprise-grade Java Ethereum client for public, private, and permissioned networks. Its eth_sendRawTransaction method was misclassifying malformed client input as an internal server failure.
My contribution
Traced the 0x80 RLP payload to empty transaction bytes in TransactionDecoder, added an explicit validation guard, and covered eight malformed payload shapes with parameterized RPC tests that also verify the transaction pool is never touched.
Outcome
PR #10736 merged into main after maintainer review with 36 checks passing and no regressions in RPC compatibility Hive tests. The fix shipped in Besu 26.7.1.
JavaEthereumJSON-RPCRLPJUnit
Visit project