Hyperledger Besu
BESC Hyperchain runs on Hyperledger Besu 23.7.3, an enterprise-grade, Apache 2.0–licensed Ethereum client maintained by the Linux Foundation.
Why Besu?
Besu was chosen for BESC Hyperchain because it is the only production Ethereum client with first-class support for:
- Permissioned networks — built-in account and node permissioning via smart contracts
- IBFT 2.0 — the enterprise consensus protocol used by major consortium chains worldwide
- Enterprise features — privacy groups, enhanced logging, structured audit trails
- EVM parity — full Ethereum compatibility, including the latest hardforks
Version
Hyperledger Besu 23.7.3This version is identical to what the validator (consensus) nodes run, ensuring full protocol compatibility between the public RPC nodes and the block-producing validators.
Memory & Performance Configuration
The public RPC nodes are configured for high throughput:
toml
# Java heap — 4GB minimum, 16GB maximum
JAVA_OPTS=-Xms4g -Xmx16g
# Memory allocator — jemalloc for lower fragmentation
LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libjemalloc.so.2
# Concurrent RPC connections
rpc-http-max-active-connections=500
# Bloom filter cache — dramatically speeds up eth_getLogs
auto-log-bloom-caching-enabled=true
# Log range for historical queries
--rpc-max-logs-range=20000Besu-Specific RPC Methods
In addition to the standard eth_* namespace, Besu exposes the ibft_* namespace for consensus queries:
bash
# Get current active validators
curl -X POST https://hyper.beschyperchain.com \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"ibft_getValidatorsByBlockNumber","params":["latest"],"id":1}'
# Get validators at a specific block
curl -X POST https://hyper.beschyperchain.com \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"ibft_getValidatorsByBlockNumber","params":["0x8A0000"],"id":1}'