Проект криптовалюты под названием 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».
См. также:
osmanpasha
НО ПОЧЕМУ??! Почему они не протестировали финансовый софт?! О чем они вообще думали?
devopg
ты какой год в крипте? явно 1 день )
janvarev
Вы не рефлексируйте, вы инвестируйте :)
Format-X22
Потому что обычно там проекты делают не для того чтобы людям сервис предоставить, а для того чтобы денег собрать. Деньги собрали.
osmanpasha
А собрали? Курс же рухнул, фантики ничего не стоят. Или создатели свое получили?
edogs
Перед тем как рухнуть — курс вырос.
Никто не мешал им распродать свое по 180 баксов.
А потом уже можно и ошибку найти.
И типа никто не виноват.
NIKOSV
Так не работает. На таких мизерных объемах, при малейшей попытке распродать хоть какие-либо значимые активы, курс пошел бы сильно ниже $180. Да и это же блокчейн, все транзакции на виду, аудитировать их и связать з владельцами проекта не составит большего труда.
Вот где развод так это всякого рода ICO, когда за вполне реальную, устоявшуюся и подкремпленную валюту из топ 10, тебе впаривали токены еще несущетсвующего проекта c «огромным будущем». 99% проектов, конечно же, свет так и не увидели и те ERC-20 токены ничего не стоят. Владельцы же при этом, собирали по несколько лямов в вполне реальных биткоинах и эфирах, выходили в кеш и ни о чем теперь не паряться.
Но это не тот случай, тут больше на DAO похоже.
nikolayv81
Так курс он откуда? Кто-то что-то продал? :)
tvr
Но что-то пошло не по плану.
inferrna
Количество бабла, которое рубят создатели новоприбывшей криптовалюты, зависит не от качества кода, а от качества раскрутки. В таких условиях затраты на тестирование и аудит — пустая трата денег.
nikolayv81
По моему не просто пустая, а вредная, т.к. вероятность "посадок" за ошибку в коде сильно меньше чем за простой и понятный слив проекта после обкешивания
pae174
Сдаётся мне, что это те самые ребята, которые периодически заходят на фриланс.ру и просят там разработать новую крипту — как биток, но что бы лучше, чем биток. Цена проекта у них там 2 рубля — это всё, что осталось у мамкиных финансистов после месячной экономии на школьных обедах.
algotrader2013
Надо просто не на 2 рубля, а на долю договариваться;)
pae174
Иногда на собес заходят перцы у которых в резюме написано что-то типа «сооснователь перспективного криптовалютного проекта». Наверное это те самые, которые вместо двух рублей получили свою долю.
algotrader2013
или те, кто ее дали…
v1000
В коде не будет ошибок, если его не проверять на ошибки. Но это не значит, что он будет правильно работать.
capslocky
Когда лень писать юнит-тесты.
tendium
Опять нас кормят невычитанным гугл-транслейтом:
По конструкции фразы сразу видно, что это некачественная калька. Во-первых, кто так скажет: "никакие действия по управлению будут невозможны"? Во-вторых, какое такое казначейство?
Безусловно, гугл-транслейт это удобный инструмент, и при правильном использовании он может сильно упростить работу переводчика. Но ведь надо же вычитывать текст...
v1000
Тэги: Гугл-транслейт
NIKOSV
Вообще, гиков послушать, все так топят за опен соурс, называют 100500 преимуществ среди лидеров которых это то что любой желающий может проверить код на наличие багов, дыр и бэкдоров, а значит он безопасен. А по факту, как оказалось, всем насрать, никто код не читает, даже среди гиков, все надеются что кто-то другой проревьювит и в случае чего раструбит о найденных проблемах, а раз никто еще не сообщил, значит проблем нет.
И ведь не первый раз такое.
DaemonGloom
По факту не читают код странных проектов, которые даже ещё не запустились. В активных опенсорс проектах жизнь есть вполне.