Fee sharing hook on Ethereum
Uniswap v4 Hook Contract 0xb1610ac38205340d93b4879c0d364e87271ee044 on Ethereum · Fee sharing
- Volume (24h)
- $4.96K
- Value locked (TVL)
- $0
- All-time volume
- $4.96K
- Pools using this hook
- 1
- Swaps (24h)
- 166 (60 traders)
- Total swaps
- 166
What it does
Traders pay an owner-adjustable extra fee taken from their swap output, which the fee recipient collects, while LPs can add and withdraw liquidity without any hook involvement.
How it works step by step
- Takes a fee from the output of each swap using the after-swap return delta and holds it in the hook.
- An owner sets fee or slippage-style basis-point parameters through a two-value setter; the exact cap cannot be confirmed from bytecode.
- Accrued fees can be claimed to a fee recipient that the owner can change.
- The hook initializes and checks its own pool at creation time.
- It never runs on liquidity adds or removals, so LPs can withdraw freely.
- Swap behaviour
- After each swap the hook can take a cut of the swap output, sized by owner-set basis-point parameters, and move it to itself via the PoolManager. The exact percentage and any upper limit cannot be verified from the unverified bytecode.
- Liquidity behaviour
- No liquidity callbacks; LPs can add and withdraw freely.
- Fee behaviour
- An extra hook fee, set in basis points by the owner, is deducted from swap output and accrues to the hook for the fee recipient to claim. The maximum fee level is unknown from bytecode.
- Owner & admin controls
- The owner (two-step Ownable) can change the basis-point fee or slippage parameters, change the fee recipient, claim accrued fees, and call another owner-only setter. No hard-coded cap on these parameters could be verified.
Enabled Uniswap v4 callbacks
beforeInitialize, afterSwap, afterSwapReturnDelta
beforeInitialize: validates or locks in the pool setup; afterSwap: computes the fee after each trade; afterSwapReturnDelta: lets the hook deduct that fee from the swap output.
Security & trust assessment
Risk level: medium, estimated (decoded bytecode, medium confidence).
Who controls it: A single owner controls the fee parameters, fee recipient, and fee claims. The worst case is raising the swap fee to an unverified level on traders.
Risk to user funds: The hook can deduct part of each swap's output at an owner-set rate whose maximum is unknown, and it holds the accrued fees until they are claimed. LP principal cannot be locked or drained by this hook.
Security findings
- [medium] Owner-adjustable swap fee with unverified cap: The owner can change the basis-point parameters used to take a cut of swap output, and the bytecode alone does not show the maximum. A uint16 basis-point value could in principle be very large if no cap exists.
- [info] LP withdrawals unrestricted: The remove-liquidity callbacks are disabled in the hook address, so the hook can never block or charge LP withdrawals.
Contract details
- Verified source
- No
- Bytecode size
- 6,192 bytes
- Upgradeable proxy
- No
- Detected patterns
- dynamic-fee, erc20, fee-sharing, moves-currency, ownable, return-delta
Pools using Fee sharing hook
- ETH / ZRC20 (0.30% fee) — 24h volume $4.96K, TVL $0, 166 swaps today