Форк
Форк означает, что блокчейн-сообщество разделилось на две или более группы, различия между которыми настолько большие, что, по сути, появилось два варианта дальнейшего развития протокола. В обоих случаях происходят изменения исходного программного кода протокола.
Для внедрения любого изменения в исходный код необходимо запустить софт или хард-форк. Это может относиться как к небольшому обновлению (улучшению ваших отношений, называется софт-форк), так и к возникновению новой монеты (в случае развода – далее хард-форк).
Что такое софт-форк?
Софт-форк внедряет обновления в существующий протокол. Предыдущие версии могут использоваться, но в новой версии добавлены дополнительные возможности.
Например, если вы не обновите Skype, то сможете им пользоваться, но новых функций у вас не будет. Вы не потеряете список контактов. Софт-форк действует по такому же принципу.
Софт-форк совместим с предыдущими версиями.
Что такое хард-форк?
Хард-форк – по своей сути, это процесс, напоминающий полное разделение в биологии. Возникают две целостные экосистемы.
Рассмотрим на примере WhatsApp. Предположим, что вашим друзьям перестал нравиться функционал WhatsApp, и они решили перейти на другой мессенджер, например Telegram. И вам предстоит определиться: старое, новое приложение использовать или оба. Если ваши товарищи не хотят иметь оба мессенджера, то вам придется выбирать, так как приложения несовместимы.
Хард-форки встречаются довольно редко, но когда происходят, привлекают пристальное внимание общественности, потому что люди вынуждены принять одну из сторон.
Другой пример. В июле 2016 года в Ethereum произошел знаменитый хард-форк, после того как месяцем ранее хакер украл 70 миллионов из смарт-контракта. Сообщество разделилось: одни предлагали вернуть средства, другие считали, что «закон есть закон», что мошенничество, конечно, запрещено, но ничего изменить уже невозможно, так как код блокчейна был согласован заранее.
В результате блокчейн разделился на Ethereum (ETH) и Ethereum Classic (ETC). Но что же происходит с вашей монетой, когда случается форк? Чтобы не потерять созданные монеты, внимательно прочитайте следующий параграф.
Что происходит с монетами в момент форка?
В момент форка необходимо лично контролировать приватный ключ, а не доверять его биржам и третьим лицам.
Прочитайте это еще раз.
По сути, вы должны перевести свои монеты на ваш холодный кошелек, забрав их с биржи или от любых других посредников.
Форк основывается на исходном блокчейне, поэтому теперь вы имеете доступ к монетам в обоих блокчейнах. В момент развода судья вам подарил по столько же монет в каждой из новых систем – такое же количество, которым вы владели до форка. Вы становитесь владельцем монет в обоих блокчейнах.
Единая старая монета исчезает. Взамен появляются две новые.
В этот момент ваш приватный ключ предоставляет доступ к средствам, существовавшим в истории как первого блокчейна, так и второго. Если до форка у вас было 1 ETH, то теперь – 1 ETC и 1 ETH.
Стоимость новых монет будет зависеть от спроса; концепции развития новой монеты, предложенной теми, кто это спонсировал; степени доверия сообщества.
Здесь важно заметить, что отколовшаяся монета может погибнуть или стать более ценной, чем до «развода».
Но бывает и так, что при форке вы абсолютно ничего не получите, – как произошло с Litecoin.
Пример Litecoin
7 октября 2011 года Чарли Ли, бывший сотрудник корпорации Google, предложил создать форк Биткоин. Но чтобы не просто копировать, а улучшить систему.
В новом блокчейне Litecoin Чарли хотел создавать новые блоки в 4 раза быстрее (2,5 минуты в Litecoin против 10 минут в Биткоин). Это в 4 раза сократило время ожидания подтверждения денежного перевода.
Общая эмиссия монет была увеличена в четыре раза (до 84 миллиона litecoin против 21 миллионов биткоинов). Внедрили алгоритм вычисления новых блоков, основанный на proof of work (Scrypt в Litecoin против SHA256 в биткоин).
Очевидно, что это НЕ совместимо с Биткоинм, поэтому произошел форк. Чарли Ли просто взял открытый исходный код и внедрил несколько достаточно поверхностных, но продуманных изменений.
Новый блокчейн начался с нового исходного блока (блок 0). В результате люди не получили дополнительных монет, поскольку форк произошел на базисе исходного открытого кода. А созданный код начал создавать свой блокчейн на основе совершенно другого математического алгоритма расчета консенсуса.
Это означает, что творец скопировал, изменил исходный код и начал цепочку с нуля, вместо того чтобы согласиться с историей блокчейна.
Litecoin можно майнить самостоятельно или приобрести. Чарли Ли хотел полностью сбросить настройки системы. На конец февраля 2017 года общая капитализация всех выпушенных монет Litecoin составляет восемь миллиардов семьсот миллионов долларов США ($ 8,7 млрд).
Litecoin не был первым, ранее это сделал Namecoin. Но Litcoin – самый известный форк Биткоина, остающийся популярным.
Почему сложно создать форк?
Теоретически форк может создать любой. Вам нужно просто скопировать исходный код какого-либо блокчейна. Но реализация самого проекта и его развитие – трудоемкие процессы.
Во-первых, нужно создать достаточный спрос на новые монеты, иначе они бесполезны.
Во-вторых, необходимо решить проблему сложности майнинга. Если вы помните, уровень сложности должен обеспечивать решение сетью головоломки за определенное время (10 минут в сети Биткоин). Если сообщество расколется, как произошло с BTC и BCH в 2017 году, на 90 % BTC и 10 % BCH, статистически в BCH нужно будет в 10 раз дольше искать новый блок (100 минут). Поскольку затраты на электроэнергию и оборудование остаются прежними, объем вознаграждения остается под вопросом. BCH первое время было сложно, и если бы не ряд политических и экономических факторов, BCH, как и 99 % всех других форков, мог просто исчезнуть.
Что такое блокчейн-атаки?
Помимо того что сам форк – явление абсолютно стрессовое (нужно разбираться с концепциями обеих проектов, вытаскивать монеты себе на холодный кошелек), могут происходить еще и атаки сети.
Поскольку код абсолютно открыт, его постоянно кто-то пытается взломать. Делают это все более изощренными методами. А команда разработчиков, отбиваясь, улучшает код программного продукта.
Атаки бывают абсолютно разными. Ниже я приведу примеры самых известных.