Биткойн использует свою неподконтрольность правительству, центральному банку или компании в качестве важнейшего аспекта архитектуры и аргумента в коммерческих продажах. Нет и активного изобретателя, который бы дёргал за ниточки, подобное положение дел наблюдается во многих других open source проектах. Но это не означает, что p2p система электронной наличности совсем не управляется людьми.
Многие возлагают эту управляющую роль на команду Bitcoin Core, однако это неверная интерпретация. В то время, как разработчики ядра могут иметь влиятельную позицию, Биткойн все таки продолжает быть управляемым двумя группами людей: пользователями и майнерами.
Внедрение Биткойна
Биткойн это ни что иное, как протокол; язык компьютеров. Важно, что это «открытый» протокол: нет запретов или требований, если вы хотите стать частью Сети, кроме одного — надо следовать правилам протокола.
Любой с необходимым набором навыков может разработать ПО для использования протокола. Однако самый простой вариант, конечно же, загрузить и использовать ПО, разработанное другими.
На данный момент существует несколько реализаций Биткойн протокола, из которых можно выбирать, так же как и форков (почти копий) этих реализаций. Самый используемый из них, по прежнему, Bitcoin Core, набор ПО, эволюционировавший из оригинальной реализации протокола Биткойна, оставленной Сатоши Накамото лично. Но Libbitcoin, Bitcoin XT*, Bitcoin Classic* и ряд других реализаций следуют одному протоколу, существуя в одной сети бок о бок.
*Bitcoin XT и Bitcon Classic запрограммированы отделиться от текущего протокола Биткойна в случае, если будут выполнены определённые условия, а до тех пор — они следуют текущему протоколу Биткойна.
Если честно, все эти реализации и форки «управляются» их уважаемыми разработчиками любым доступным им способом. Разработчики Bitcoin Classic установили (юридически необязательную) страницу Consider.it для краудсорсинга идей о будущем развитии, однако бывший разработчик Bitcoin XT, Майк Хирн, был более склонен занять роль «доброжелательного диктатора».
Bitcoin Core управляется приблизительно меритократическим процессом всеобщего аудита и грубого консенсуса между его самыми активными разработчиками. Это происходит благодаря теоретически независимому от реализаций процессу создания Предложений по Улушению Биткойна (Bitcoin Improvement Proposal, или BIP). Модерацией занимается главный разработчик Bitcoin Core, Владимир ван дер Лаан, ему помогают некоторые разработчики с полным доступом. Libbitcoin управляется точно так же, однако главным модератором выступает Эрик Воскуил.
Однако, важная вещь состоит в том, что управление реализациями Биткойна – включая Bitcoin Core – фундаментально отличается от управления самим Биткойном. Какие бы изменения в коде не одобряли и не выпускали разработчики, они на самом деле существуют в виде последовательности нулей и единиц на таких сайтах, как bitcoin.org и bitcoincore.org. Он не имеет отношения к самой сети Биткойна.
Только в том случае, если реальные Биткойн пользователи загрузят код и запустят его на своих компьютерах, он получает шанс стать частью Сети. И, конечно же, разработчики не имеют никакого контроля над программами, которые запускаются на компьютерах пользователей. Любой, кто использует ПО от Bitcoin Core или другую реализацию, поступает так исключительно добровольно и анонимно.
Разработчики, таким образом, должны восприниматься как провайдеры инструментов, имеющие то, что можно назвать «правом советника». Их влияние ограничено способностью предложить людям, которым это необходимо, ПО для соединения с Сетью Биткойна.
Управляем протоколом
Управление Биткойном само по себе происходит через пользователей, которые выбирают, какое ПО запускать на своих компьютерах.
Может быть, такой тип управления лучше всего сравним с человеческими языками. В то время, как ни один исторический персонаж не был в ответе за английский язык, множество люде добровольно выбирают следовать одинаковым грамматическим правилам, чтобы общаться. Люди «управляют» английским языком, используя его.
Те, кто говорят на нём со многими людьми, – возможно, работники популярных новостей, – будут иметь куда более сильное влияние на английский язык. Те, кто общаются с несколькими людьми вообще, вроде монахов отшельников, будут иметь меньшее влияние. Точно так же, количество влияния, которое пользователи оказывают на протокол, зависит от степени их вовлечённости.
Более точно, биткойн только тогда полезен (и ценен), когда люди принимают его как средство оплаты. Принятие Биткойна в качестве оплаты, таким образом, добавляет ценности специфическим наборам правил протокола, применяемых для принятия платежа.
Пользователи, постоянно принимающие большое количество мелких платежей (или малое количество крупных), имеют больше веса в Сети Биткойна. Если множество пользователей Биткойна захотят отсылать деньги с помощью AlphaBay или BitPay, такие компании получат больший контроль над правилами протокола Биткойна, таким образом, получив его и над процессом управления Биткойном.
Аналогично, поскольку лишь клиенты с полным узлом подчиняются абсолютно всем правилам протокола, пользователи этих «полных узлов» имеют больше влияния на процесс управления Биткойном.
Разработчики Биткойна – Core или другие – добавляют веса протоколу Биткойна до тех пор, пока они являются пользователями. Однако, их статус разработчиков не даёт им особых привилегий, даже если они их хотели бы получить.
Изменяем протокол
Внедрение и включение существующих правил протокола проходит легко. Изменение правил протокола Биткойна обычно – куда более сложное дело.
Некоторые изменения в протоколе могут быть применены группой участников сети Биткойна (вроде того, как слэнг может быть применяем некоторыми пользователями английского языка). Тем не менее, другие изменения в протоколе потребуют согласия всей сети: консенсуса. Даже мелкие отличия могут заставить разные реализации протокола Биткойна быть совершенно несовместимыми друг с другом. Это может привести к «форку блокчейна», который разделит сеть на две или более отдельных сетей, и таким образом создаст две или более отдельных криптовалют.
(Каким изменениями требуется консенсус, а каким – нет, детально рассказывается здесь)
Некоторые несовместимые изменения в протоколе, таким образом, требуют от всех пользователей принятия новых правил в определенный запланированный момент времени. Все должны переключиться на совершенно новую сеть, несовместимую со старой сетью, иначе будет существовать несколько разных сетей. Если по другому; все должны начать использовать совершенно новую «монету» и должны согласиться, что эта монета — новый Биткойн.
Настоящий вызов, таким образом, не столько в написании нового кода или даже создании новой сети. Настоящий вызов заключается в том, чтобы убедить всех пользователей перейти на эту новую сеть и считать её новым Биткойном.
Ещё раз, разрботчики Биткойна не имеют никакой суперсилы, чтобы заставлять пользователей присоединяться к новой сети – за исключением того, что пользователи могут добровольно последовать их совету. Даже если бы разработчики Bitcoin Core выпустили новую версию софта с целью создания такой новой сети, пользователи старых реализаций могут попросту проигнорировать обновление, продолжив использование существующего протокола в своё удовольствие.
(Стоит заметить, что группа пользователей всегда может переключиться на новую сеть, даже если с этим согласны не все участники. Просто вряд ли остальная часть сообщества будет считать эту новую монету «реальным» биткойном.)
Софт Форки
Заставить всех гармонично переключаться на другой протокол — не такая простая задача. Вот поему текущая команда разработки Bitcoin Core предпочитает вносить изменения таким образом, чтобы не каждому нужно было переключаться в определенный момент времени, а лучше всего — чтобы вообще не переключаться.
Через «софт форки», существующий протокол Биткойна может быть изменён в рамках текущего протокола. Они «ограничивают» существующие правила. Однако, через умные приёмы – вроде вот этих – софт форки могут быть использованы для расширения возможностей Биткойна.
Софт форки достигают этого превращением транзакций, которые ранее считались бы действительными, в недействительные. И, так как не пользователи, но только майнеры решают, какие транзакции будут включены в блок, софт форки могут быть внедрены большинством майнеров, при использовании достаточных объемов вычислительной мощности. (Любой малый майнер, который не переключится, может столкнуться с отказом большинства принимать его блоки, хотя он будет следовать цепи большинства; не может быть разделения блокчейна.)
В сегодняшнем относительно централизованном майнинговом пространстве, где только маленькая часть пользователей майнит (а ещё меньшая часть пользователей контролирует майнинговые пулы), очень немногие пользователи могут провести софт форк. Таким образом, разработчики Bitcoin Core предлагают только те софт форки, которые кажутся им наименее противоречивыми. Эти форки также предусматривают 95 процентную поддержку вычислительной мощностью, вместо полной поддержки. И они предлагают только те софт форки, которые точно свидетельствуют о изменениях в протоколе, так что все пользователи могут обновить софт или принять альтернативные меры, если это то, чего они хотят.
Конечно, майнеры могут совершить софт форк без поддержки разработчиков или более широкой базы пользователей Биткойна. Но, если майнеры играют против интересов пользователей, есть возможное решение. Биткойн протокол может быть изменён так, чтобы требовать новый алгоритм майнинга, автоматически делая специализированный майнинговый софт бесполезным. Это должно ре-децентрализовать майнинг из индустриальных ферм обратно на персональные компьютеры, по крайней мере на некоторое время, увольняя текущий набор майнеров. В некоторых случаях, разработчики Bitcoin Core могут поддерживать такие изменения. И опять же, разработчики могут лишь предлагать такие несовместимые изменения. Пользователям придётся принимать их.
Источник: BitcoinMagazine
Источник: https://bitnovosti.com/2016/10/24/why-devs-aren-ot-in-charge-for-the-protocol/
Подпишитесь на телеграм-канал @FeedBitcoin и будьте в курсе всех событий в мире биткоин и криптовалют!
Биткоин бесплатно получить
Купить, продать, обменять Биткоин