testnet
GitHub

OKRW Precompile Address

component core

The fixed, reserved blockchain address for the OKRW precompile contract.

The OKRW precompile resides at the static, predictable address 0x1000000000000000000000000000000000000001. This address is hard-coded into the Maroo client, ensuring that all developers and tools can reliably interact with the same instance of the precompile across any Maroo-based network. Using a fixed address avoids the need for a discovery or registry mechanism, simplifying smart contract development and deployment.

Implementation

The constant OkrwPrecompileAddress is defined in precompiles/okrw/okrw.go. When the Maroo node initializes, it registers the precompile's Go implementation with this specific address in the EVM configuration. Any transaction sent to this address is intercepted and handled by the precompile's Run method instead of being executed by the EVM as bytecode.

Usage in Smart Contracts

When writing Solidity contracts, you should define this address as a constant to interact with the precompile. You can then cast this address to the IOkrw interface to call its methods.

IOkrw constant okrw = IOkrw(0x1000000000000000000000000000000000000001);

Security Considerations

Because the address is fixed and the logic is part of the core client software, it cannot be changed or upgraded via a typical smart contract deployment. Any changes to the precompile's logic require a coordinated network-wide software upgrade (hard fork). This provides a high degree of security and stability.
Source: maroo
ESC
Type to search