Профессор Корнелльского университета Эмин Гюн Сирер (Emin Gün Sirer) выступил с резкой критикой проекта Bancor, собравшего рекордную сумму в ходе ICO. В развернутой статье, написанной совместно с Филом Дайаном (Phil Daian), он утверждает, протокол автоматизированной торговли токенами Эфириума ERC20 содержит фундаментальные ошибки на базовом уровне, а его реализация принесет участникам убытки и истощит резервы. Год назад эти же авторы вместе с Владом Замфиром (Vlad Zamfir) первыми указали на возможные уязвимости в коде TheDAO, которые впоследствии привели к взлому и последующему расколу в экосистеме Эфириума.
Bancor представляет собой схему, которая должна обеспечить ликвидность цифровых активов с помощью смарт-контракта. В ее основе лежит открытый алгоритм, который находит соответствие между спросом и предложением на различные альткойны и производит мгновенный обмен одних токенов на другие. Другими словами, это смарт-контракт автоматизированной криптовалютной биржи в реальном времени и без человеческого участия.
Авторы критической статьи подчеркивают, что в первую очередь они критикуют идею, лежащую в основе контракта, а не уязвимость в стиле TheDAO, хотя и обозначают некоторые проблемы кода, в которых могут содержаться уязвимости.
Выводы авторов: майнеры могут использовать Bancor для извлечения дохода за счет добросовестных участников; даже если предположить, что майнеры добросовестны или наивны, протокол будет всегда следовать за реальным рынком. Протокол не обеспечивает должную эффективность при определении цены токенов, и с большой вероятностью будет напрасно расходовать резервы при определении цен.
Гюн Сирер категорически не рекомендует использовать Bancor для обмена токенов. Учитывая его репутацию, это более чем серьезное предупреждение.
Объекты критики
Всего статья содержит 29 критических замечаний. Авторы указывают на ненужное усложнение терминологии: так, общепринятый экономический термин «двойное совпадение желаний» подменяется загадочной фразой «асинхронное определение стоимости», заимствующей термин «асинхронный» из распределенных систем, а «определение стоимости» из экономики. Такими фразами засорена вся Белая Книга проекта. Однако, это наименьшая из проблем. Далее, авторы указывают, что никакой функциональной необходимости в создании токенов BNT нет – их функции вполне может выполнять ETH.
Еще хуже дело обстоит со стратегией. Bancor выполняет функцию Центрального банка – он устанавливает цену покупки и продажи токена, опираясь на резервы.
Протокол Bancor устанавливает цены токенов следуя за рынком (т. е., позади) – он не определяет равновесие спроса и предложения. Следствие этого – расходование резервов.
Далее, Bancor работает как динамически регулируемая привязка к определенной криптовалюте. Здесь можно вспомнить Джорджа Сороса, опустошившего резервы Банка Англии, просто потому, что стратегия банка была известна заранее. В случае экосистемы Эфириума, вся информация открыта и доступна в блокчейне.
Bancor открыт для достаточно простых атак: как только майнер видит ордер на покупку через Bancor, он может поместить свой собственный ордер перед пользователем, и получить от маркетмейкера Bancor более выгодный курс. В статье перечисляются и другие возможности, позволяющие майнерам получать преимущество.
По поводу математики, задействованной в коде: по данным авторов, код неэффективен: в процессе написания статьи было найдено множество ошибок, включая неправильное вычисление констант, используемых в формулах.
В статье указаны возможные уязвимости кода, которые потенциально могут быть использованы злоумышленниками (при этом оговаривается, что специального аудита кода авторы не проводили). И наконец, код Bancor по умолчанию считает все токены стандарта ERC20 доброкачественными, хотя они могут содержать код злоумышленника.
Вердикт
Код Bancor неэффективен на базовом уровне, даже если считать майнеров добропорядочными и не учитывать возможных хакеров.
Bancor пытается дать Эфириуму то, что ему крайне необходимо. Это лишь первый шаг и это шаг в неправильном направлении. Тем не менее, учитывая гигантскую сумму собранных средств, можно ожидать от основателей проекта, что они примут во внимание мнение Гюн Сирера и приступят к переделке проекта. Люди начинают искать способы перевести в код функции ФРС и перенести их на блокчейн. Правда, с таким кодом, как у Bancor, председатель Федерального Резерва США Дженет Йеллен пока может не бояться потерять работу.