Прокси-контракт (Proxy contract)
Коротко Прокси-контракт перенаправляет вызовы в отдельный логический контракт, позволяя разработчикам позже менять код токена без смены его адреса.
Прокси-контракт — это смарт-контракт, который хранит адрес и данные, с которыми взаимодействуют пользователи, но передаёт каждый вызов отдельному контракту с реальной логикой. Люди продолжают пользоваться тем же адресом, а код за ним можно заменить новой версией. Команды используют этот паттерн в Ethereum, BNB Chain и Base, чтобы исправлять баги в коде, который иначе изменить невозможно.
Технически прокси использует delegatecall. Он выполняет код логического контракта на собственном хранилище прокси, поэтому балансы и настройки остаются в прокси, а правила берутся из имплементации. Админ-адрес — это может быть отдельный кошелёк, мультисиг или таймлок — имеет право направить прокси на новую имплементацию. Стандарты вроде transparent proxy и UUPS различаются тем, где находится право на апгрейд, но идея та же.
Это важно, потому что код, который вы прочитали или который прошёл аудит, может оказаться не тем кодом, что будет работать завтра. Апгрейд может добавить функцию минта, чёрный список или скрытый налог на продажу уже после вашей покупки. Отказ от владения (renounce) токеном тоже может вводить в заблуждение, поскольку права на апгрейд обычно у отдельного админа прокси. Прокси используют многие легитимные проекты, так что сам паттерн — не красный флаг. Важно, кто контролирует апгрейд и насколько заранее вас предупредят.
В блок-эксплорере проверьте, помечен ли контракт как прокси, и найдите адрес имплементации и админа. Выясните, является ли админ обычным кошельком или мультисигом, есть ли таймлок, задерживающий вступление апгрейдов в силу, и покрывает ли аудит текущую имплементацию, а не старую. Посмотрите историю имплементации на предмет недавних замен. В Solana аналог — обновляемая программа с upgrade authority, и отозванный authority означает, что код заморожен.




