Проблема масштабируемости биткойна

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
Количество транзакций в системе «Биткойн» за месяц
Неизвлеченные выходы транзакций биткойна

Проблема масштабируемости биткойна связана с изначальным ограничением разработчиками размером в один мегабайт базовой структуры для хранения данных (блока) в его блокчейне[1][2][3]:ч. 2. Такое ограничение продиктовано особенностью построения блокчейна, как полностью реплицированной распределённой базы данных, что требует постоянной пересылки между всеми участниками каждого нового элемента. Уменьшение размера блока существенно ограничивает эффективность потенциальной DDoS-атаки. Если учесть среднее время на формирование блока (10 минут) и средний размер информации о транзакции, то для гарантированного помещения в блок количество транзакций не должно быть слишком велико — на уровне около трех транзакций в секунду.

С ростом популярности Биткойна число транзакций увеличилось, но из-за ограничения максимального размера блоков не все транзакции «помещались» сразу, периодически возникала очередь. В мае 2017 года ситуация сильно ухудшилась, ожидание включения транзакции в блок достигало нескольких дней[4][5].

В системе Биткойн для ускорения обработки пользователь может добровольно назначить комиссию. Регулярное возникновение очереди привело к увеличению транзакционных сборов, но не устранило задержку обработки транзакций. Это делает использование биткойнов достаточно дорогим и длительным, особенно для небольших платежей — исчезает смысл использовать их, например, в кафе и барах[4].

Для решения проблемы предлагались различные способы. Business Insider в 2017 году характеризовал этот спор как «идеологическую битву за будущее биткойна»[6].

Форки[править | править код]

Основная последовательность блоков (чёрные) является самой длинной от начального (зелёный) до текущего. Форки порождают побочные ветви (фиолетовые), которые впоследствии отсекаются

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

Блокчейн также может разделяться, когда разработчики изменяют протокол определения того, какие блоки действительны[7].

«Хардфорк»[править | править код]

«Хардфорком» называют разбиение блокчейна на две отдельные цепи в результате использования двух разных протоколов[8]. Новый протокол также может разделить сеть, если все участники сети не следуют за ним[7]. Например, Ethereum Classic возник в результате «хардфорка» Ethereum из-за разного понимания необходимых действий в ответ на взлом DAO[9][10].

Сообщества Bitcoin XT, Bitcoin Classic и Bitcoin Unlimited предложили увеличение предела размера блока как способ увеличения масштабируемости. Однако поддержка обоих предложений со временем падала[6][11].

«Софтфорк»[править | править код]

Согласно CoinDesk, в отличие от «хардфорка», «софтфорк» — это изменение протокола, в результате которого созданные блоки признаются действительными и старым программным обеспечением[7]. Согласно Investopedia, «софтфорк» также может разделить сеть, если необновлённое программное обеспечение будет создавать блоки, которые не будут считаться действительными по новому протоколу[12].

Один из основателей и разработчик Blockstream Питер Уилл в декабре 2015 года предложил изменения в виде «софтфорка», получившие название SegWit[13][14]. SegWit предполагает часть данных (открытые ключи) хранить за вне блокчейна. CoinTelegraph предполагает, что SegWit позволит создавать новые решения второго уровня поверх биткойна[14].

«Софтфорк», активированный пользователем (User-activated soft fork (UASF)), является спорной идеей, которая позволяет понять, как выполнить обновление блокчейна, которое не поддерживается теми, кто обеспечивает мощность сети[7].

Предложенные решения[править | править код]

Были представлены различные предложения по масштабированию биткойна. В 2015 году Джефф Гарзик представил BIP 100, а Гэвин Андресен — BIP 101[2]. В середине 2015 года некоторые корпорации поддерживали увеличение размера блока до восьми мегабайт[15].

  • Bitcoin XT был предложен в 2015 году для увеличения мощности обработки транзакций биткойна за счёт увеличения предела размера блока[16].
  • Bitcoin Classic был предложен в 2016 году, чтобы увеличить производительность обработки биткойна за счёт увеличения предела размера блока[17].
  • В 2016 году было заключено соглашение некоторых майнеров и разработчиков, которое в разговорной речи называлось «Гонконгским соглашением», в котором содержалось расписание, в ходе которого было бы рассмотрено как предложение SegWit, сделанное в декабре 2015 года разработчиками Bitcoin Core, так и увеличение предела размера блока до 2 МБ. Однако оба соглашения не имели успеха[18].
  • Bitcoin Unlimited защищает гибкость майнеров, чтобы увеличить лимит размера блока и поддерживается майнинг-пулами ViaBTC, AntPool, инвестором Роджером Вертом и главным ученым Bitcoin Unlimited Питером Ризуном[19]. Предложение Bitcoin Unlimited отличается от Bitcoin Core тем, что параметр размера блока не является жестко запрограммированным, а скорее узлы и союз майнеров поддерживает размер, который они хотят, используя идею, которую они называют «возникающим консенсусом»[19]. Те, кто стоит за предложением Bitcoin Unlimited, утверждают, что с идеологической точки зрения майнеры должны решить вопрос о решении масштабирования, так как они те, чье оборудование поддерживает сеть[20].
  • BIP148 — это предложение, которое называется "Активированный пользователем «софтфорк» (UASF) или «популистское восстание». Планировалось, что он будет запущен 1 августа 2017 года, и он попытался заставить майнеров активировать SegWit[21]. Это стало ненужным, потому что майнеры решили проголосовать за активацию SegWit, используя схему BIP91.

Реализованные решения[править | править код]

Segregated Witness (SegWit)[править | править код]

SegWit:

  • Меняет структуру хранения данных в каждом блоке биткойна[22].
  • Обеспечивает повышение пропускной способности транзакции, оставаясь совместимым с более ранними версиями программного обеспечения биткойна[22].
  • Устраняет транзакционную инертность, которая стала препятствием для других проектов биткойнов[22].
  • Внедрение Lightning Network стало осуществимым[23].

Активация[править | править код]

В мае 2017 года Digital Currency Group (не путаясь с Цифровой Валютной Инициативой MIT Media Lab) объявила решение, называемое SegWit2x («Нью-йоркское соглашение»),[24] активизирующее SegWit на 80%-й порог общего хэш-рейта биткойна, сигнализирующий на бит 4; и поднять ограничение размера блока до 2 МБ в течение шести месяцев с поддержкой, превышающей 80 % от общего хэш-рейта биткойна[25]. В июне 2017 года предложение SegWit было ещё более осложнено утверждением о том, что оно может нарушить патенты, поданные в USIPO[26]. По состоянию на середину 2017 года предложение SegWit2x поддерживало более 90 % хеш-рейта, однако предложение SegWit2x было спорным в том, что работа над проектом ограничивался группой разработчиков только по приглашениям[24]. В середине июля 2017 года стало очевидно, что майнеры поддержали реализацию пункта о SegWit соглашения до 1 августа 2017 года UASF, тем самым пытаясь избежать риска «хардфорка» сети биткойн[27][28][29]. 21 июля BIP 91 был заблокирован, что означало, что обновление SegWit активируется на блоке 477 120[30]. К 8 августа была достигнута ещё одна ступень, когда 100 % майнинг-пулов биткойна объявили о поддержке SegWit, хотя SegWit не был полностью активирован до, как минимум, 21 августа, после чего майнеры начали отказываться от блоков, которые не поддерживают SegWit[31]. 24 августа 2017 года (на блоке 481 824) был воплощен в жизнь[22][нет в источнике]. Большинство биткойн-транзакций не использовали обновление, но они и не были в состоянии это сделать, поскольку стандартизация формата адреса BIP 173 не была завершена. За первую неделю октября доля операций биткойнов с использованием SegWit выросла с 7 % до 10 %[32].

Bitcoin Cash[править | править код]

Bitcoin Cash, «хардфорк» блокчейна биткойна, появился 1 августа 2017 года (с блока 478 559)[33][34]. После «хардфорка» у держателей биткойнов, в дополнение к имевшимся у них биткойнам (BTC), появилось такое же количество Bitcoin Cash’а (BCH)[35]. Bitcoin Cash увеличил размер блока с одного мегабайта до восьми мегабайт без включения SegWit[36]. К вечеру 1 августа 2017 года BCH занимал третье место по уровню капитализации среди всех криптовалют (после BTC и Ethereum)[37]. Многие криптовалютные биржи приостановили обслуживание в течение нескольких дней, включающих 1 августа 2017 года[38][39][40][41]. Американцы задаются вопросом, облагается ли их приобретение Bitcoin Cash налогом в качестве дохода или нет, поскольку разделение собственности не получает никаких указаний от Налогового Управления США[42].

Иные предложения[править | править код]

SegWit2x[править | править код]

Реализация SegWit в августе 2017 года была только первой половиной так называемого «Нью-Йоркского соглашения», в соответствии с которым те, кто хотел увеличить эффективный размер блока SegWit, скомпрометировали тех, кто хотел увеличить размер блока «хардфорком» до большего размер блока[43]. Вторая половина SegWit2x включает в себя «хардфорк» в ноябре 2017 года, для увеличения размера блока до 2 мегабайт[44].

SegWit был создан людьми, не связанными с SegWit2x, и многие из них против SegWit2x[45].

Тяжелая вилка SegWit2X еще более спорна, чем «хардфорк» Bitcoin Cash[46]. Некоторые компании, которые первоначально поддерживали Нью-Йоркское соглашение, не поддержали предложение, в том числе F2Pool, Bitwala, SurBTC и Wayniloans[47][48][49]. «Хардфорк» в ноябре может привести к другому блокчейну биткойна в дополнение ко второму блокчейну, созданному в августе[50]. Несколько участников Нью-Йоркского соглашения (включая Coinbase, Blockchain и Xapo) указали, что они не будут решать, какую цепочку следует называть «Биткойн» до совершения «хардфорка»[51].

Основной проблемой является выбор разработчиков SegWit2x для реализации защиты от повторной траты в другой цепи, а не сильная защита повторной траты, реализованная «хардфорком» Bitcoin Cash[52]. Защита от повторной траты означает, что цепочка Segwit2x по-прежнему будет принимать транзакции, предназначенные для исходной цепочки, в дополнение к транзакциям с защитой от повтора, действительным только для Segwit2x. Пользователи, отправляющие транзакции в исходной цепочке биткойнов, или которые не могут отправлять транзакции Segwit2x с защитой от повторной траты, будут уязвимы, если их транзакции будут повторены в другой цепочке. Это может привести к случайной потере средств. Это отсутствие сильной защиты от повторного воспроизведения вызвало значительные разногласия в сообществе биткойна[53].

Грег Максвелл, известный член Bitcoin Core и сотрудник Blockstream, заявил, что предыдущее соглашение об увеличении размера блока было сделано под давлением[54]. Внедрение SegWit2x увеличит комиссионные сборы для майнеров и уменьшит транзакционные сборы, которые Blockstream организует на боковых цепях, а также увеличит мощность майнеров при одновременном снижении мощности основных разработчиков[55].

Блок № 501451, который будет добыт ориентировочно 28 декабря 2017 года, может стать определяющим для нового (старого) ответвления Segwit2x. Как стало известно[56], команда разработчиков заявила о возобновлении активной работы по запуску приостановленного проекта. Как говорится на сайте проекта[57], команда намерена осуществить «хардфорк» биткойна Segwit2x, который ожидался ещё в середине ноября. При этом, добавляют разработчики, торги фьючерсами на «хардфорк» Segwit2x на некоторых биржах, включая HitBTC, по-прежнему продолжаются.

Lightning Network[править | править код]

Lightning Network — это проект в разработке, целью которого является устранение проблемы масштабируемости биткойна путём масштабирования «вне сети». Он предназначен для обеспечения обновления состояния микроканала без использования каких-либо блокировок (в обычном несостязательном случае), что делает микроплатежи оправданными (и без комиссии). Lightning Network потребует, чтобы транзакция финансирования на блокчейне открыла канал. Lightning Network в настоящее время находится на альфа-стадии разработки[58].

См. также[править | править код]

Примечания[править | править код]

  1. The Three Major Bitcoin Protocols Explained, Investopedia (18 October 2016). Проверено 18 января 2017.
  2. 1 2 Andrew Marshall. Bitcoin Scaling Problem, Explained, The Coin Telegraph (2 March 2017). Проверено 4 июля 2017.
  3. Andreas M. Antonopoulos. Mastering Bitcoin. Unlocking Digital Crypto-Currencies. — O'Reilly Media, April 2014. — ISBN 978-1-4493-7404-4.
  4. 1 2 Козловский, Сергей Биткоин распался на две валюты: как это произошло. Русская служба Би-би-си (1.08.2017). Проверено 1 августа 2017.
  5. Jordan Pearson. ‘Bitcoin Unlimited’ Hopes to Save Bitcoin from Itself, Motherboard, Vice Media LLC (14 October 2016). Проверено 17 января 2017.
  6. 1 2 Oscar Williams-Grut and Rob Price. A Bitcoin civil war is threatening to tear the digital currency in 2 — here's what you need to know, Business Insider (26 March 2017). Проверено 2 июля 2017.
  7. 1 2 3 4 Amy Castor. A Short Guide to Bitcoin Forks, CoinDesk (27 March 2017). Проверено 1 июля 2017.
  8. Can Bitcoin Hard Fork?, Investopedia (21 March 2017). Проверено 8 июня 2017.
  9. Adinolfi, Joseph. Exclusive: Grayscale launches digital-currency fund backed by Silver Lake’s co-founder Hutchins, MarketWatch.
  10. Wirdum, Aaron van Rejecting Today’s Hard Fork, the Ethereum Classic Project Continues on the Original Chain: Here's Why. Bitcoin Magazine.
  11. Alyssa Hertig. Keep Calm and Bitcoin On? Developers Aren't Worrying About a Fork, CoinDesk (24 May 2017). Проверено 1 июля 2017.
  12. Soft Fork. investopedia.com. Investopedia. Проверено 21 июля 2017.
  13. Corin Faife. Will 2017 Bring an End to Bitcoin's Great Scaling Debate?, CoinDesk (5 January 2017). Проверено 4 июля 2017.
  14. 1 2 Andrew Marshall. SegWit, Explained, CoinTelegraph (20 April 2017). Проверено 1 июля 2017.
  15. Evander Smart. ‘Why is My Bitcoin Transaction Taking So Long?’ Here’s Why, The Coin Telegraph (19 October 2016). Проверено 4 июля 2017.
  16. Alex Hern. Bitcoin's forked: chief scientist launches alternative proposal for the currency. the Guardian. Проверено 20 августа 2015.
  17. Making Sense of Bitcoin's Divisive Block Size Debate, CoinDesk (19 January 2016). Проверено 22 июня 2017.
  18. Pete Rizzo & Alyssa Hertig. Bitcoin's New Scaling 'Agreement': The Reaction, CoinDesk (24 May 2017). Проверено 29 июня 2017.
  19. 1 2 Alyssa Hertig. CoinDesk Explainer: The Bitcoin Unlimited Debate, CoinDesk (14 May 2017). Проверено 29 июня 2017.
  20. Pete Rizzo. CoinDesk Explainer: Bitcoin Unlimited: Mining Power Should Determine Hard Fork, CoinDesk (20 March 2017). Проверено 2 июля 2017.
  21. Alyssa Hertig. Bitcoin's 'Independence Day': Could Users Tip the Scales in the Scaling Debate?, CoinDesk (8 June 2017). Проверено 29 июня 2017.
  22. 1 2 3 4 Hertig, Alyssa SegWit Goes Live: Why Bitcoin's Big Upgrade Is a Blockchain Game-Changer. CoinDesk (23 August 2017). Проверено 23 августа 2017.
  23. van Wirdum, Aaron Segregated Witness Activates on Bitcoin: This is What to Expect. Bitcoin Magazine (23 August 2017). Проверено 24 августа 2017.
  24. 1 2 Alyssa Hertig. Top Secret? Bitcoin Scaling Plan Segwit2x Leaves More Questions Than Answers, CoinDesk (23 June 2017). Проверено 29 июня 2017.
  25. Leading bitcoin ecosystem participants reach consensus on scaling issue, Econo Times, Econo Times (25 May 2017). Проверено 23 июня 2017.
  26. Segregated Witness and the Possibility of Patent Infringement, Nigeria Times, Nigeria Times (3 June 2017). Проверено 23 июня 2017.
  27. CNBC Dispute could mean financial panic in bitcoin. Associated Press (14 July 2017). Проверено 19 июля 2017.
  28. Suberg, William Suddenly, Bitcoin Hard Fork Looks Unlikely As Chinese Exchange Readies For SegWit. COINTELEGRAPH (18 July 2017). Проверено 18 июля 2017.
  29. Castor, Amy CoinDesk Explainer: How BIP 91 Enacts SegWit While Avoiding a Bitcoin Split. CoinDesk (18 July 2017). Проверено 18 июля 2017.
  30. Hertig, Alyssa BIP 91 Locks In: What This Means for Bitcoin and Why It's Not Scaled Yet. CoinDesk (21 July 2017). Проверено 21 июля 2017.
  31. Hertig, Alyssa It's Official: Segregated Witness Will Activate on Bitcoin. CoinDesk (8 August 2017). Проверено 9 августа 2017.
  32. Suberg, William Bitcoin: $4600, 50% Dominance, Forks Leave Altcoins No Room For Moon. CoinTelegraph (9 October 2017). Проверено 9 октября 2017.
  33. Coleman, Lester Bitmain Clarifies Its ‘Bitcoin Cash’ Fork Position. CryptoCoinsNews (25 July 2017). Проверено 27 июля 2017.
  34. Popper, Nathaniel Some Bitcoin Backers Are Defecting to Create a Rival Currency. The New York Times (25 July 2017). Проверено 28 июля 2017.
  35. Song, Jimmy Bitcoin Cash: What You Need to Know. MEDIUM (24 July 2017). Проверено 28 июля 2017.
  36. Norrie, Adam Bitcoin Cash: Another Fork in the Road for Bitcoin. CryptoCoinsNews (29 July 2017). Проверено 29 июля 2017.
  37. Pollock, Darryn Bitcoin Cash Third-Biggest Cryptocurrency On First Day of Creation. COINTELEGRAPH (2 August 2017). Проверено 2 августа 2017.
  38. Gatecoin Service Preparation for the UASF and MAHF on 1 August 2017. Gatecoin (28 July 2017). Проверено 28 июля 2017.
  39. Helms, Kevin 13 Japanese Exchanges Agree to Suspend Bitcoin Service on August 1. BITCOIN.COM (18 July 2017). Проверено 27 июля 2017.
  40. Our plans to handle potential BTC network disruptions. POLONIEX (24 July 2017). Проверено 27 июля 2017.
  41. Bitcoin Hard Fork: Our Position. Bitstamp (27 July 2017). Проверено 27 июля 2017.
  42. Saunders, Laura No One Knows How Much to Pay in Bitcoin Cash Taxes. The Wall Street Journal (25 August 2017). Проверено 25 августа 2017.
  43. Haywood, Matthew Segwit2x, 'The New York Agreement'. bravenewcoin.com (16 August 2017). Проверено 6 октября 2017.
  44. Hertig, Alyssa Explainer: What Is SegWit2x and What Does It Mean for Bitcoin?. CoinDesk (12 July 2017). Проверено 6 октября 2017.
  45. https://bitcoincore.org/en/2017/08/18/btc1-misleading-statements/
  46. Suberg, William SegWit2x ‘Maximum Disruption’ Could Be Sending Bitcoin Towards $4000. cointelegraph.com (4 October 2017). Проверено 10 октября 2017.
  47. tendencialglobal Segwit2X loses support between mining groups and blockchain companies. cryptocurrency. Steemit (18 September 2017). Проверено 7 октября 2017.
  48. Wilmoth, Josiah SegWit2x, NYA Bitcoin Agreement Loses Another Signatory. cryptocoinsnews.com (19 September 2017). Проверено 11 октября 2017.
  49. Suberg, William Barry Silbert Agreement Loses Support As SurBTC Exchange Appeals to Bitcoin Core Devs. cointelegraph.com (10 October 2017). Проверено 10 октября 2017.
  50. Hertig, Alyssa Calm Before the Fork? Segwit2x Goes Silent as Bitcoin Spilt Looms. CoinDesk (6 October 2017). Проверено 6 октября 2017.
  51. Wilmoth, Josiah Bitcoin Wallet BitGo’s Segwit2x Stance ‘Based Primarily on Market Price’. cryptocoinnews.com (3 November 2017). Проверено 4 ноября 2017.
  52. Song, Jimmy How Segwit2x Replay Protection Works. bitcointechtalk.com (4 October 2017). Проверено 6 октября 2017.
  53. van Wirdum, Aaron SegWit2X and the Case for Strong Replay Protection (And Why It's Controversial). Bitcoin Magazine (22 September 2017). Проверено 6 октября 2017.
  54. https://www.cryptocoinsnews.com/developers-unilaterally-tore-agreement-says-bitcoin-miner/
  55. Piasecki, Piotr Blockstream vs miners - looking at the incentives around the SegWit2x fork. bravenewcoin.com (31 October 2017). Проверено 3 ноября 2017.
  56. Segwit2x, или старый новый хардфорк биткоина / forklog
  57. B2X (SegWit2x) — Hard Fork Bitcoin
  58. The Bitcoin Lightning Network: Scalable Off-Chain Instant Payments. Проверено 2 ноября 2017.