Fee sharing hook on BNB Chain
Uniswap v4 Hook Contract 0xeb67fef5b5dc83bffc4059bdbbfb8b368ac650cc on BNB Chain · Fee sharing
- Volume (24h)
- $191
- Value locked (TVL)
- $1.20K
- All-time volume
- $186.49K
- Pools using this hook
- 8
- Swaps (24h)
- 26 (18 traders)
- Total swaps
- 7,758
What it does
A Uniswap v4 hook that charges a dynamic fee on swaps in this pool and splits the collected fee between a protocol wallet and an operator wallet.
How it works step by step
- Sets up pool-specific state in afterInitialize.
- Applies swap-time logic in beforeSwap that can affect the fee.
- Takes a fee portion of swaps through beforeSwapReturnDelta and afterSwapReturnDelta.
- Splits collected fees between protocol and operator wallets using PROTOCOL_SHARES and TOTAL_SHARES.
- Exposes owner-controlled setters for the protocol and operator wallets with two-step ownership transfer.
- Swap behaviour
- beforeSwap and afterSwap run with return-delta permissions, so the hook can apply a fee and take a share of the swap currency, with the split governed by protocol and operator share parameters.
- Liquidity behaviour
- Has beforeAddLiquidity, afterAddLiquidity, beforeRemoveLiquidity and afterRemoveLiquidity selectors present; the hook appears to read liquidity-related state but its exact effect could not be fully determined.
- Fee behaviour
- Hook declares beforeSwapReturnDelta and afterSwapReturnDelta and has a dynamic-fee tag; it appears to take a fee on swaps (TOTAL_FEE_PIPS, PIPS_DENOMINATOR) and split it between protocol wallet and operator wallet according to PROTOCOL_SHARES and TOTAL_SHARES, with the exact fee rate and split logic not confirmed from source.
- Owner & admin controls
- Owner (Ownable, two-step transfer via pendingOwner/acceptOwnership, renounceOwnership) can call setProtocol(address) to change the protocol wallet and setOperator(address) to change the operator wallet; an operator-acceptance flow (acceptOperator) exists. Parameters like PROTOCOL_SHARES, TOTAL_SHARES and TOTAL_FEE_PIPS are exposed as views; no pause function was identified.
Enabled Uniswap v4 callbacks
afterInitialize, beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta
afterInitialize: initialization setup of pool-specific state. beforeSwap: pre-swap fee or return-delta logic. afterSwap: post-swap accounting and fee distribution with return delta. beforeSwapReturnDelta and afterSwapReturnDelta: the hook can take a portion of swap currency, so it moves funds during swaps.
Security & trust assessment
Risk level: medium, estimated (decoded bytecode, low confidence).
Who controls it: The owner can reassign the protocol wallet and operator wallet, redirecting fee shares; if the owner key is compromised, future fee revenue could be diverted. Ownership transfer is two-step, which reduces accidental transfer risk.
Risk to user funds: The hook can take a share of swap output through return deltas, which reduces the amount received by traders relative to a plain pool; it does not appear to hold user liquidity directly, but the fee take depends on unverified logic.
Security findings
- [info] Swap-time currency diversion: Hook takes currency during swaps via return deltas and uses a take call, so a portion of swap value is diverted to the hook's fee recipients.
- [medium] Owner can redirect fee recipients: setProtocol and setOperator are callable by owner and redirect future fee flows to new addresses.
- [low] Dynamic fee set by hook logic: Bytecode indicates a dynamic-fee hook that may call updateDynamicLPFee; fee levels are set by hook logic, and the bounds could not be verified without source.
Contract details
- Verified source
- No
- Bytecode size
- 9,271 bytes
- Upgradeable proxy
- No
- Detected patterns
- dynamic-fee, moves-currency, ownable, return-delta
Pools using Fee sharing hook
- BNB / USDT (Dynamic fee) — 24h volume $191, TVL $1.18K, 21 swaps today
- USDT / SPCXB (Dynamic fee) — 24h volume $0.25, TVL $21, 5 swaps today
- USDT / 躺赢 (Dynamic fee) — 24h volume $0, TVL <$0.01, 0 swaps today
- USDT / CRCLB (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today
- SNDKB / USDT (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today
- USDT / KGST (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today
- quq / USDT (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today
- BNB / quq (Dynamic fee) — 24h volume $0, TVL $0, 0 swaps today