Access control hook on BNB Chain

Uniswap v4 Hook Contract 0x3ddcae0281ccd7289d4b08302f1b3342cfb10a80 on BNB Chain · Access control

Volume (24h)
$0
Value locked (TVL)
$0.30
All-time volume
$0
Pools using this hook
1
Swaps (24h)
0 (0 traders)
Total swaps
0

What it does

A permission-checking hook that charges no extra fee but can approve or block swaps, deposits, and LP withdrawals based on rules likely set by an admin or external provider.

How it works step by step

  • Checks every swap and every liquidity add or removal before it happens, likely against rules from an external provider contract.
  • Exposes an admin address and a provider address, which suggests an outside contract decides who may trade or provide liquidity.
  • All hook functions are read-only (view), so the hook cannot move tokens or change fees itself.
  • Does not take any fee or alter swap amounts.
Swap behaviour
Before each swap the hook runs a read-only check that can allow it or reject it. It cannot change swap amounts or charge a fee.
Liquidity behaviour
Before adding or removing liquidity the hook runs a read-only check that can reject the action. Because removals are checked too, LP withdrawals could be blocked if the check fails, and the exact rules cannot be confirmed from bytecode.
Fee behaviour
Uses the pool's static fee; the hook takes no fee of its own.
Owner & admin controls
An admin address and a provider address exist, and they likely control the gating rules. The exact powers are unknown because no setter functions appear in this contract, so the rules probably live in the external provider.

Enabled Uniswap v4 callbacks

beforeAddLiquidity, beforeRemoveLiquidity, beforeSwap

beforeSwap: approves or rejects swaps; beforeAddLiquidity: approves or rejects deposits; beforeRemoveLiquidity: approves or rejects withdrawals.

Security & trust assessment

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

Who controls it: An admin and an external provider contract likely decide who passes the checks. In the worst case they could block swaps, deposits, or LP withdrawals.

Risk to user funds: The hook cannot take any tokens and charges no fee (0%). However, LP principal could be trapped in the pool if the withdrawal check rejects removals.

Security findings

  • [high] Withdrawals can be gated: beforeRemoveLiquidity is enabled and can revert based on its check, which may come from an external provider. If that check fails or changes, LPs could be unable to remove their liquidity.
  • [medium] Swap and deposit gating: beforeSwap and beforeAddLiquidity can reject traders or depositors, which acts as an allowlist or denylist.
  • [info] No fund movement: Every callback is read-only and return deltas are disabled, so the hook cannot take tokens or charge fees.

Contract details

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

Pools using Access control hook