Выпуск новых биткойнов децентрализован, не зависит от какого-либо регулирующего органа, объём эмиссии известен заранее (см. график количества биткойнов до 2033 года). Стандартная порция новых биткойнов прибавляется к сумме комиссий из транзакций, включённых в очередной блок. Итоговую сумму в качестве вознаграждения получает тот, кто добавил очередной блок в базу транзакций.

bitcoin_miningДеятельность по созданию новых блоков ради возможности получить вознаграждение в форме эмитированных биткойнов и комиссионных сборов получила название «майнинг» (от англ. mining — добыча полезных ископаемых).

В первых версиях программы-клиента была кнопка «сгенерировать новые биткойны». Для поиска хеша заголовка нового блока использовался центральный процессор компьютера. Вероятность успешного создания блока майнером приблизительно равна отношению его вычислительной мощности к вычислительной мощности всей сети, и если это отношение очень мало, то вероятность получения награды даже за длительный промежуток времени будет незначительной. Желающие увеличить вероятность получения вознаграждения стремятся задействовать как можно большие вычислительные мощности. Особенность задачи перебора хешей позволяла применить максимальное распараллеливание вычислений. Для этого хорошо подошли многопоточные графические процессоры (GPU) после появления небольшой дополнительной программы (в сотни раз производительнее CPU) и платы с FPGA (производительность аналогична видеокартам, но превосходят их по энергоэффективности). После этого майнинг при помощи центрального процессора оказался нецелесообразным из-за слишком малой вероятности получить вознаграждение, и кнопку в программе-клиенте убрали. Позднее были выпущены специализированные процессоры (ASIC), ориентированные на вычисление хешей для сети «Биткойн», более производительные, чем GPU и FPGA. С 2013 года майнинг без специализированных процессоров (на видеокартах или центральном процессоре) стал нерентабельным: стоимость потребляемой электроэнергии превысила средний результат.


С 2013 года появляются репортажи о «фабриках биткойнов» — специализированных безлюдных предприятиях, на которых «трудятся» тысячи ASIC-процессоров. Месячный доход фабрики может превышать миллион долларов (несколько тысяч биткойнов). В начале 2015 года, даже если предположить, что все майнеры используют наиболее энергоэффективные процессоры ASIC, суммарный расход электроэнергии на майнинг оценивался в 1,46 тераватт-часов в год, что эквивалентно годовому потреблению 135 000 американских домов (средний уровень порядка 160 МВт).

После формирования каждых 210 000 блоков (приблизительно раз в 4 года) запрограммировано размер вознаграждения новыми биткойнами уменьшать вдвое, то есть это значение является убывающей геометрической прогрессией (размер вознаграждения 50 → 25 → 12,5 → …). Общий объём эмиссии биткойнов ограничен, так как является суммой членов убывающей геометрической прогрессии, и не превысит 21 миллион. На май 2014 года в обращении находилось 12,7 миллионов биткойнов.

Первоначально размер эмиссии при создании блока составлял 50 биткойнов. 28 ноября 2012 года произошло первое уменьшение эмиссионной награды с 50 до 25 биткойнов. 9 июля 2016 года произошло второе уменьшение эмиссионной награды с 25 до 12,5 биткойнов. В 2031 году размер эмиссии при создании блока составит менее одного биткойна и продолжит стремиться к нулю. Предполагается, что эмиссия остановится в 2140 году, поскольку награда за блок не сможет превышать 10−8 BTC, однако задолго до этого постепенно основным источником вознаграждения за формирования новых блоков станут комиссионные сборы.

Пулы

Для уменьшения случайности и более равномерного получения биткойнов майнеры используют специализированные веб-службы — пулы (от англ pool — общий фонд). Каждый участник ищет свой вариант блока и полученные результаты направляет пулу.

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

По состоянию на 2016 год большинство крупных пулов находятся в КНР: по состоянию на март 2016 года более половины мощности сети разделена между тремя крупными китайскими пулами, четвёртое место занимает пул компании BitFury — одного из первых производителей майнинговых чипов и основанной выходцами из постсоветского пространства.

Объём данных

Стандартные программы-клиенты ориентированы на работу с полной базой транзакций. Программа-клиент способна работать полностью автономно, как полноценная сеть. Такой механизм обеспечивает работоспособность сети без выделенного сервера и центрального агента, но вынуждает хранить огромный архив всех транзакций. По состоянию на июнь 2015 года размер базы составлял более 42 ГБ. После первого запуска на получение, анализ и сохранение базы транзакций может уходить более суток. В случае увеличения числа транзакций до уровней, сравнимых с популярными ныне платёжными системами, проблема хранения и передачи данных может сделать невозможным использование стандартных программных клиентов на большинстве домашних компьютеров.

По этой причине разработаны «тонкие клиенты», которые хранят на жестком диске только заголовки блоков (около 80 байт), а полное содержимое блоков скачивают по мере необходимости. Это экономит место на диске, но не подходит для майнинга.

Масштабируемость

Для решения проблемы масштабируемости и уменьшения комиссий за транзакции, один из ведущих разработчиков Гэвин Андресен предложил увеличить максимальный размер блока с 1 мегабайта до 20-ти, однако эта идея была раскритикована многими другими разработчиками, крупнейшими майнерами и владельцами пулов (сосредоточенными в КНР), а также владельцем самого крупного форума о биткойне bitcointalk и модератором раздела о биткойне на Reddit, поскольку это сильно увеличило бы размер базы данных и снизило бы децентрализацию.

Другим решением проблемы маcштабируемости является использование некоторых видов сайдчейнов и в целом протоколов более высокого уровня, развёрнутых поверх протокола биткойна. Чем занимается компания Blockstream, а также проекты Lightning Network, Rootstock, Segregated Witness, Amiko Pay.

Программное обеспечение узла сети «Биткойн» существует в двух видах: приложение с графическим интерфейсом и фоновое приложение (демон в Unix, служба в Windows). Программы могут удалённо управляться по протоколу JSON-RPC (RFC 4627), разработаны соответствующие классы для PHP5. Это позволяет подключить к одному узлу несколько майнеров, создать собственный пул; сопрячь узел с веб-сайтом.

  • bitcoind — программа-демон, в которой реализован протокол Bitcoin, управляется через командную строку.
  • Bitcoin Core (ранее Bitcoin-qt) — клиент на основе первой программы с графическим интерфейсом Qt, формат хранения секретного ключа совместим с bitcoind.
  • BitcoinJ — узел сети «Биткойн» на языке Java, разработанный сотрудником Google Майком Хирном (Mike Hearn) в рамках программы «20 % рабочего времени сотрудника». Имеет только пользовательские функции[92] — не может проверять транзакции и блоки, создавать блоки, но может создавать новые транзакции. Возможно применение в мобильных приложениях для операций с биткойнами.
  • Armory — клиент с различными функциями для повышения безопасности, является надстройкой, работающей поверх bitcoind, однако использует собственный формат хранения секретного ключа. По состоянию на начало 2016 года ведущий разработчик прекратил работу над улучшением проекта, но поскольку исходный код открыт работа над проектом может быть продолжена любым желающим. Официальный сайт проекта продолжает работать[93].
  • Electrum — тонкий клиент, не требующий хранения всей базы транзакций за счёт подключения к одному из полных узлов сети Bitcoin. В качестве seed (англ.) для генерации или восстановления асимметричной пары ключей использует последовательность из 12-ти английских слов. Существует версия для смартфонов.

На май 2015 года существует много сервисов «онлайн кошельков», которые позволяют пользователям создавать личные биткойн-адреса и управлять ими, аналогично, как это делают почтовые службы. При этом устанавливать отдельные программы не требуется. Но в случае проблем с сайтом, его клиенты могут утратить контроль над созданными биткойн-адресами.

16 мая 2013 года электронная система расчётов WebMoney объявила о запуске в обращение титульных знаков «WMX», эквивалентных 0,001 BTC. В связи с тем, что передача WMX внутри Webmoney не порождает никаких транзакций в системе «Биткойн», а сами WMX являются не биткойнами, а правом на получение биткойнов, работа с WMX полностью аналогична работе с другими титульными знаками WebMoney. Полученные WMX можно сразу передавать, не дожидаясь включения транзакции в блок. Кроме того, ошибочные или мошеннические транзакции можно оспорить в Арбитражном сервисе WebMoney, можно легко обменять WMX на другие титульные знаки системы.

При этом WebMoney централизована и предусматривает многоуровневую идентификацию пользователей. В частности, WMX-кошелек могут создавать только пользователи, загрузившие скан своего паспорта на сайт Центра Аттестации WebMoney или получившие в системе аттестат не ниже начального, что предусматривает предоставление бумажных копий паспорта агентам Центра Аттестации. Таким образом, при работе с WMX нет анонимности.

Безопасность

6 августа 2010 года, ещё до широкого распространения системы, была замечена ошибка, которая позволяла обойти проверку и было возможно сформировать транзакцию с любым количеством биткойнов на выходе. 15 августа таким образом было создано 184 млрд биткойнов. В течение нескольких часов сделка была замечена, работа сети остановлена, ошибочные блоки были удалены из базы транзакций, выпущена исправленная версия программы.

В 2011 году американский эксперт систем компьютерной безопасности Дэн Камински (англ. Dan Kaminsky) пытался взломать Bitcoin, но не смог найти уязвимости в системе. По мнению Дэна Камински, устойчивость к взлому системы «Биткойн» обусловлена тем, что при разработке изначально предусматривалась вероятность разнообразных атак, «в коде есть признаки, что аудит проводили люди вроде нас».

11 марта 2013 года после выхода версии 0.8 программы-клиента выявилась несовместимость формата блоков с предыдущей версией программы. Подобная несовместимость форматов регулярно встречается при разработке других программ и обычно решается методом обратной совместимости. Но в системе «Биткойн» программный модуль версии 0.7 отвергал блоки нового формата, что привело к разделению цепочки блоков на две параллельные, которые продолжали наращивать разные версии программы. Произошёл фактический раскол на две параллельные платёжные системы. Было принято решение срочно отказаться от версии 0.8. Примерно через семь часов версия «цепочки 0.7» стала стабильно превышать «цепочку 0.8», которая в соответствии с протоколом была отвергнута.

В системе «Биткойн» невозможно обжаловать и/или отменить транзакции, даже если будет доказано, что владелец о них не знал и не хотел их проводить. Если у пользователя будет украден пароль доступа и биткойны будут переданы на другой адрес, то потерпевший не сможет выяснить кто это сделал, так как адрес получателя не содержит идентификационной информации. Также нет механизма гарантировать возврат платежа в случае, когда оплата произведена, но услуга или товар не получены. Этим пользуются мошенники.

Есть множество сообщений об использовании для воровства биткойнов ошибок и уязвимостей в сторонних системах. Ранее известная проблема генератора случайных чисел в ОС Android позволяет в некоторых случаях подобрать электронные ключи, в том числе для системы «Биткойн». В 2011 году была выявлена ошибка обработки неподтверждённых транзакций в системах бухгалтерского учёта многих сервисов обмена, которая позволяла произвести зачисление средств без передачи биткойнов. Игнорирование этой проблемы привело к банкротству Mt.Gox. Зафиксированы и другие взломы площадок обмена и пулов совместной добычи. В конце 2013 года с транзитных счетов подпольного магазина Sheep Marketplace было украдено 96 000 биткойнов, принадлежавших пользователям.

В апреле 2014 года Лаборатория Касперского сообщила о росте вирусных атак, направленных на кражи биткойнов, в том числе через воровство файлов с ключами (wallet.dat).

Средствами безопасного хранения биткойнов являются:

  • Для защиты от сбоев: бумажные и/или цифровые бэкапы (с возможностью их зашифровать и/или хранить несколько частей в разных местах).
  • Для защиты от кражи: «холодное хранение» или аппаратные средства защиты. При этом шифрование кошелька само по себе не является надёжной защитой от троянских программ, поскольку пароль может быть прочитан через кейлогер.

Холодное хранение

Метод заключается в хранении приватного ключа на компьютере, не подключенному к интернету, и с возможностью осуществления операций на компьютере, который подключение к интернету имеет. Данный метод реализован например в Bitcoin-клиенте Armory.

Комментарии:




Октябрь 2018
Пн Вт Ср Чт Пт Сб Вс
« Сен    
1234567
891011121314
15161718192021
22232425262728
293031