Меню

Что такое Bitcoin Cash? Руководство для начинающих

В этой статье мы расскажем вам обо всех обстоятельствах, которые привели к появлению Bitcoin Cash. Информация предоставляется исключительно в образовательных целях.

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

1 августа 2017 года биткоин прошел через процедуру, называемую hard fork (радикальное изменение основной части кодовой базы — клонирование всего проекта с внесением этих изменений в код),  которая и породила Bitcoin Cash. Мы не знаем, какая из сторон права и предоставим решать это читателю.

Как работает Bitcoin?

Некий персонаж под псевдонимом Сатоши Накомото (или группа персонажей) представил миру Биткоин. В уже ставшей легендарной исследовательской работе он был определен как «одноранговая система электронных платежей». Другими словами, биткоин — это децентрализованная peer-to-peer система цифровой валюты. Вся система работает благодаря действиям группы людей, называемых майнерами.

Две основные вещи, которые делают майнеры:

  • Создание блоков.
  • Добавление информации о транзакциях в эти блоки.

Создание блоков

Майнеры используют вычислительные мощности своих компьютеров, чтобы создавать новые блоки, которые потом будут добавлены в блокчейн. Этот процесс основан на протоколе «proof of work» (доказательство работы). В тот момент, когда блок будет создан, майнер получает награду. В настоящее время она составляет 12,5 биткоинов (награда уменьшается вдвое каждые 210 000 блоков). Однако это не единственный стимул для работы.

Подробнее, что такое майнинг читайте в статье Что такое майнинг и принцип его работы

Добавление информации о транзакциях в блоки

Когда группа майнеров создает новый блок, они становятся временными хозяевами этого блока. Представьте, что Маша послала Пете 5 биткоинов. Конечно, физически она ничего не посылает, просто пользователи добавляют информацию об этой операции в блоки в блокчейне и только в тот момент, когда блок будет добавлен, эта транзакция станет совершенной, и Петя получит свои 5 монет.

За добавление информации о транзакциях в новые блоки майнеры могут брать комиссию. Если вы хотите, чтобы информация была добавлена быстро, то вы можете заплатить майнерам более высокую комиссию.

Чтобы транзакция стала действительной, информация о ней должна быть добавлена в блокчейн. Однако здесь возникает проблема — блок строго фиксирован по размеру (1мегабайт). Это ограничивает количество транзакций, информация о которых может быть в него записана. Сначала это было не так критично, но потом случилось нечто, что породило огромную проблему — биткоин стал знаменитым!

Подробнее, как работают биткоин транзакции читайте в статье Как на самом деле работают биткоин транзакции?

Проблема масштабируемости биткоина или имеет ли размер значение?

Итак, как Биткоин стал популярным и пришел к своим естественным проблемам.

На этом графике вы увидите то количество транзакций, которые совершаются каждый месяц

Здесь видно, что количество ежемесячных транзакций только увеличивается. При текущем размере блока в 1 мегабайт биткоин в состоянии обработать только 4,4 транзакции в секунду. Когда Сатоши Накомото создавал эту криптовалюту, он рассчитывал на то, что ограничение блока в 1 Мб уменьшит количество спамных транзакций, которые могут просто парализовать всю сеть.

Однако количество транзакций растет не по дням, а по часам. Скорость, с которой создаются блоки, также увеличилась. Теперь люди вынуждены ждать, пока новый блок не будет создан и тогда их транзакция пройдет. Это явление создало целую очередь из неподтвержденных транзакций. И сейчас единственный способ увеличить приоритет вашей транзакции — платить более высокую комиссию майнерам.

Так появилась система «replace-by-fee». Как она работает. Представим, что Маша отправляет Пете 5 биткоинов, но транзакция не проходит из-за очереди. Она не может отменить транзакцию, потому что монеты, которые она отослала, никогда не вернутся. Но она может переслать Пете еще 5 монет, только на этот раз с достаточно высокой комиссией за транзакцию. Как только майнеры записывают информацию о ее транзакции в блок, она также перезапишет информацию о предыдущем платеже и сделает его недействительным.

Хотя система «replace-by-fee» выгодна майнерам, для пользователей она неудобна. Здесь приведен график времени ожидания пользователя, если он заплатит минимальную комиссию за транзакцию:

Если вы заплатите минимальную комиссию, то медианное время ожидания прохождения платежа составит 13 минут.

Чтобы устранить это неудобство, было предложено увеличить размер блока с 1 Мб до 2 Мб. Легко сказать, но трудно сделать. Это предложение повлекло за собой бесконечные споры и ругань между теми, кто считает, что размер блока в 1 Мб достаточен и теми, кто выступал за увеличение размера до 2 Мб. Как мы раньше говорили, в этом вопросе мы занимаем нейтральную позицию и просто приведем здесь доводы обеих сторон.

Аргументы ПРОТИВ увеличения размера блока

  • Майнеры потеряют стимул, потому что комиссия за транзакцию уменьшится. Если размер блока увеличится, информация будет записываться быстрее, что значительно снизит комиссию. Есть опасения, что это может стимулировать майнеров перейти на более выгодные валюты. Если количество майнеров уменьшится, то это уменьшит общий хешрейт BTC.
  • Биткоин не должен использоваться в повседневных платежах. Некоторые участники сообщества не хотят, чтобы он применялся для ежедневных транзакций. Эти люди считают, что биткоин имеет более высокую цель, чем просто быть валютой, обычным средством платежа.
  • Раскол сообщества. Увеличение размера блока неизбежно приведет к созданию клона системы (форка). Это породит два параллельных Биткоина и в результате расколет сообщество на два лагеря.
  • Увеличение централизации. Так как размер сети увеличится, объем вычислительной мощности, необходимой для добычи, также будет расти. Это выведет из игры все небольшие майнерские пулы и оставит исключительно крупные пулы с большими вычислительными мощностями. Это увеличит централизацию, что противоречит самой сути Биткоина.

Аргументы ЗА увеличение размера блока

  • Это на самом деле выгодно майнерам — увеличится число транзакций на один блок, повысится количество комиссий, которые майнер получит при создании блока.
  • Биткоин должен расти и быть доступнее для обывателя. Если размер блока не изменится, то есть высокая вероятность того, что размер комиссии за транзакции будет увеличиваться и дальше, и обычный человек не будет им пользоваться. BTC будут применять только крупные корпорации и очень состоятельные люди. А это никогда не было целью биткоина.
  • Планируемые изменения не будут внесены все сразу. Предполагается постепенное внедрение улучшений. Люди больше всего боятся, что слишком большое количество изменений, внесенных одновременно, приведет к сбою в системе. Однако сторонники увеличения размера блока считают, что это беспочвенные страхи, поскольку изменения будут вноситься в протокол постепенно.
  • Идея увеличения размера блока получила большую поддержку сообщества, поскольку считается что те, кто не успевают за бешеным ритмом жизни, остаются позади.

Для решения проблем масштабируемости было предложено два пути

  • Soft fork.
  • Hard fork.

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

Но прежде чем мы начнем их рассматривать, давайте разберем фундаментальное различие между soft fork’ом (так сказать, мягким ответвлением) и hard fork’ом (жестким ответвлением).

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

Что такое Soft Fork?

Есть два способа сделать обновление блокчейна — soft fork или hard fork.

Soft fork легче всего представить как обновление программного обеспечения с обратной совместимостью. Что это значит? Предположим, вы используете MS Excel 2005 на своем ноутбуке, и хотите открыть электронную таблицу, созданную в MS Excel 2015. Она все равно откроется в версии Excel 2005, потому что MS Excel 2015 обратно совместим (со старыми версиями).

НО! Есть нюанс. Все обновления, которые вы можете использовать в новой версии, не будут доступны в старой. Возвращаясь к нашей аналогии с MS Excel, предположим, что есть некая функция, которая позволяет помещать GIF в электронную таблицу в версии 2015 года. При этом вы не увидите эти GIF в версии 2005 года, потому что соответствующих функций у Excel 2005 нет. Таким образом, вы увидите текст, но не увидите GIF.

Что такое Hard Fork?

Основное различие между soft fork’ом и hard fork’ом заключается в том, что hard fork не имеет обратной совместимости. Как только он будет реализован, не будет никакой возможности вернуться к первоначальному состоянию.

Если вы не присоединитесь к обновленной версии блокчейна, то вы не получите доступа к новшествам новой версии или вообще не сможете взаимодействовать с пользователями новой версии. Эту ситуацию можно сравнить с PlayStation 3 и PlayStation 4. Вы не можете играть в PS3-игры на PS4, и в то же время вы не можете играть в PS4-игры на PS3.

Андреас Антонопулос описывает разницу между софт форком и хард форком следующим образом:

Если вегетарианский ресторан начнет добавлять свинину в свое меню, то это будет считаться хард форком. Софт форк — когда обычный ресторан добавляет вегетарианские блюда в меню. Но вам не обязательно быть вегетарианцем, чтобы обедать в этом ресторане. И вегетарианцы и мясоеды могут там покушать.

Однако для реализации любых серьезных изменений в системе Биткоина участники системы должны прийти к согласию. Итак, как децентрализованная экономика приходит к общему соглашению?

Есть два способа это сделать

  • Изменения, за которые голосуют майнеры.
  • Изменения, за которые голосуют люди-собственники активных узлов сети (нодов).

Прежде, чем мы перейдем к рассмотрению каждого из них, нам нужно разобраться, что такое Segwit.

Что такое Segwit?

Мы не будем слишком углубляться в то, что такое Segwit, но чтобы понять, почему появился Bitcoin Cash, нужно иметь представление о том, что это такое.

Если внимательно посмотреть на структуру блока, можно увидеть такую картину:

Заголовок блока имеет 6 следующих элементов:

  • Версия.
  • Хэш предыдущего блока.
  • Основание «дерева Меркла» (хэш-функция) для транзакции.
  • Время транзакции в Epoch формате.
  • Сложность сети.
  • Нонс.

Кроме заголовка, у блока есть «тело», и оно как раз содержит в себе всю информацию о транзакциях.

Какие данные о транзакциях содержит тело блока?

Любая транзакция состоит из трех элементов:

  • Сведения об отправителе — это вход.
  • Информация о получателе – выход.
  • Цифровая подпись.

Цифровая подпись очень важна, т.к. она подтверждает, что отправитель имеет нужную сумму средств, необходимых для совершения транзакции. Как вы можете видеть на диаграмме выше, она является частью входных данных. И хотя это очень важные данные, с ними возникает большая проблема — занимают много места. В блоке размером 1 Мб подпись занимает почти 65%!

Доктор Питер Уилль (Peter Wuille) предложил решение этой проблемы, которое он назвал Segregated Witness (отделенный свидетель) или Segwit.

После активации Segwit все данные отправителя и получателя останутся внутри основного блока, а подписи войдут в новый блок под названием «Extended Block».

Это позволит создать больше места в блоках для большего количества транзакций. Теперь, когда у вас есть общее понимание того, что такое Segwit, давайте рассмотрим его плюсы и минусы.

В чем заключаются плюсы и минусы Segwit?

Плюсы Segwit:

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

Минусы Segwit:

  • Майнеры за каждую отдельную транзакцию будут получать меньший размер комиссии.
  • Реализация сложна и все кошельки должны будут сами устанавливать Segwit. Велика вероятность, что сделать это с первого раза не получится.
  • Значительно увеличит использование ресурсов, так как емкость, количество транзакций и пропускная способность увеличатся.

Когда разработчики создали SegWit, они добавили в него специальное условие. Он может быть активирован только тогда, когда получит разрешение 95% всех майнеров. В конце концов, это огромные изменения в системе. Они полагали, что получение согласия большинства участников системы — это правильное решение. Однако это привело к сбою в работе системы.

Большинство майнеров не хотят, чтобы Segwit был активирован. Они опасаются, что, поскольку доступное место для записи в блоки увеличится, это резко сократит транзакционные сборы, на которые они рассчитывают. В результате они бойкотируют применение Segwit, что, в свою очередь, приводит в ярость тех пользователей и предпринимателей, которые хотели его активации.

Таким образом, появилась идея UASF, также известная как «User Activated Soft Fork» (софт форк активированный пользователями), названная BIP 148.

Что такое BIP?

BIP (Bitcoin Improvement Proposals) — предложения по улучшению BTC. Это некий документ, который предлагает различные проекты и улучшения в сети биткоин.

Существует три вида BIP:

  • Стандартные — касаются изменений сетевого протокола, транзакций и блоков.
  • Информационные — касаются работы с проектами и общие рекомендации.
  • Процессинговые — касаются изменения в самом процессе работы Bitcoin.

И что же такое BIP 148?

BIP 148 представляет собой активированный пользователями софт форк. В нем говорится, что все узлы (ноды) в биткоин-сети будут отклонять любые блоки, которые создаются без учета информации, предлагаемой Segwit.

Основная идея заключается в том, чтобы мотивировать майнеров включать в блоки ту информацию, которую Segwit в них вносит, чтобы они стали частью общей системы.

Есть вероятность, что, поощряя большее количество майнеров перейти на сторону BIP 148, в конечном итоге порог в 95% пользователей будет преодолен и это приведет к активации Segwit. При этом имеются справедливые опасения по поводу разделения блокчейна на две ветки.

Но этого можно легко избежать, если 51% майнеров перейдут на сторону BIP 148. Так как если больше половины майнеров находятся на другой ветке, то это значительно уменьшает хэшрейт исходной версии блокчейна.

Если следовать координационной теории игры, можно предположить, что майнеры будут вынуждены перейти на другую сторону с большинством голосов. И это вызывает серьезную озабоченность.

Что делать, если изменения системы не пройдут гладко и это приведет к разделению сети? Будет катастрофа!

Эта проблема была поднята майнинговой компанией Bitmain. Так, в качестве плана «Б» на случай непредвиденных обстоятельств применения BIP 148, Bitmain предложил UAHF (User Activated Hard Fork) — «хард форк активированный пользователями».

Что такое UAHF?

Хард форк активированный пользователями — это предложение Bitmain, которое позволит создать совершенно новую форму биткоина и блоки с большими размерами. Так как это хард форк, цепь не будет обратно совместима с остальной частью блокчейна.

Главная причина, почему эта идея так привлекательна, заключается в том, что для ее применения не требуется большинства голосов участников сети. Все узлы (ноды), которые применят эти изменения автоматически, будут работать с новым блокчейном вне зависимости от того, поддерживает ли эти изменения большинство сети или нет.

В то же время многим идея о хранении цифровой подписи отдельно от остальных данных транзакций не нравится. Они считают, что это может быть потенциальным объектом хакерских атак.

Таким пользователям Bitmain предлагает свой способ, чтобы избежать применения BIP 148: «Если вам это не нравится, то прыгайте на наш корабль, и вы станете частью новой системы».

На конференции «Будущее Биткоина» разработчик Амори Сечет (Amaury Séchet) объявил о создании проекта «Bitcoin ABC» (Adjustable Blocksize Cap), где также заявил о предстоящем хард форке. Сразу после анонса и релиза первого клиента Bitcoin ABC был анонсирован проект «Bitcoin Cash» (BCC), который вошел в полную силу 1 августа 2017 года.

Что такое Bitcoin Cash?

Определение на официальном сайте гласит: «Bitcoin Cash — одноранговые (peer-to-peer) электронные деньги для Интернета. Он полностью децентрализован, без центрального банка, и для работы ему не нужны никакие доверенные третьи лица».

Вы заметили акцент на фразе «одноранговые электронные деньги»? Это сделано специально, потому что само существования Bitcoin Cash зависит исключительно от проведения большого количества транзакций, как это отмечает Джимми Сон (Jimmy Song) в своей статье на Medium.

Bitcoin Cash (BCH) во многом похож на Bitcoin, но имеет ряд отличительных особенностей:

  • Размер блока — 8 Мб.
  • Нет поддержки Segwit.
  • Нет функции «replace by fee».
  • Есть защита от «replay»-атаки и от уничтожения (известна также как проблема 51%).
  • Предлагает способ корректировать сложность PoW быстрее, чем для обычного интервала возрастания cложности нахождения блока.

Поскольку BCH является результатом хард форка, любой, у кого был BTC, получил такое же количество монет в BCH. При условии, что он не держал BTC на счетах бирж и контролировал приватные ключи счета во время включения хард форка. Итак, теперь давайте рассмотрим некоторые интересные функции Bitcoin Cash.

Как Bitcoin Cash защищен от «replay»-атаки?

Главная особенность Bitcoin Cash — это то, как он обходит самую большую проблему, с которой любая криптовалюта может столкнуться после подобного форка — «replay»-атака.

Что такое «replay»-атака?

Это такая передача данных, которая намеренно повторяется либо задерживается. В контексте работы блокчейна это выглядит так. Некто совершает транзакцию, которая происходит в одном блокчейне и затем умышленно повторяет ее в другом блокчейне. Например, Маша отправляет 5 BTC Пете, в результате «replay»-атаки она также отправляет ему 5 BCH, хотя она и не собиралась этого делать.

Как же Bitcoin Cash предотвращают «replay»-атаки? (Данные взяты из ответа Андре Чоу (Andre Chow) на StackExchange)

  • Использование переопределенного алгоритма sighash. Этот алгоритм используется только в том случае, когда sighash-флаг установлен в 6 бит. Эти транзакции будут недействительными в блокчейне, отличном от UAHF (блокчейн хард форка), поскольку имеют разный алгоритм sighash.
  • Использование вывода OP_RETURN, который содержит строку «Биткоин: одноранговая электронная денежная система». Любая транзакция, которая содержит эту строку, будет рассматриваться нодами сети Bitcoin Cash как недействительная, и так вплоть до нахождения 530 000-го блока. В принципе, до нахождения этого блока вы можете разделить свои монеты, совершив транзакцию в оригинальном блокчейне с нормальным выводом OP_RETURN, а затем — в блокчейне хард форка без него.

Как Bitcoin Cash привлекает майнеров?

Плавность работы любой криптовалюты в значительной степени зависит от того, как работают ее майнеры. В последнее время Bitcoin Cash привлек много майнеров, что значительно увеличило его хешрейт. Вот как они это сделали. За пояснением мы снова обратимся к Джимми Сону (Jimmy Song):

Bitcoin Cash имеет установленное правило о том, когда он уменьшает свою сложность. Прежде чем мы узнаем это правило, важно разобраться с тем, что такое Median Time Past (MTP). Это медианное время нахождения последних 11 блоков, которые были добавлены в блокчейн. Сортируем по времени в порядке возрастания последние 11 блоков. То время, за которое был найден последний блок и является Median Time Past (MTP) — «средним временем прошлого». MTP помогает нам определить время, в течение которого будущие блоки также могут быть намайнены.

Вот диаграмма MTP различных блоков:

Правило для регулировки сложности майнинга в Bitcoin Cash является таким: если MTP текущего блока и MTP шести предыдущих блоков составляют более 12 часов, то сложность уменьшается на 20%, т.е. становится проще на 20% найти новые блоки.

Это дает некоторую возможность приспособиться к текущей сложности. Например, можно проверить 13-часовой промежуток между блоками 478570 и 478571. Майнеры, возможно, делали это, чтобы облегчить себе майнинг.

Еще одна интересная вещь, которую следует отметить, это то, как и когда уровень сложности может корректироваться в криптовалюте. Это график, который показывает уровень сложности BCH:

Уровень сложности регулируется в зависимости от количества майнеров в системе. Если их мало, то и уровень сложности снижается, потому что общая мощность системы (хешрейт) невысока.

Когда Bitcoin Cash впервые запустился, он испытывал трудности с привлечением майнеров, в результате этого сложность майнинга резко упала.

Это привлекло много пользователей, которые увидели возможность хорошо заработать. Это спровоцировало отток майнеров из BTC сети, да такой, что хешрейт BTC уменьшился вдвое, уменьшив при этом время транзакции и увеличив комиссию.

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

Вот график, на котором видно падение хешрейта Bitcoin:

Стоимость Bitcoin Cash

На момент написания статьи BCH является второй по стоимости криптовалютой в мире, уступая только BTC, и торгуется по цене 573,35 доллара за монету BCH. Рыночная капитализация составляет 9,4 миллиарда долларов (что является третьей по величине капитализации после BTC и ETH). В какой-то момент его стоимость превысила 700 долларов. Вы можете увидеть это на графике ниже:

Каковы причины повышения стоимости Bitcoin Cash?

Причина 1:

Все больше бирж принимает Bitcoin Cash. Когда он стартовал, биржи неохотно принимали BCH. Теперь же большинство бирж включают его в свои листинги. Это придает валюте большее доверие и, как следствие, его стоимость увеличивается.

Ниже приведены кошельки и биржи, которые поддерживают BCH:

Причина 2:

Все больше майнеров приходят в систему. Как объяснялось выше, майнинг BCH в настоящее время очень выгоден. Это привлекает пользователей и увеличивает хешрейт Bitcoin Cash, что повышает его стоимость.

Кроме того, поскольку размер блока составляет 8 Мб, это позволяет записывать в блок больше транзакций, что приводит к генерации большего объема комиссий.

Есть ли у Bitcoin Cash будущее?

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

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

В то же время размер блока 8 Мб определенно является очень заманчивым аспектом, и пока неясно, как это повлияет на майнеров в дальнейшем. Может ли это решить все проблемы масштабируемости? Сможет ли BCH когда-либо обогнать BTC и стать основным биткоином?

На данный момент все эти вопросы являются лишь предположениями. Мы можем с уверенностью сказать, что впереди нас ждет много интересного.

Оставить комментарий

ТОП 3 криптобиржи