Access control hook on Ethereum

Uniswap v4 Hook Contract 0x56c6038207e87424d3a1dab544526f75761428a0 on Ethereum · Access control

Volume (24h)
$94
Value locked (TVL)
$1.00K
All-time volume
$94
Pools using this hook
1
Swaps (24h)
8 (2 traders)
Total swaps
8

What it does

An immutable, read-only hook that checks pool state before creation, deposits, swaps and donations and may reject some of them, while charging no extra fee and never blocking LP withdrawals.

How it works step by step

  • Checks conditions before a pool is created, before liquidity is added, before swaps and before donations.
  • All callbacks are read-only (view), so the hook cannot move tokens or change its own state.
  • Reads pool state from the PoolManager (via extsload), likely to allow or reject actions based on current pool conditions such as price or liquidity.
  • Has no storage and no admin functions, so its rules are fixed in code.
Swap behaviour
Before each swap the hook runs a read-only check that may reject the swap based on pool state; it cannot take fees or change swap amounts. The exact condition cannot be confirmed from bytecode.
Liquidity behaviour
Adding liquidity passes through a read-only check that may block deposits under some conditions. Removal callbacks are disabled, so LPs can always withdraw freely.
Fee behaviour
Uses the pool's static fee; the hook has no fee logic and cannot take tokens.
Owner & admin controls
No admin controls found; the contract has no storage and no owner functions.

Enabled Uniswap v4 callbacks

beforeInitialize, beforeAddLiquidity, beforeSwap, beforeDonate

beforeInitialize: validates pool creation; beforeAddLiquidity: may allow or reject deposits; beforeSwap: may allow or reject swaps based on pool state; beforeDonate: may allow or reject donations.

Security & trust assessment

Risk level: low, estimated (decoded bytecode, medium confidence).

Who controls it: No privileged keys were found; the contract is immutable with fixed logic.

Risk to user funds: The hook cannot touch user or LP funds and takes no fees (0%). LP principal cannot be locked or drained, though some swaps or deposits may be rejected by its checks.

Security findings

  • [info] Read-only gating hook: All callbacks are view functions with no storage, so the hook can only revert actions, never move funds or change fees.
  • [info] Unrestricted withdrawals: Remove-liquidity callbacks are disabled, so LPs can always withdraw their liquidity.

Contract details

Verified source
No
Bytecode size
1,885 bytes
Upgradeable proxy
No

Pools using Access control hook