На шифре. Инсайдерская история криптовалютного бума - Лора Шин Страница 42
- Категория: Научные и научно-популярные книги / Деловая литература
- Автор: Лора Шин
- Страниц: 117
- Добавлено: 2024-05-25 07:16:59
На шифре. Инсайдерская история криптовалютного бума - Лора Шин краткое содержание
Прочтите описание перед тем, как прочитать онлайн книгу «На шифре. Инсайдерская история криптовалютного бума - Лора Шин» бесплатно полную версию:В 2013 году Ethereum был всего лишь фантазией девятнадцатилетнего студента Виталика Бутерина, который жил в комнатке, похожей на тюремную камеру, и писал статьи для журнала Bitcoin Magazine. Сегодня это экосистема стоимостью 240 миллиардов долларов, ставшая основой всех крупных блокчейн-трендов. Если биткойн – золото криптовалютного мира, то Ethereum – его нефть.
Лора Шин, журналистка и писательница, ведущая подкаста о криптовалюте Unchained рассказывает о бурных годах становления платформы Ethereum (2014-2018), когда «крипта» из увлечения узкой группки энтузиастов превратилась во всеобщее поветрие и навсегда изменила мировую финансовую систему. «На шифре» – документальный технологический триллер, в котором разработчики, инвесторы, IT-воротилы и хакеры борются за деньги и власть, ошибка в коде становится поводом для драмы шекспировского размаха, а утопические мечты могут как сломать кому-то жизнь, так и обернуться невероятным успехом.
В формате PDF A4 сохранен издательский макет книги.
На шифре. Инсайдерская история криптовалютного бума - Лора Шин читать онлайн бесплатно
Кое-кто предостерегал остальных:
Смотрите шире: мы видим хреновый смарт-контракт и беспечных инвесторов. Они сами рисковали, инвестируя в него без юридической экспертизы. Не рискуйте из-за них репутацией Ethereum как независимой децентрализованной платформы, принимая такие поспешные решения, как хардфорки или откаты. Этим вы создадите очень опасный прецедент и дадите политическим органам повод вмешиваться в будущем, когда им захочется!
Один из руководителей биржи Bitfinex, Филип Поттер, выразился так:
это проблема DAO, а не ETH
Дино настаивал, что откат Биткойна в 2013 году и так создал прецедент. Фил спросил: «Если вы кинете биржи, выживет ли ETH?» Дино ответил «да» и снова попросил биржи остановить торговлю.
«В жопу этот койн», – написал Фил.
Дино настаивал, что Ethereum не оправится, если допустить атаку на The DAO и хакер продаст на биржах миллионы ETH. «Стоимость упадет до 0,50 доллара, – написал он. – Рассуждайте здраво. Непоправимая пиар-катастрофа».
Но, как заявил Тристан Д’Агоста из Poloniex: «Скорее, паника на рынке начнется, если блокчейн сочтут ненадежным».
К тому же, как писал Фил, «если какое-нибудь правительство поймет, что в потенциале может принудить DAO „без лидеров“ (или ETH, если на то пошло) к откату, это чревато последствиями, я тебе гарантирую».
Между тем команда Slock.it и другие разработчики, сидя в чатах, быстро поняли суть атаки. Еще 5 июня Кристиан Райтвисснер – разработчик, которого Гэвин отказывался признавать создателем Solidity, – послал электронные письма ключевым девелоперам с предупреждением о баге, использующем разницу смарт-контрактов с обычными финансовыми транзакциями. Если получить деньги у кассира или в банкомате в реальности, ваш баланс обновится после того, как вы их получите на руки. Но смарт-контракт меняет баланс в первую очередь. Иначе вредоносный смарт-контракт может заставить его начать процесс снова – на стадии снятия денег, до обновления баланса. Именно так и поступил напавший на The DAO. Это как подойти в банке к кассиру с амнезией, где у вас открыт счет на 259 долларов, снять 258 долларов, отвлечь его раньше, чем он обновит баланс на счете до 1 доллара, и попросить снять 258 снова, и снова, и снова, и снова (только в этом случае нападавший получал по 258 ETH).
9 июня Питер Вессенс, соучредитель Bitcoin Foundation, написал пост в блоге, назвав это «ужасной, ужасной атакой», а на следующий день сам Кристиан написал о принципе атаки.
Slock.it обнаружили уязвимость The DAO в функции, позволяющей людям выполнять предложения. Они нашли решение проблемы – теперь только оставалось, чтобы за него проголосовало большинство держателей. Еще член форума на DAOhub нашел в структуре The DAO баг под названием «контракт вознаграждения». Но на этом контракте деньги не хранятся, и 12 июня Стефан написал в блоге: «Фондам DAO ничего не грозит после обнаружения бага с „рекурсивным вызовом“ в смарт-контрактах Ethereum». Он уточнял: «Важный вывод: поскольку в аккаунте вознаграждений The DAO эфира нет, это НЕ является проблемой, ставящей фонды DAO под удар». Не встревожился даже Виталик. За день до этого он твитнул: «Я покупаю токены DAO с тех пор, как вышли новости об их безопасности».
Контракт вознаграждения был в The DAO потенциальной брешью, поскольку с ним мог взаимодействовать смарт-контракт, написанный неизвестными лицами. Проще говоря, если The DAO вкладывается во что-то прибыльное, прибыль от вклада поступает в контракт вознаграждения, чтобы она могла пропорционально выплачиваться всем вкладчикам по принципу дивидендов. Кристоф решил, что если кто-то уходит из The DAO, создавая дочернюю DAO, то у него должно остаться право на будущие вознаграждения от своих вкладов. Чтобы выполнить это обещание, The DAO просит человека назвать внешний адрес или контракт, куда переводить вознаграждения. (В Ethereum аккаунты могут принадлежать как людям, так и контрактам, и если послать транзакцию на аккаунт контракта, подключается его код – это как делать выбор в торговом автомате, выдающем в ответ товар.) Кристоф не был обязан предоставлять будущие вознаграждения тем, кто уходит из The DAO, но великодушно принял это решение и при этом оставил в коде коммент: «Будем хорошими, пусть получают вознаграждения». (В зависимости от того, как считать строчки кода, комментарий находился на 667 строке – или же на 666-й.)
Но, может, Кристоф и был хорошим, зато хакер – нет. Хакер знал, что функция splitDAO состоит из четырех шагов (происходящих за один сеанс): 1) уходящий из The DAO создает дочернюю DAO и направляет туда токены, которые сгорают; 2) главная DAO высылает в новую DAO эфир; 3) главная DAO шлет вознаграждение (на аккаунт, указанный держателем токенов); и 4) контракт обновляет баланс уходящего. У хакера был обычный адрес, но вредоносный контракт. Он сигнализировал: «Эй, я хочу вывести свои токены из The DAO», – а потом выслал туда свои 25 805 токенов DAO, чтобы начать вывод 258 ETH.
На втором шаге – на вопрос, куда слать деньги, – нападавший дал ответ. Еще 8 июня в 7:38 по берлинскому времени кто-то (позже определили, что это был держатель токенов DAO из Китая) создал дочернюю DAO (№ 59) под названием
lonely[15]
so lonely
14 июня китайский держатель токенов вложил 305 тысяч токенов через Kraken, а все оставшиеся токены – 306 914 – через Poloniex. Теперь дочерняя DAO 59 опустела.
В пятницу 17 июня 2016 года, в 5:34 по берлинскому времени, нападавший приступил к рекурсивному вызову, запрашивая вывод в свою дочернюю DAO 59. На третьем шаге, когда The DAO спросила, куда переводить вознаграждение, хакер предоставил аккаунт Ethereum своего вредоносного контракта. Контракт вознаграждения запинговал этот контракт, запрограммированный так, чтобы, получая пинг, каждый раз начинать процесс заново со второго шага – когда The DAO отправляет деньги в дочернюю DAO. И он повторял так раз за разом, переводя эфиры и не позволяя The DAO дойти до четвертого шага, когда баланс обновляется и больше средства не выводятся. В данном случае хакер занимался этим уже несколько часов, получая по 258,056565 ETH за раз. (Курс
Жалоба
Напишите нам, и мы в срочном порядке примем меры.