Security
Audits & Design
Shadow Architecture
Shadow is built on Ramses V3 Core, which is based on Uniswap V3, with several enhancements. These improvements include dynamic system and protocol fee mechanisms and x(3,3). Ramses V3 Core also introduces a new accounting system to track how much active liquidity each concentrated liquidity position provides.
Pool Segregation
Pools will ALWAYS remain immutable, and permissionless. There is no actor in the entire system that could modify liquidity in the pools unless explicitly approved to do on the contracts. The protocol, nor even the timelock, have the ability to modify the liquidity pools. This stands true for both Concentrated Liquidity (V3) and Legacy Liquidity (V2/Stableswap)
Access Control
AccessHub
There are 3 distinct access control roles in the AccessHub system.
DEFAULT_ADMIN_ROLE
, MULTISIG + TIMELOCK have this role initially, then only TIMELOCKPROTOCOL_OPERATOR
, As the name states, this role is for protocol operators. The main functionality the protocol operator role has is surrounding Governance enabling/disabling. Protocol operators can call:killGauge
,reviveGauge
,governanceWhitelist
, and other similar commands.SWAP_FEE_SETTER
Also self-explanatory, this role sets swap fees on liquidity pairs. The protocol's dynamic fee algorithm utilizes this role for consistent value accrual. The function used issetSwapFees
Audits
Spearbit
Shadow Exchange Audit Report
Consensys Diligence
Ramses V3 CLMM Audit Report
Security Competition
Code4rena
Ramses V3 CLMM Contest Report
Additional Security Coverage
- Specialized Testing Review by 100Proof via C4rena
- Post-Competition CL Audit by Zenith Mitigation
- Private Development Review by yAudit
- Testing Review with Spearbit researchers