PWBTCBurnHook on Ethereum
Uniswap v4 Hook Contract 0xe8dd412abdf3fa18ca8dcc1b0809db4115d880cc on Ethereum · Token · Verified contract
- Volume (24h)
- $20
- Value locked (TVL)
- $412
- All-time volume
- $1.80K
- Pools using this hook
- 1
- Swaps (24h)
- 4 (2 traders)
- Total swaps
- 290
What it does
This hook burns 1% of pDAI on every swap that involves pDAI, in either direction, so traders selling or receiving pDAI get 1% less pDAI and WETH is never burned.
This read was written for the hook 0xb8a3…00cc on Ethereum and reused here: the two share a code shape, so constants such as fees, owners and addresses can differ.
How it works step by step
- Hooks the WETH/pDAI pool on Ethereum mainnet and burns 1% of pDAI on every swap in either direction
- beforeSwap burns 1% of the specified-side amount when pDAI is the specified currency, by calling PoolManager.take to the 0x...dEaD address and returning that amount as a before-swap specified delta
- afterSwap burns 1% of the unspecified-side amount when pDAI is the unspecified currency, returning the fee as an after-swap unspecified delta
- WETH is never burned; all token and pool addresses are hardcoded constants with no constructor arguments
- If the take call reverts (for example a token that blocks the dead address), the swap still succeeds and no burn occurs
- Emits FeeBurned for each successful burn
- Swap behaviour
- On every swap that touches pDAI, 1% of the pDAI amount is taken from the swap by the hook and sent to the dead address. If pDAI is the specified side, the burn is deducted in beforeSwap; if it is the unspecified side, it is deducted in afterSwap. Swaps that do not involve pDAI, or where the burn amount is zero or exceeds int128 range, proceed without a burn. Traders who sell pDAI or receive pDAI effectively pay an extra 1% of the pDAI leg; the 1% is burned rather than paid to LPs.
- Liquidity behaviour
- No liquidity callbacks.
- Fee behaviour
- Uses the pool's static fee for the swap itself; the hook adds a separate 1% pDAI burn on each swap via return deltas, which is not paid to LPs or the protocol.
- Owner & admin controls
- No admin controls found. There is no owner, pause, upgrade path or parameter setter; the contract is immutable and only the PoolManager can call the hook functions.
Enabled Uniswap v4 callbacks
beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta
beforeSwap is used to burn 1% of the specified pDAI amount via PoolManager.take and return it as a specified delta; afterSwap is used to burn 1% of the unspecified pDAI amount via PoolManager.take and return it as an unspecified delta; beforeSwapReturnDelta and afterSwapReturnDelta are required so these take amounts are netted against the swap.
Security & trust assessment
Risk level: medium, estimated (decoded bytecode, high confidence).
Who controls it: No privileged key is present. Because the contract is non-upgradeable and has no admin functions, no party can alter fees, pause swaps or redirect burns.
Risk to user funds: The hook takes 1% of pDAI from swaps through PoolManager.take and sends it to the dead address; it does not hold user funds. Swaps can only be affected if pDAI transfers to 0x...dEaD revert, in which case the swap continues with no burn.
Security findings
- [medium] Hook removes 1% of pDAI from every swap: The hook takes 1% of the pDAI leg through return deltas and sends it to 0x...dEaD, so traders receive less pDAI than the pool would otherwise pay. This is a design feature, but it is a permanent, non-optional tax on the token.
- [low] Burn failures are silently ignored: Both hook functions wrap PoolManager.take in try/catch and return a zero delta on failure, so a pDAI transfer that reverts lets the swap succeed without burning; the burn can be skipped without notice.
- [info] Immutable, no admin keys: All addresses are constants and there is no owner, pause or upgrade mechanism, so the hook's behaviour cannot be changed after deployment.
Contract details
- Verified source
- Yes (PWBTCBurnHook)
- Compiler
- solc 0.8.26+commit.8a97fa7a
- Bytecode size
- 2,117 bytes
- Upgradeable proxy
- No
- Detected patterns
- moves-currency, return-delta
Pools using PWBTCBurnHook
- ETH / WBTC (0.30% fee) — 24h volume $20, TVL $412, 4 swaps today