Fee sharing hook on Ink

Uniswap v4 Hook Contract 0x7c629422e9ac982ce72323d48ead94fcc092aac8 on Ink · Fee sharing

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

What it does

This hook appears to take a basis-point share of pool activity and route it to internal credit and buyback accounting, but without verified source the exact trades that pay more or less cannot be confirmed.

How it works step by step

  • Proxy forwards all calls to an implementation contract that runs the hook logic
  • Exposes a single dispatched entry point (selector 0x6b0e8283) taking two addresses, two uint256 values, two uint16 values and three booleans plus an address, consistent with a pool-configuration or initialization payload
  • Calls internal crediting functions (creditInternal with two overloads) that suggest accounting of amounts owed to recipients
  • Calls notifyBuybackInternal, indicating part of the swap-derived value is routed to a buyback mechanism
  • Uses bpsOf to compute basis-point shares of amounts, suggesting proportional fee or revenue splits
  • Performs ERC20 transfer calls, so it can move tokens it holds
Swap behaviour
Uses beforeSwap and afterSwap with beforeSwapReturnDelta enabled, so it can alter the swap's net amounts; the exact trades charged more or less cannot be determined from decoded bytecode alone.
Liquidity behaviour
Hooks beforeAddLiquidity and beforeRemoveLiquidity, which can gate or adjust liquidity operations; specific behaviour cannot be confirmed without source.
Fee behaviour
Fee share is computed in basis points via bpsOf and routed through internal credit and buyback notifications; the precise fee rate and recipients cannot be determined from the input.
Owner & admin controls
The proxy is upgradeable, so whoever controls the upgrade path can replace the implementation. No owner or pause selectors were identified in the decoded input, so parameter control is unknown.

Enabled Uniswap v4 callbacks

beforeInitialize, beforeAddLiquidity, beforeRemoveLiquidity, beforeSwap, afterSwap, beforeSwapReturnDelta

beforeInitialize runs when the pool is created; beforeAddLiquidity and beforeRemoveLiquidity gate or adjust liquidity changes; beforeSwap and afterSwap take part in each swap; beforeSwapReturnDelta lets the hook take or give currency deltas during a swap.

Security & trust assessment

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

Who controls it: A privileged upgrade or configuration key could change the fee split, redirect credited amounts, or alter swap and liquidity gating for all pools using this hook.

Risk to user funds: The hook can take value through return deltas and transfer tokens it holds, so traders and LPs are exposed to any fee or redirection logic in the implementation, which can change after upgrade.

Security findings

  • [high] Upgradeable proxy: Every call is delegated to implementation 0x86a8fdbae87c8e6656ab12582f16ada9b732c3f5, which can be replaced by whoever controls the proxy admin, changing all hook logic after deployment.
  • [medium] Return-delta fund movement: beforeSwapReturnDelta is enabled and the bytecode transfers ERC20 tokens, so the hook can take a portion of swap value and move it out of the pool flow.
  • [medium] No source available: Verified source is absent, so the access control, fee parameters and upgrade authority could not be confirmed and must be treated as unknown.
  • [low] Unidentified storage layout: The inferred storage layout is empty, so configuration state such as fee rates and recipients could not be mapped.

Contract details

Verified source
No
Bytecode size
22,840 bytes
Upgradeable proxy
Yes
Detected patterns
erc20, return-delta, upgradeable

Pools using Fee sharing hook