Майнинг: эволюция сложности — от домашней фермы до глобальных проектов. Часть 1 I Flashback
Хешрейт биткоина упал сразу на 32% из-за зимнего шторма в США, а кризис в индустрии майнинга обвалил цены на ASIC-устройства. Сегодня в рубрике Flashback — рассказ о майнинге из более спокойного 2017 года. Спикер: Матвей Сиворакша (СТО компании Acronym System, CEO проекта MadFish).
Майнинг в домашних условиях
Как вы занялись майнингом?
Еще в школе знакомый показал мне такую штуку: можно что-то считать на видеокарте. Я скачал приложение, начал считать и получил за это какие-то монетки. Тогда я еще не понимал, что это, и расценивал происходящее как странную, но интересную игру.
Однажды пришел отец и показал мне счета за электричество. После этого у меня отпало желание заниматься криптой. Но я сохранил ленту новостей криптоиндустрии и периодически ее читал. На первом курсе университета я случайно заметил, что на PayPal биткоин продается в два раза дороже его рыночной стоимости. Меня это заинтересовало, я решил вернуться: купил видеокарту, собрал с товарищем майнинг-ферму и с головой погрузился в индустрию. Это было не так давно, в 2014 году.
Майнинг в домашних условиях — это ужасно. Моя ферма (ее даже трудно назвать фермой) потребляла 2.2 кВт. Квартира находилась в хрущевке, проводка была соответствующая: я ее спалил дважды. Точно так же я спалил несколько видеокарт и материнскую плату. Я не умел распаивать блоки питания, поэтому несколько раз спалил и их.
Как риски майнинга в домашних условиях влияют на централизацию сети?
Первая проблема — майнингом начинают заниматься люди, обладающие большими финансами. Майнинг-отели или дата-центры концентрируют достаточно большое количество hash-power. Это одна из серьезных проблем централизации. Для оптимизации домашнего майнинга существует решение — люди объединяются и создают дата-центры с необходимым оборудованием. В погоне за чрезмерной прибылью произошел этап FPGA-решений, то есть программирования пользователем вентильных матриц. А после этого другие умельцы и люди с деньгами произвели специализированное устройство ASIC, которое не умеет ничего, кроме как считать определенную математическую или графическую функцию.
Вторая проблема существует на уровне пулов. Если вы домашний майнер, то вряд ли сможете заработать монеты «в соло» (самостоятельно). Вам придется подключаться к пулам совместного майнинга, в которых вы делитесь хешрейтом и пропорционально получаете выплаты. По факту, пулы контролируют от 10% до 30% хешрейта * в различных криптовалютных сетях (более актуальные данные и их анализ смотрите здесь — прим. ред.).
Двойная трата и защита от нее
Какова роль майнинга в защите от двойной траты?
Майнеры выступают людьми, которые верифицируют банки транзакций. В случае криптовалют майнеры верифицируют транзакции пользователя в криптовалютных экосистемах, защищают сети от двойных трат, от потерь данных, от воздействия со стороны. Мы, майнеры, защищаем механизм консенсуса, который был принят ранее, и не позволяем его произвольно менять. Майнинг должен быть связующей силой, которая занимается защитой правил.
В механизме Proof-of-Work есть одна уязвимость. Она называется «Атака 51%». Чтобы произвести двойную трату, майнер или злоумышленник должен накопить как минимум 50% мощностей. В погоне за прибылью майнеры постоянно наращивают хешрейты, поэтому на практике это считается невозможным.
Были случаи успешной двойной траты?
Вряд ли можно назвать форки двойной тратой, но мы можем рассматривать это как атаки на сеть. Примеры состоявшихся форков — это Bitcoin Cash и SegWit2x. Их можно назвать атаками на сеть, но нельзя назвать двойными тратами.
Форки можно условно разделить на доброкачественные и злокачественные. В буддизме каждая секта считается позитивным явлением, которое способствует общему развитию учения. Таким же позитивным явлением Bitcoin Gold стал для битка. Но Bitcoin Cash или SegWit2x претендуют на звание лидера, поэтому их можно определить только как злокачественные.
А вот любой форк, который не претендует на звание истинного биткоина, можно назвать качественным и хорошим, поскольку он несет новые технические улучшения, новые проекты, деньги и возможности.
PoW-майнинг
Какие виды PoW-майнинга существуют?
PoW-майнинги различаются методами хеширования — алгоритмом, который лежит в основе механизма консенсуса Proof-of-Work. В биткоине это SHA256, в лайткоине — Decrypt, в Dash — это X11. Каждое из этих названий несет смысловую нагрузку в виде определенных правил, формул и криптографии.
В чем отличия разных видов майнинга?
С точки зрения майнера, они отличаются разным оборудованием, которое способно их считать: какое-то более эффективно, какое-то менее эффективно. Алгоритм X11 в Dash разрабатывался, чтобы обеспечить энергоэффективный PoW-майнинг, то есть с меньшим потреблением энергии. С развитием ASIC-устройств и постоянной погоней за деньгами майнеры придумывают все более изощренные устройства.
Чем отличается CPU-майнинг от GPU-майнинга?
Изначально Сатоши Накамото задумывал, что майнинг биткоина будет проводиться на процессорах. Это была бы по-настоящему децентрализованная сеть, в которой каждый пользователь, имеющий любое вычислительное устройство, может достаточно эффективно участвовать в майнинге. Так и появился майнинг на процессоре.
Но майнинг влечет за собой экономическую выгоду, а майнеры хотят зарабатывать больше. Умельцы смогли адаптировать подсчеты под видеокарты, под GPU. Для повышения экономической эффективности были придуманы более интенсивные способы удешевить стоимость одного хеша. Сначала были FPGA-решения, потом появились ASIC-устройства. Непосредственно CPU-майнинг мало отличается от GPU, и зачастую большинство вещей, которые майнятся на процессорах, со временем начинают майниться на видеокартах.
ASIC-майнинг
Что такое ASIC-майнер?
ASIC-майнер — это специально оптимизированное устройство, выпущенное на заводе полупроводников, которое не умеет ничего, кроме как считать математические выражения. ASIC-устройства есть не только в индустрии майнинга, они умеют считать не только SHA256 и Decrypt. ASIC-устройства разрабатываются такими компаниями, как «Боинг», и широко используются для оптимизации повторяющихся вычислений.
Как разработать свой ASIC? И почему их так мало?
Вопрос уходит корнями в то, как работают разные индустрии. Если мы видим, что в разработке софта у нас появилась такая культура, как open source, то в разработке «железных» решений эта культура не так развита. Возможно, не развита вообще. Разработчик софта может самостоятельно обучаться дома, видеть множество исходников, множество чужих работ и участвовать в крупных проектах удаленно. Эта индустрия не монополизирована. «Железная» разработка более коммерциализированная и инсайдерская.
Человек, который хорошо разбирается в микроэлектронике, в разработке ASIC-чипов, сталкивается с множеством проблем на пути самостоятельного освоения этой сферы. Большинство знаний и процессов уже пройдены, но они хранятся в больших корпорациях и представляют собой коммерческую тайну. Если человек хочет их узнать, он не сможет сделать это самостоятельно.
Также нужно понимать, что эта индустрия, к сожалению, не получила столько хайпа и из-за этого имеет не так много специалистов. Реальные инновации по внедрению и производству новых решений во всем мире предлагают лишь несколько тысяч специалистов — их намного меньше, чем разработчиков софта.
* Подкаст записан в 2017 году.