image

Проект криптовалюты под названием YAM закрылся 12 августа после того, как ее создатели обнаружили, что существующая в коде программная ошибка фактически лишает их возможности управлять валютой.

Данная строчка кода:

totalSupply = initSupply.mul(yamsScalingFactor);

должна была выглядеть так:

totalSupply = initSupply.mul(yamsScalingFactor).div(BASE);

«Мы обнаружили ошибку в контракте на перебазирование, из-за которой было извлечено гораздо больше YAM, чем предполагалось для продажи в пул Uniswap YAM/yCRV, что привело к отправке большого количества избыточного YAM в резерв протокола», — разъяснили авторы проекта.

«Учитывая модуль управления YAM, эта ошибка сделает невозможным достижение кворума, а это означает, что никакие действия по управлению будут невозможны, и средства в казначействе будут заблокированы», — добавили они.

В YAM должна была действовать система управления смарт-контрактами, которая распределяет голоса на основе активов. «Ошибка в логике распределения привела к тому, что по контрактам было выпущено гораздо больше токенов, чем предполагалось», — объяснил Джеймс Прествич, основатель криптовалютного бизнеса Summa. — «Эти токены принадлежали самому контракту на управление и поэтому не могли голосовать. Поскольку они существуют и не могут голосовать, невозможно вообще обеспечить минимальное участие в голосовании. Это означает, что управление навсегда отключено, и все другие токены заблокированы навсегда».

Ошибка в коде заблокировала токены Curve (yCRV) на сумму около $750 000 в казначействе YAM. Эти активы были предназначены для использования в качестве резервной валюты для поддержания стоимости YAM.

При этом создатели настаивали, что ошибка не повлияла напрямую на балансы или активы в контрактах на размещение.

Но после того, как попытки восстановить контроль над казначейством YAM потерпели неудачу, соучредитель Брок Элмор принес в твиттере официальные извинения.


Стоимость токена, которая достигала $183,44, упала до $1,04. Еще за день до закрытия проекта, когда в обращении находилось около 29 млн токенов YAM, его рыночная капитализация составляла около $525 млн.

Теоретически, инвесторы в криптовалюту могли это предвидеть. В репозитории проекта на GitHub прямо указано, что аудит кода не проводился. «Соавторы приложили все усилия для обеспечения безопасности этих контрактов, но не дают никаких гарантий», — поясняет файл README.md проекта. — «Работа была проверена всего несколькими парами глаз. Это вероятность, а не просто возможность того, что есть ошибки». Связанный с проектом веб-сайт yam.finance также выдает всплывающее предупреждение при посещении.

Представители крипторынка считают, что ошибку обнаружили благодаря внешнему аудиту стандартными методами тестирования.

Несмотря на свой провал, YAM Finance намерена повторить попытку: «Мы создадим грант Gitcoin для координации финансируемого сообществом аудита контрактов YAM. «Если цель финансирования будет достигнута, по завершении аудита мы планируем поддержать запуск YAM 2.0 через контракт на миграцию из YAM».
См. также: