Skip to main content

Module proxy

Module proxy 

Source
Expand description

§Proxy Pattern Detection

Detects common Ethereum proxy patterns by analyzing bytecode, storage slots, and source code metadata.

§Supported Patterns

  • EIP-1967 - Transparent Proxy (implementation slot: 0x360894...)
  • EIP-1822 - UUPS (Universal Upgradeable Proxy Standard)
  • Transparent Proxy - OpenZeppelin TransparentUpgradeableProxy
  • Beacon Proxy - EIP-1967 beacon slot
  • Minimal Proxy (EIP-1167) - Clone factory pattern (bytecode detection)
  • Diamond (EIP-2535) - Multi-facet proxy

§Detection Methods

  1. Etherscan metadata - Proxy and Implementation fields from getsourcecode
  2. Storage slot reads - Check well-known EIP-1967 slots
  3. Bytecode patterns - EIP-1167 minimal proxy prefix/suffix

Structs§

ProxyInfo
Result of proxy pattern detection.

Constants§

EIP1967_ADMIN_SLOT
Admin slot: bytes32(uint256(keccak256(‘eip1967.proxy.admin’)) - 1)
EIP1967_BEACON_SLOT
Beacon slot: bytes32(uint256(keccak256(‘eip1967.proxy.beacon’)) - 1)
EIP1967_IMPL_SLOT
Well-known EIP-1967 storage slots. Implementation slot: bytes32(uint256(keccak256(‘eip1967.proxy.implementation’)) - 1)

Functions§

detect_proxy
Detect proxy patterns using all available data sources.