Risk Assessment
Uniswap V1 Risk Assessment
Overview
Uniswap V1 is the original decentralized exchange protocol launched in November 2018 at Devcon 4. It introduced the constant product automated market maker (AMM) formula (x * y = k) that became the foundation for most DEXes. V1 only supported ETH-to-ERC20 token swaps, requiring all trades to route through ETH as an intermediary.
The protocol was designed as a proof-of-concept for automated market making and established the core principle of immutable, non-upgradable smart contracts in DeFi.
Smart Contract Risk
Contract Architecture:
- Core contracts are deployed without proxy patterns
- No upgrade mechanisms exist
- Each token pair requires ETH as intermediary (no direct ERC20-to-ERC20 swaps)
- Simple factory pattern for creating exchange contracts
- LP positions represented as fungible ERC20 tokens
Code Quality:
- Relatively simple codebase (~300 lines)
- Audited before launch
- Open source and publicly reviewed
- Operated since 2018 with one notable exploit (see below)
- Code served as foundation for numerous forks and derivatives
Historical Incident:
- April 2020: ~$300K exploit via ERC777/imBTC reentrancy vulnerability. The attack exploited the interaction between ERC777 token callbacks and Uniswap V1’s swap logic, draining the imBTC liquidity pool. This was a known class of vulnerability specific to ERC777 tokens, not standard ERC20 tokens.
Attack Surface:
- Minimal attack surface for standard ERC20 tokens
- No admin functions that can access user funds
- Price manipulation requires significant capital
- ERC777 token compatibility issues (exploited April 2020)
Admin/Governance Risk
Governance Structure:
- Originally launched with no governance mechanism
- After UNI token launch in 2020, governance can activate protocol fees
- Cannot modify pool logic or access liquidity
- V1 pools remain independent of later governance decisions
Key Controls:
- No pause mechanisms
- No emergency withdrawal functions
- No ability to upgrade contracts
- Fee switch activated across Uniswap via UNIfication proposal (December 2025)
Trust Assumptions:
- No trust required in any party
- Contracts will function as long as Ethereum exists
- Governance cannot affect V1 functionality
Oracle Risk
Price Oracle:
- No built-in TWAP oracle (introduced in V2)
- Spot price can be manipulated within single blocks
- Not recommended as a price oracle for other protocols
- Arbitrageurs keep prices aligned with market
Oracle Security:
- Manipulation requires capital commitment
- Flash loan attacks possible for oracle price manipulation
- External protocols should not rely on V1 for price feeds
Economic Risk
Liquidity Risk:
- ~$0.5M TVL remaining (most liquidity migrated to V2/V3)
- Primarily used for historical/nostalgic purposes
- Limited liquidity means high slippage on trades
- Inefficient capital usage compared to concentrated liquidity (V3)
Operational History:
- Launched November 2018
- One exploit (April 2020 ERC777 reentrancy, ~$300K lost from imBTC pool)
- Successfully processed billions in volume before V2/V3 migration
- Remains functional and accessible
Stage Assessment
Stage 2 Criteria Met: ✓ Immutable core contracts with no upgrade capability ✓ No admin fund access under any circumstances ✓ Self-contained pricing mechanism ✓ 7+ years of operation (one ERC777-specific exploit in 2020, core ERC20 logic unaffected) ✓ Governance introduced later cannot modify V1 contracts
Partial Criteria: ⚠ Limited audit scope (single audit, though extensive community review) ⚠ No TWAP oracle (not applicable for this version)
Justification: Uniswap V1 achieves Stage 2 (Trustless) status due to its complete immutability and inability for any party to access user funds. The protocol has operated continuously for over 7 years. The April 2020 ERC777 reentrancy exploit affected a specific token type (imBTC) but did not compromise the core ERC20 trading logic. While it lacks features of later versions (concentrated liquidity, TWAP oracle, direct ERC20 swaps), the core security properties remain sound.