Смарт-контракт по определению неизменяем. Чтобы обойти это ограничение, разработчики разделяют логику и данные: адрес, с которым взаимодействует пользователь, хранит состояние и переадресует вызовы на отдельный контракт с кодом. Заменили адрес кода — обновили протокол, не трогая балансы.

Технический обзор описывает набор используемых схем: прозрачные прокси, UUPS, маячковые и алмазный стандарт разделяют логику и хранилище состояния, позволяя обновляться без миграции данных, а исполнение решений идёт через контракты управления, координацию мультиподписи или оптимистичное голосование. Источник

Что говорит за

  • Ошибку можно исправить, не перенося весь протокол на новый адрес и не заставляя пользователей мигрировать вручную.
  • Пользователю не нужно ничего мигрировать.
  • Развитие продукта не требует перезапуска.
  • Интеграции с другими протоколами не ломаются, потому что внешний адрес остаётся прежним и партнёрам не нужно ничего переписывать.

Что говорит против

Тот, кто может обновить логику, может заменить её полностью: аудит проверял один код, а работать завтра будет другой, и никакого уведомления при этом может не быть вовсе.

Разбор уязвимостей отмечает, что в списке OWASP за 2026 год недостатки прокси и обновляемости вынесены в отдельную категорию топ-10, а поводом стала живая кампания: боты следят за появлением свежих неинициализированных прокси и вызывают инициализацию первыми, назначая себя владельцем до того, как это успевает сделать разработчик. Потери по одному случаю оценивались примерно в 1,55 млн долларов, а по всей кампании — более чем в 10 млн. Источник

Владение контрактом логики означает не только возможность украсть. Оно означает возможность удалить — а через прокси удаление хуже кражи, потому что восстанавливать оказывается нечего. Эта разница объясняет, почему категория вынесена отдельно.

Что проверять

  • Существует ли право на обновление вообще.
  • У кого оно есть и через какую процедуру исполняется.
  • Заблокирован ли контракт логики от прямой инициализации.

Третий пункт проверяется за минуту и, по моим наблюдениям, проверяется реже всего.

Тот же обзор указывает и на масштаб проблемы в статистике: в списке 2026 года контроль доступа сохранил первое место с историческими потерями около 953,2 млн долларов, а логические ошибки бизнес-уровня поднялись на вторую позицию. Источник

Практический совет для вкладчика: обновляемость сама по себе не плоха. Плоха обновляемость без таймлока. Связка «прокси плюс мультиподпись без задержки» означает, что содержимое протокола может измениться между двумя вашими проверками баланса.

Вывод

Прокси решает реальную задачу и создаёт реальный риск. Оценивать нужно не факт обновляемости, а процедуру: кто принимает решение, сколько подписей требуется и есть ли задержка перед исполнением. Механику задержки разбирал в отдельном материале, аудиты — здесь.

Частые вопросы

Как узнать, что контракт обновляемый?

По наличию адреса реализации в стандартном слоте хранилища, который виден в обозревателе. У неизменяемых контрактов такого слота нет.

Что такое незакрытая инициализация?

Ситуация, когда контракт логики можно инициализировать напрямую и назначить себя владельцем. Защита занимает одну строку кода, но её регулярно забывают.

Всегда ли неизменяемый контракт безопаснее?

Не всегда: найденную в нём ошибку исправить невозможно. Выбор зависит от сложности логики и от того, насколько долго она уже работает без инцидентов.