До последнего времени у меня не было своего мнения относительно провала The DAO. Что правильнее: софт форк, хард форк, ничего не делать? Мой предварительный вывод: лучшее решение – не делать ничего. Объясню почему.
Давайте обратимся к фактам. Эфириум и The DAO – две совершенно разные вещи. Эфириум представляет собой базовый компьютерный протокол с собственным блокчейном. Его единственное назначение – обеспечить надежное выполнение кода во всемирной компьютерной сети.
The DAO – одна из первых программ для выполнения в сети Эфириум. «ДАО» означает Децентрализованная Автономная Организация – новый тип компании. Она работает автономно, управляемая программным кодом.
Это ключевой момент: The DAO – компания. Компания без персонала. The DAO не существует вне программного кода. Компания и есть код. Инвесторы могут финансировать компанию, вкладывая в нее деньги.
The DAO не подвергалась хакерской атаке. Она просто исполняла свой собственный код, и в процессе этого исполнения пришла к банкротству. Просто бизнес-модель оказалась некудышней. Катастрофа? Только с точки зрения инвесторов The DAO. С технической точки зрения The DAO сработала безупречно.
Mt. Gox 2.0
Банкротство The DAO очень похоже на банкротство Mt.Gox. Биткойн-сообщество хорошо помнит как СМИ описывали банкротство Mt.Gox. Заголовки кричали «Биткойн – банкрот!», или «Хакеры атаковали Биткойн!». И то и другое было неверным. С Биткойном все было в полном порядке. Mt.Gox была компанией, работающей «вне» основного протокола Биткойна.
Люди доверяли Mt.Gox как компании, и к несчастью, она обанкротилась. Участники потеряли солидные суммы. Это, конечно же, очень печально, но та катастрофа стала хорошим уроком. Он пошел впрок.
То же самое происходит с The DAO. Вкладчики доверяли компании не вникая в детали. Они инвестировали деньги в компанию, а она обанкротилась, хотя лежащая в ее основе платформа Эфириума не имела никакого отношения к катастрофе. Да, создатели The DAO внесли в его код не продуманную как следует функциональность, которая в итоге позволяла вывести средства инвесторов через рекурсивный сплит. При чем тут Эфириум?
Поэтому я считаю идею хардфорка неприемлемой для сообщества Эфириума. Да и софтфорка тоже.
Деньги потеряны, это факт, но не из-за технических проблем с Эфириумом. В свое время люди потеряли много денег на банкротстве Mt.Gox (как и на взломах других компаний биткойн-экосистемы), однако хардфорк Биткойна «для спасения инвесторов» был признан принципиально неприемлемым. Более того, по сути он даже всерьез не обсуждался — разница между базовой платформой и периферией была для всех очевидной.
В этой истории со «спасением The DAO» неприятно поражает явный конфликт интересов. Тот факт, что разработчики Эфириума инвестировали деньги в The DAO, и теперь, по сути, защищают свои шкурные интересы. Вообразите, что Биткойн-компания обанкротилась, а разработчики планируют хардфорк, чтобы вернуть деньги – ведь они сами вложились в эту компанию! Код был правильный, все работало как должно работать, но они прогорели и теперь хотят все «переиграть». Разве разумно в таких случаях проводить хардфорк? Это очень опасный прецедент.
Новая Атака 51%
Тем не менее, окончательное решение о форке Эфириума остается не за разработчиками, а за майнерами. Вроде бы, это очень неплохо. Демократия в действии, глас народа — глас божий, все такое. Однако, есть одна проблемка. Ведь, по сути, мы наблюдаем новый тип атаки на блокчейн-технологию – демократическую атаку 51%.
Люди, предлагающие «хардфорк для спасения The DAO», не обсуждают устранение какой-либо технической ошибки. Они обсуждают возможность «восстановления справедливости» — возврата средств, потерянных инвесторами обанкротившегося бизнеса. Люди инвестировали в компанию, не просчитав толком риски. Компания обанкротилась, и теперь они хотят силой забрать свои деньги из блокчейна.
Снова опасный прецедент. Он демократичный, но разве демократия («власть большинства над меньшинством») — это всегда правильно? Сегодня, голосованием большинства, произойдет перераспределение средств в пользу инвесторов The DAO. Что именно окажется, по мнению большинства, несправедливым завтра или послезавтра?
Libertarians should stick to Bitcoin. The Ethereum community does not share your ideological extremism. We have judgment and mercy.
— Aliensyntax (@N173553719) June 18, 2016
Все, кому небезразличны идеологические основы биткойна, должны держаться от Эфириума подальше. Они сами так считают. https://t.co/8cHWPIXLHf
— BitNovosti.com⚡️ (@bit_novosti) June 19, 2016
Ошибка биржи против банкротства компании
Предположим, вы открыли счет на фондовой бирже и положили на него $1000. Представьте себе два сценария:
-
На бирже произошел сбой, и вы потеряли деньги.
- В компании, акции которой вы купили, произошел технический сбой, компания из-за этого обанкротилась, вы потеряли свои деньги.
В первом варианте разумно предположить, что биржа найдет решение – то есть, они сделают «хардфорк» своего софта, и ситуация будет возвращена на то положение, которое предшествовало сбою.
Во втором варианте вряд ли фондовая биржа будет решать ваши проблемы. Сомнительно, что она переложит ваши риски на плечи других и сможет представить все так, что вы как бы и не покупали акции обанкротившейся компании.
Биржа отвечает за свои ошибки. Эфириум отвечает за технические сбои на своей стороне. Технического сбоя не было. Почему кто-то должен изменять код, чтобы исправить неверные решения своих клиентов?
Контракты, коды, стук в дверь
Еще одна аналогия провала The DAO.
Предположим, вы по своей воле подписываете контракт. В нем, в частности, написано: «Каждый раз, когда ваш сосед стучит в вашу дверь, $5 с вашего счета в банке автоматически отправляются на его счет».
Вроде бы, все хорошо, до тех пор, пока сосед не постучал к вам в дверь. Утром вы просыпаетесь, а ваш банковский счет пуст. Кто виноват? Ваш сосед украл деньги? Это он хакер?
Насколько я понимаю, именно это сейчас и случилось с The DAO. Код компании предусматривал вознаграждение за сплиттинг, некто проводил процесс сплиттинга, пока счет не опустел. Это плохая бизнес-модель, что и показало данное банкротство.
Проводить форк Эфириума, чтобы внести в глобальный черный список адрес этой неизвестной личности? И даже вырезать часть блокчейна, переписать историю, чтобы забрать у него деньги? Мне не кажется это разумным. Я вовсе не говорю, что этот тип морально чист. Однако с точки зрения автономных организаций и смарт контрактов, использование функциональности опубликованного в блокчейне кода никак нельзя считать криминалом.
A 'World Computer' that normally runs one way but another way if @VitalikButerin doesn't like the outcome? Who in sane mind would use THAT?
— BitNovosti.com⚡️ (@bit_novosti) June 19, 2016
С другой стороны
Я не хочу сказать, что все так просто, нет. Крупные ошибки должны исправляться всем сообществом, особенно с учетом новизны технологии. Конечно, это опасный прецедент, но все же, масштаб Эфириума еще крайне мал. Хардфорк из-за неудачного контракта станет абсолютно неприемлемым в будущем, но, возможно, прямо сейчас он не так подорвет доверие к платформе и не сильно повредит сообществу. Я не поддерживаю хардфорк, но возможно он не окажется смертным приговором для Эфириума.
Честно говоря, было бы намного проще, если бы баг оказался в самом коде платформы Эфириума, но увы, это не тот случай.
Надеюсь, что несколько уроков будут извлечены из происшедшего. Во-первых, инвестировать крупные суммы денег в настолько экспериментальный проект – исключительно плохая идея. Во-вторых, если все-таки сообщество Эфириума решит вернуть свои деньги посредством хардфорка, я надеюсь, они твердо определят, что такое событие останется единственным в истории. От этого зависит доверие ко всему проекту.
Вот только, когда прецедент уже создан, удастся ли удержаться от его повторения в следующем случае, когда «невинные инвесторы» вновь будут трогательно взывать о помощи?
Источник: http://steve-patterson.com/dao-not-hacked-mt-gox-ethereum/
Просто они оказались не компетентными ребятами)
Друзья, что такое сплиттинг?
Вкратце здесь:https://bitnovosti.com/2016/06/18/the-dao-mozhet-stat-schemoi-ponzi/
Да. Это самый фейл. Сейчас говорят о консенсусе, демократии и честном решении. Но такие вопросы просто не должны рассматриваться не рабочей системе. Все подобные меры должны быть заранее оговорены, а решаться по ходу движения не должны. Ни хоть одним человеком, ни толпой. Иначе это уже не программная система, а политическая.
Кроме того, сколько бы не находили причин для такого хард-форка, но это факт самой настоящей цензуры. Толпа решила что воровать плохо и приняла решение вмешаться. Потом толпа решит что свободная торговая площадка – это плохо, потому что там продают запрещенные товары. Возникнет угроза существованию Ethereum Foundation под давлением властей, и что тогда? Снова хард-форк?
Таким образом получается, что слова uncensored, unstophable на главной странице проекта вводят в заблуждение. По сути просто являются лживой рекламой. И даже decentralized. В привычном всем интернете нет глобальной цензуры для всех пользователей, черный список роскомнадзора не действует в других странах. А в такой только зарождающейся системе она уже есть. Нужен ли такой Web 3.0, где действия одних участников ставят на колени всю сеть.
Крайне разозлило так же, что в первые часы атаки уже поспешили заявить: мы всё исправим. Мне уже тогда стало ясно «как» собираются исправить, уже после прочитал пост Виталика. Туаль там уже строчил самоуверенные посты в твиттере. Решение принято, толпу мы уговорим.
Отличная статья! Благодарю за перевод!!
Пример с кирпичным заводом крайне глуп. А вот с соседом постучавшим в дверь аккурат в тему. В контракте было написано кто постучит тот получит. Просо не оговаривалось количество раз, которое можно постучать. Хакер постучался от души 🙂
Речь в примере не о работе контракта, а о том как поступить Виталику. Не будем путать теплое с мягким. ))
Энтони Dи Иорио, один из разработчиков Эфириума призвал В. Бутерина максимально дистанцироваться от проблем сторонних компаний/контрактов/приложений, и заниматься протоколом, масштабированием и т п. Эмин Гюн Сайер, тоже страшно ругает SlockIt за ничегонеделание и адские крики «Помогите!». Однако оба сходятся на том, что софт форк — не самое страшное, пусть будет. Про хардфорк разговора пока нет.
Автор статьи здраво рассуждает что решения которое удовлетворит всех в настоящий момент нет. Каждое из возможных будет нести какой-то дискомфорт для части инвесторов.
нужно выкупить у хакера счет, тогда никто не пострадает
Не получится, на данный момент произошла уже куча повторных атак, и даже запущен сервис «Укради из ДАО сам»: https://bitnovosti.com/lenta/comment-page-135/#comment-119753
Последние новости…
http://getcoin.today/halerskaya-ataka-na-dao-prodemonstrirovala-bresh-v-solidity/
Solidity это не изъян Ethereum. Ethereum работает на OP_СODEs, так же как и биткоин, код на Solidity компилируется в OP_CODE script. А сам компилятор вообще внешняя сущность. Это как язык программирования и процессор компьютера: процессор не отвечает за баги компилятора. Да Solidity ещё очень сырой, он был совсем недавно разработан с нуля. Но это не значит что им нельзя пользоваться. Можно было покрыть тестами, пожно было изучить полученный ассемблерный код. Можно было в конце-концов не собирать столько денег на счету одного контракта и придумать лучший модульный дизайн.
Это полный бред. Ложь.
Не хочу вообще иметь дела с системой, где толпу к принятию решений склоняют вводом в заблуждение, убеждениями и авторитетами.
Где жить тогда?
Внимание вопрос!Как бы вы рассуждали,окажись лично на месте людей попавших на деньги.Не на сто долларов а на десятки,сотни тысяч.Вас бы волновала «юридическая позиция» хакера?Более правильней было бы этому хакеру когда он обнаружил такую возможность,договорится с создателями за разумное вознаграждение.Вся эта идеология биткойна, полная лажа и лицемерие.Ожидание вложить сто долларов и поднять через год 10 000,вот и вся идеология большинства.
Именно поэтому, отдавать решения о переписывании истории транзакций на волю большинства — глупейшая идея. Это полностью перечеркивает саму идею блокчейна как «машины доверия» (https://bitnovosti.com/2015/10/31/economist-bitcoin-blockchain-trust-machine/)
Вот тут интересно написано: http://qz.com/713078/the-developers-behind-ethereum-are-hacking-the-hacker-that-hacked-it/
Теперь разработчики эфира сами стали хакать свою систему. Короче, эфир — классическая финансовая пирамида.
Конечно я бы руководствовался только эгоистичными побуждениями вернуть деньги, я бы из кожи вон лез, чтобы сделать это. А на весь остальной мир, на идею и на будущее Ethereum мне было бы насрать.
Зачем тогда создавать сырой продукт, чтобы при первых же проблемах срать на весь мир, забывая о сути?
Поддерживаю мысли…
Мэттью Споук: атака TheDAO положительно повлияет на экосистему Эфириума
[https://cryptoscope.blogspot.com/2016/06/thedao.html]
Не согласен я с Мэттью! Если все откатить и сделать «как было» никакие уроки извлечены не будут! В истории останется только то, что есть Центральный орган который все исправит случись чего еще… А это ведет к известному мультфильму про тяп-ляп «и так сойдет!»…
В свете сравнения The DAO с Mt.Gox, почему-то вспомнилось, что перед ICO, полный аудит кода The DAO провела компания с говорящим названием «Deja Vu Security».
По моему все правильно сказано! 100% поддерживаю автора!
Мне очень понравился пример одного участника на форуме битс.медиа! Предположим Вы владелец кирпичного завода, у вас купили кирпичи и построили дом. В дом залезли грабители и все вынесли. Разве Вы как владелец завода должны возвращать пропавшее!
Ситуация еще печальнее. Владелец завода сам хранил в том доме свои доходы, и теперь требует у других покупателей кирпичей, скинуться дабы возместить убытки.
А вот и перевод интервью с «хакером» если это кому-то интересно (один из членов русскоязычного DASH-комьюнити перевёл, не знаю насколько точно):
https://www.dash.org/forum/threads/ethereum.5932/page-7#post-97282
«Хакер the DAO» озвучил свою юридическую позицию:
https://bitnovosti.com/lenta/comment-page-135/#comment-119581
Вообще мне это напоминает такую историю — продхожу я к банкомату и снимаю 10к рублей, а банкомат мне выдает 100к — Спасибо от Сбербанка ???? и когда представители банка мне позвонят и скажут что это ошибка — я должен сказать , что нет — это вы меня татк по благадарили за использование вашего сервиса ????
Не, пример с банкоматом не подходит. Люди, отдавая свои деньги в Сбербанк не знают как работает их банкомат и его программное обеспечение. Поэтому они не могут решить на сколько это безопасно. Умный контракт The DAO находиться в открытом доступе, и каждый переводя туда деньги, может оценить (если лень или не умеешь, то сам дурак) насколько это безопасно. Смысл в том что контракт работает абсолютно детерминировано (однозначно) и ответственность падает на тебя лично.