Прогресс по EIP-7417
30 ноября смарт-контракт EIP-7417 (посмотреть на Etherscan) был развернут в основной сети Ethereum. Этому предшествовал длительный процесс отладки и устранения проблем.
Так как EIP-7417 находится на этапе проверки редакторами EIP, от них также было получено несколько замечаний. Основные рекомендации касались улучшения документации смарт-контракта.
EIP-7417 стремится стать стандартом, так как в каждом блокчейне с поддержкой EVM должен существовать только один конвертер ERC-20 🔁 ERC-223. Для достижения этой цели проект активно сотрудничает с внутренними и внешними аудиторами, а также проводит консультации и встречи с редакторами EIP. Несмотря на значительные временные затраты, эта работа крайне важна, поскольку конвертер токенов EIP-7417 является ключевым компонентом экосистемы ERC-223 и более широкой экосистемы DEX223.
За ходом проверки редакторов EIP можно следить на странице GitHub.
Выявленные и исправленные проблемы
В процессе разработки были выявлены и исправлены следующие проблемы:
- Неконтролируемая передача нативной валюты
- Проблема: По логике контракта нативная валюта должна передаваться после перевода токена. Однако ограничения газа позволяли перевести нативную валюту, но не позволяли обновить состояние контракта получателя, что приводило к некорректному учету поступающей нативной валюты.
- Решение: Внесены изменения в код контракта для правильной передачи газа (коммит на GitHub).
- "Застревание" нативной валюты в контракте токена
- Проблема: В случае отмены платежа, выполненного в нативной валюте и токенах, нативная валюта могла быть отправлена на адрес контракта токена вместо возврата отправителю.
- Решение: Добавлено условие, гарантирующее возврат нативной валюты отправителю (коммит на GitHub).
- Потенциальная уязвимость для вывода ERC-223 через функцию извлечения ERC-20
- Проблема: Функция extractStuckERC20, предназначенная для извлечения ошибочно отправленных ERC-20 токенов, могла потенциально использоваться для вывода токенов ERC-223. Хотя риск был минимальным из-за ограничения функции на специальный административный адрес, уязвимость была классифицирована как значимая.
- Решение: Добавлено условие проверки типа токена, чтобы запретить вывод ERC-223 через эту функцию (коммит на GitHub).
Важно отметить, что все эти проблемы были выявлены в ходе регулярных проверок и своевременно устранены, а не обнаружены после развертывания. Код прошел тщательные тестирования и аудиты экспертного сообщества до того, как через конвертер начали проходить токены с реальной ценностью. Такой проактивный подход контрастирует с типичной практикой в индустрии криптовалют, где уязвимости часто обнаруживаются только после того, как пользователи уже вложили средства.
Работа с редакторами EIP для продвижения EIP-7417 к признанию стандартом продолжается.
Заключение
Контракт EIP-7417 был развернут в основной сети Ethereum после исправлений. Первые токены USDT ERC-223 (посмотреть на Etherscan) уже выпущены путем оборачивания токенов ERC-20 через конвертер. Первыми торговыми платформами для USDT ERC-223 (источник) станут централизованная биржа BitMart и DEX223.
Хотя EIP-7417 все еще проходит стадии процесса EIP, текущий прогресс указывает на то, что процесс проверки может завершиться в ближайшее время. Это приведет к официальному признанию EIP-7417 стандартом для Ethereum и всех блокчейнов, совместимых с EVM.
