EIP-1352: Specify restricted address range for precompiles/system contracts


Metadata
Status: StagnantStandards Track: CoreCreated: 2018-07-27
Authors
Alex Beregszaszi (@axic)

Simple Summary


Specify an Ethereum address range occupied by precompiles and future system contracts. Regular accounts and contracts cannot obtain such an address.

Abstract


The address range between 0x0000000000000000000000000000000000000000 and 0x000000000000000000000000000000000000ffff is reserved for precompiles and system contracts.

Motivation


This will simplify certain future features where unless this is implemented, several exceptions must be specified.

Specification


The address range between 0x0000000000000000000000000000000000000000 and 0x000000000000000000000000000000000000ffff is reserved for precompiles and system contracts.

Due to the extremely low probability (and lack of adequate testing possibilities) no explicit checks should be added to ensure that external transaction signing or the invoking of the CREATE instruction can result in a precompile address.

Rationale


N/A

Backwards Compatibility


No contracts on the main network have been created at the specified addresses. As a result it should pose no backwards compatibility problems.

Test Cases


N/A

Implementation


N/A

Copyright


Copyright and related rights waived via CC0.