Еще раз о майнинге подробно

Запись в блоге разместил пользователь bblizard, 6 мар 2014.

Bitcoin: основные принципы майнинга

[​IMG]
(источник)

Про Bitcoin (BTC) на Хабре писали много (в последнее время даже чересчур много). Как он работает, об интересе к нему со стороны правительства и спецслужб. Биткойн не раз пытались похоронить и затем откопать назад. Даже проводили экскурсии на страусинуюферму. Но как-то, глядя на это, не складывалось целостной картины.

Я постараюсь отчасти восполнить этот пробел и изложить в нескольких постах основные принципы и историю того, как добывались и добываются биткойны. Преимущественно внимание будет уделяться технологической стороне вопроса, а не громким скандалам в мире медиа и политики. Также, я постараюсь избежать повторения того, о чем уже писалось не раз.
В этот раз речь пойдет об общих принципах майнинга.
тут.

Bitcoin mining: «кто все эти люди?»

Для начала попробуем ответить на вопрос, а кто, собственно, занимается добычей биткоинов. Ниже перечислены основные категории людей, добывавших или добывающих биткоины, с учетом хронологии их появления на сцене.
1) Школьники и студенты, имеющие доступ к дешевому (или вовсе бесплатному) электричеству и hardware, за счет своих родителей и университетов.
2) Геймеры, использующие свои игровые ПК для добычи биткоинов в перерывах между компьютерными баталиями.
3) Гики, покупающие несколько ПК для майнинга, и которых обычно останавливает только исчерпание ресурсов электроснабжения/охлаждения/свободного места (ну или терпения родных и соседей)
4) Хакеры, развертывающие ботнеты и использующие для майнинга украденные вычислительные мощности.
5) Сообщества, организующиеся для совместной покупки оборудования и добычи биткоинов, с последующим разделением полученной выгоды.
6) Компании, которым удалось получить финансирование от энтузиастов, через аналог IPO на онлайн-биржах, ведущих торги за bitcoin. Такие компании разрабатывают специализированное hardware (ASIC) для последующей добычи bitcoin и распределяют дивиденды.
Как видно, довольно разношерстная компания.
Добыча Bitcoin

Суть добычи биткоинов сводится к решению некой сложной криптозадачи, для которой неизвестно лучшего подхода чем брутфорс.
Биткоины добываются не по одному, а «пачками», или блоками. Первоначально размер блока равнялся 50 BTC, но он уменьшается вдвое после каждых 210 тыс. добытых блоков. Сейчас добыто уже больше 250 тыс. блоков, а значит, один блок приносит 25 BTC. Новый блок добывается примерно каждые 10 минут. Из-за периодического уменьшения награды за блок вдвое, общее количество BTC никогда не превысит 21млн, ~55% всех BTC уже добыто и, по прогнозам, эта цифра достигнет 99% к 2032 году.
Периодически, через каждые 2016 добытых блоков, происходит корректировка сложности их добычи. Корректировка основывается на скорости добычи в последний период и нужна для сохранения среднего интервала добычи блоков у отметки в 10 минут.
Если количество компьютеров, занятых одновременной добычей биткоинов, в целом растет, то ежедневная награда (равная 24*6*25 = 3600 BTC) остается неизменной. А значит, на каждый компьютер приходится всё меньшая доля общего «пирога».
Добыча биткоинов имеет смысл только до тех пор, пока стоимость добытых BTC превосходит затраты на оборудование и электроэнергию. Т.к. сложность добычи BTC неуклонно увеличивается, да и курс USD/BTC подвержен колебаниям, наименее энергоэффективные средства добычи BTC постепенно исключаются из процесса. Хотя, резкий рост курса USD/BTC может сделать рентабельным их возвращение в строй.

(В этот раз совсем) немного истории

Bitcoin стал результатом развития идей, заложенных в существовавшие ранее криптовалюты. А впервые он появляется на сцене в ноябре 2008го, когда пользователь под псевдонимом Сатоши Накамото (Satoshi Nakamoto) публикует статью, описывающую систему новой валюты. Уже в январе 2009го система начинает функционировать, а её популярность сначала растет медленно, но вскоре переходит в экспоненциальный рост. Известен случай, когда один человек заплатил за пиццу 10тыс. BTC (несколько миллионов $ по нынешнему курсу). Накамото исчезает в апреле 2011, и его личность до сих пор остается загадкой.
Курс USD/BTC

[​IMG]
Рисунок 1. Динамика курса USD/BTC и сложности майнинга (источник данных)

На рисунке 1 показана динамика курса обмена USD/BTC с течением времени. Начиная с 2010го года курс резко пошел вверх. Если в июле 2010 1 BTC стоил $0.05, то к августу 2013 уже преодолел отметку $105. В этом интервале наблюдается два скачка – один в июне 2011го, когда биткоин стоил $31.5 и в апреле 2013го, когда курс подскочил до $266 (а сейчас и до $1000). Резкие скачки и обвалы курса чаще всего связаны с периодами пристального внимания СМИ и расцвета страхов/слухов об уязвимостях протокола или взломах организаций, отвечающих за обмен BTC на другие валюты. Подобные слухи каждый раз сопровождаются волной желающих продать биткоины и обвалом курса.
Основная причина, делающая BTC столь привлекательным для спекуляций – верхний предел на количество BTC, равный 21млн. Если когда-нибудь BTC всё-таки заменит золото как эталон для хранения сбережений, то, приравняв стоимость мирового золотого запаса к общей стоимости биткоинов, можно сказать что один BTC будет стоить $71000 – гораздо больше, чем сейчас (практически, на два порядка, даже с учетом последних спекуляций).
Сложность майнинга BTC

На рисунке 1 также показано как менялась сложность майнинга биткоинов с течением времени. За неполные 4 года сложность возросла в 50млн. раз. Если в начале сложность соответствовала 4-8 процессорным ядрам общего назначения, способным перебрать примерно 7 млн. хэшей в секунду (MH/s), то сейчас скорость совместных усилий по брутфорсу превосходит 7 петахэшей в секунду (PH/s).Такому росту способствовали 2 фактора. Первое – рост курса USD/BTC позволяет покрыть расходы на эксплуатацию большего количества оборудования для майнинга. Второе – за это время произошли значительные изменения как в программном, так и в аппаратном обеспечении для майнинга биткоинов. Опять-таки, точки падения сложности добычи BTC соответствуют местам обвала курса USD/BTC.

Инновации в hardware и software для майнинга

Прогресс шел невероятно быстро, изменения следовали одно за другим.
В сентябре 2010 появляется первый общедоступный CUDA miner. Уже в октябре 2010 за ним последовал первый майнер для OpenCL.
Практически сразу после этого, в ноябре 2010, возникло такое явление как pooled mining, когда группа компьютеров выполняет распределенный перебор хэшей, а, при добыче блока биткоинов, делит награду между участниками пропорционально их вкладу в общее дело. Подобные пулы очень быстро выросли до размера тысяч участников, позволив последним получать небольшие суммы каждый день, а не большие (50 или 25 BTC) каждые несколько месяцев.
На тот момент сложность добычи блока биткоинов равнялась примерно месяцу работы одного Hi-End GPU. Одной из ключевых инноваций, сделавшей возможным существование mining pool'ов, стала возможность убедиться, что компьютер действительно провел работу по перебору хэшей, которую он заявил как выполненную, и исключение возможности того, что пользователь «сбежит», когда его компьютеру в ходе перебора посчастливится наткнуться на ответ.
К сожалению, mining pools служат своего рода «концентраторами», что противоречит распределенной природе bitcoin и потенциально ставит под угрозу процесс подтверждения транзакций.
В июне 2011 появился первый open source miner для FPGA. А затем в январе 2013 появляется первый ASIC майнер и множество улучшений последовавших за этим. На графике сложности добычи BTC показаны даты появления этих технологий.

Вторая часть: http://bitalk.ru/entries/Еще-раз-о-майнинге-подробно-2.341/

Дополнительные материалы:

http://bitalk.ru/threads/Туториал-Как-устроен-майнинг.113/
http://bitalk.ru/threads/Гид-по-биткойну-Майнинг.273/

Обсуждение: http://bitalk.ru/threads/Описание-Майнинг.602/

Источник: http://habrahabr.ru/company/intel/blog/205524/
bblizard

Об авторе

http://bit.ly/2bfV8DH Это хайп через telegram, 3% в день, мин.10$, +18k человек, ввод/вывод в том числе и в битках:)