ERC-4626 virtual-share offset (OZ ≥4.9)
Uniswap (v2 + v3)'s assessment for RD-F-074 — scored not_applicable on the v1.7.0 rubric. The evidence below is the curator's reasoning for this score.
Evidence summary #
Lending-only factor (taxonomy PD-024). V3 LP positions are ERC-721 NFTs (NonfungiblePositionManager: 0xC36442b4a4522E871399CD717aBDD847Ab11FE88). V2 LP positions are ERC-20 pool tokens using paired-reserve formula. Neither version is an ERC-4626 vault. Share-inflation via virtual offset is structurally inapplicable to both.
Detail #
Taxonomy §Category 4 PD-024: lending-only. V3 NonfungiblePositionManager (0xC36442b4a4522E871399CD717aBDD847Ab11FE88): ERC-721, each position tracks its own tick range and liquidity — no shared exchange rate susceptible to inflation. V2 pool tokens (e.g., WETH/USDC pair): ERC-20 LP tokens, but not ERC-4626 vaults; reserve-based accounting is not the share/vault pattern that enables the inflation attack. V3 whitepaper §2 confirms per-position tick-based liquidity tracking with no shared pool share price concept.
Sources #
- EtherscanEtherscan — NonfungiblePositionManagerNonfungiblePositionManager — 0xC36442b4a4522E871399CD717aBDD847Ab11FE88 — ERC-721 LP position accountingretrieved 2026-05-12
- Taxonomy PD-024 + NFT position designTaxonomy PD-024 lending-only; profile §1 NFT position design; neither V2 nor V3 is an ERC-4626 vaultretrieved 2026-05-12
- Uniswap V3 Whitepaper §2Uniswap V3 whitepaper §2 — per-position tick-based liquidity tracking; no shared pool share priceretrieved 2026-05-12
Methodology #
Determine whether ERC-4626 vaults use OpenZeppelin ≥4.9 virtual-share offset pattern to prevent first-depositor share-inflation.
See the full factor methodology and distribution across all protocols →