Софт форк что это

Содержание

У разработчиков есть понятие «форк» — оно часто встречается в командной разработке и в проектах с открытым кодом. Посмотрите, что это, и когда вам предложат сделать форк, вы будете во всеоружии.

Пример: игра в дурака

Игра в дурака — одна из самых простых карточных игр. У всех на старте по 6 карт, есть колода, есть козырные карты, все ходят по очереди и подкидывают друг другу карты, чтобы самому остаться без карт.

Но в разных компаниях принято играть в дурака по-разному:

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

И ещё десяток разных вариантов в зависимости от компании или от того, как принято в этом месте.

Что такое Soft Fork и Hard Fork в крипте? Обзор и примеры (ETH Classic, Litecoin, BTC Cash)

Все основные правила дурака сохраняются, просто каждая версия добавляет в него что-то своё (например, возможность перевести ход). Но в основе это всё тот же дурак. Если вы знаете основные правила, то легко сможете разобраться в каждом новом варианте игры.

Все эти разные версии игры — это форки исходного дурака. Запомните пока эту аналогию, а чтобы было проще разбираться дальше, вот вам ещё одна мысль:

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

Откуда такое название

Форк в переводе с английского — это вилка, развилка или ответвление (fork). Этот термин стали использовать, потому что ручка вилки — это как будто основная программа, а зубцы — ответвления от неё. Чтобы было понятнее, вот картинка с форками игры в дурака.

Каждое ответвление — это своя отдельная версия игры, которая живёт и развивается по своим правилам. А вместе все эти ответвления напоминают вилку — отсюда и название.

Если есть время, посмотрите ветку форков Линукса в википедии. Предупреждаем: она большая и это надолго.

Что такое форк в программировании

Форки в программировании

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

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

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

Примеры форков

В современном мире многие успешные сервисы, продукты и программы — это форки. Смотрите сами:

  • Движок WebKit (используется в Safari) — это форк движка KHTML из рабочей среды KDE для Линукса.
  • Вордпресс — форк b2/CafeLog.
  • OpenOffice — форк СтарОфиса, а LibreOffice — это форк ОпенОфиса.
  • Веб-сервер Апач — форк NCSA HTTPd.
  • Microsoft SQL Server — форк Sybase SQL Server.
  • Половина криптовалют — это форки исходного алгоритма биткоина в разных вариантах.

А вот ещё интересный случай, как бывает с форками. Сначала была библиотека node.js, потом от неё пошёл форк io.js, а в 2015 году этот форк стал официальным node.js.

Зачем нужны форки

Причин может быть много:

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

Главная причина появления форков — желание сделать лучше. Но обычно получается не лучше, а просто по-другому.

Форк и версии

Иногда форк путают с версиями, хотя у них есть важное отличие:

  • новую версию софта делает та же компания или разработчик, что и предыдущую;
  • форк делает новая и другая команда, которая сама решает, как будет развиваться проект.

Как сделать свой форк

  1. Скопировать себе исходный код или нажать кнопку Fork в проекте на гитхабе.
  2. Назвать его как угодно.
  3. Пожалеть об этом, потому что теперь вы в ответе за собственный софт, который нужно развивать.

Источник: thecode.media

Краткий гайд по форкам криптовалют: хардфорк, софтфорк, UASF

coinmag

В августе в результате хардфорка биткоина появился Bitcoin Cash, сегодня — Bitcoin Gold. BCash, в свою очередь, тоже планирует 13 ноября провести форк. А всего через несколько дней после него произойдет SegWit2x.

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

Основы

Форк происходит, когда участникам системы необходимо согласовать единые правила.

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

Некоторые ветвления проходят относительно гладко, другие, связанные с серьезными противоречиями в сообществе, приводят к тому, что сеть раскалывается надвое. В результате возникают два блокчейна — и две отдельные криптовалюты.

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

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

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

Вот наиболее распространенные форки и их особенности:

Хардфорк (жесткое ветвление) Что это?

Хардфорк — обновление программного обеспечения, которое встраивает в сеть новое правило, несовместимое со старым ПО. Другими словами, хардфорк — это расширение правил (например, для увеличения размера блока с 1 Мб до 2 Мб необходим хардфорк).

Что происходит?

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

Что может пойти не так?

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

Хардфорк DAO в сети Ethereum служит прекрасным примером раскола криптосообщества из-за правил. В настоящее время существуют два блокчейна, работающие на своих версиях ПО — Ethereum и Ethereum Сlassic.

Софтфорк (мягкое ветвление) Что это?

В отличие от хардфорка, мягкое ветвление совместимо со старым ПО. Например, вместо блоков по 1 Мб новое правило может предусматривать сокращение их размера до 500 Кб.

Что происходит?

Узлы сети, использующие старое ПО, по-прежнему будут считать новые транзакции действительными (в нашем примере размер нового блока меньше, чем старого).

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

Что может пойти не так?

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

Примерами успешных мягких ветвлений блокчейна биткоина служат обновления BIP 66 (изменившее правила проверки подписей) и P2SH (изменившее формат адресов сети биткоин).

Активированный пользователем софтфорк (UASF) Что это?

Активированный пользователем софтфорк (АПС, UASF) — спорная идея, предусматривающая обновление блокчейна, без участия узлов с основной вычислительной мощностью сети.

Суть АПС в следующем: вместо того, чтобы ждать когда большинство майнинг-пулов поддержат обновление, его активацию могут провести биржи, кошельки и компании, которые являются полными узлами (в сети биткоин полные узлы отвечают за проверку блоков даже если не занимаются майнингом).

Что происходит?

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

Что может пойти не так?

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

Кроме того, если большинству майнеров не понравятся новые правила, они могут воспользоваться подавляющей вычислительной мощностью и разделить сеть.

Пока эта идея остается лишь на бумаге и ни разу не была реализована на практике.

Источник: happycoin.club

Что такое форк криптовалюты: хардфорки и софтфорки, календарь форков на 2018 год

Логотип

Термин «форк» используется в сфере криптовалют очень часто, и новички не всегда понимают, что конкретно называют этим словом. Что же такое форк в криптовалюте, какие бывают форки, и как на них можно заработать?

Определение форка

Знак

«Форк» – это прямая калька с английского fork, слово означает «вилка», в переносном значении «разделение, развилка, разветвление, ответвление».

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

Примерами форков в программировании может служить разделение проекта X Windows System на два:

Или разделение OpenOffice на следующие отдельные системы:

  • LibreOffice;
  • Apache OpenOffice.

В криптовалюте ситуация аналогичная.

Форк в криптовалюте, говоря простыми словами – это улучшение программного кода блокчейна.

Виды форков в криптовалюте

Форк

По характеру изменений есть 2 вида форков.

На определенном блоке от родительской цепочки блоков отделяется дочерняя.

Делается так называемый «снимок», то есть, вся информация копируется в новую цепь.

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

Что такое хардфорк в криптовалюте?

Биткоин

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

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

Разработчик биткоина, Сатоши Накамото и создатели других криптовалют выкладывают код в открытый доступ, обычно на Github.com, и любой желающий может им воспользоваться.

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

Схема

На инфографике можно увидеть, как происходит хардфорк.

Что такое софтфорк в криптовалюте?

Segwit

Софтфорк в криптовалюте – это изменение программного кода блокчейна, имеющее обратную совместимость с предыдущей системой.

Упрощенно говоря, софтфорк – это апдейт, обновление правил блокчейна. При этом не нужно переустанавливать программное обеспечение, сохраняется единая цепочка блоков.

Схема

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

Самый известный пример софтфорка – это Segregated Witness (Segwit), разработка, изменяющая структуру блока в блокчейне Биткоин. За счет Segwit удалось сделать следующее:

  1. Увеличить количество транзакций, входящих в блок. Это привело к повышению награды для майнеров, генерирующих блоки.
  2. Снизить размер комиссий.
  3. Увеличить пропускную способность блокчейна. Масштабируемость снизила время ожидания верификации транзакции, уменьшила очереди в мем-пуле.
  4. Повысить защищенность системы, устранить пластичность транзакций. Появление мульти-подписей снизило риск похищения денежных средств.
  5. Оптимизировать блокчейн. Это облегчает работу последующим девелоперам, теперь можно внедрять Lightning Network, смарт-контракты и другие полезные разработки.

Вот еще 2 примера софтфорков Биткоин:

  1. Введение стандарта проверки криптографических подписей BIP 66. Произошло в 2015 г.
  2. Введение нового формата адресов Bech32, в него входит Base32. Случилось в 2017 г.

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

Популярные вопросы о форках

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

Все криптовалюты – это форки биткоина?

Bitcoin

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

В чем разница между альткоинами и форками?

Разница в контексте употребления этих терминов и в их определении:

  1. Слово «альткоин» применяется для описания всех криптовалют, кроме биткоина. Альткоин – это альтернативный коин, то есть, просто другая монета, не-биткоин.
  2. Слово «форк» используют, когда говорят именно об обновлении блокчейна. Если инновация радикальная, и есть разделение цепочки – то это хардфорк. Если нововведения не очень значительные, и блокчейн не разделяется на две ветки – это софтфорк.

Понятия хардфорк и софтфорк могут быть применимы к биткоину, а альткоин – нет. Например, Bitcoin Cash – это хардфорк Bitcoin, а SegWit – это софтфорк Bitcoin, но ни одно, ни другое не является альткоином.

Криптовалют стало настолько много, что термин «алькоин» стал неинформативным, и его употребляют все реже.

В чем разница между токенами и форками?

Монеты

В таблице проведено сравнение этих двух явлений.

Параметр сравнения Токен (не криптовалюта) Форк (криптовалюта)
Эмиссия Централизованная, однократная Децентрализованная, однократная или постепенная
Ценность Токен не имеет самостоятельной ценности, он ценен потому, что дает право на товары, услуги или привилегии. Например, на голосование в сообществе или на часть прибыли от проекта. Имеют самостоятельную ценность, она определяется спросом и предложением на биржах.
Блокчейн Не имеет самостоятельной цепочки блоков и своих кошельков. Есть свой блокчейн, как правило есть свои кошельки.

Некоторые токены, например, OmiseGO, широко торгуются на биржах и имеют большую капитализацию.

На платформе Ethereum есть протокол для быстрого создания токенов, он называется ERC 20. С его помощью любой желающий может легко и быстро запустить свои токены, что и происходит ежедневно.

Какие хардфорки есть у Bitcoin, Ethereum, Monero, Zcash, Ripple?

Дерево

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

В семейство Bitcoin входит более 50-ти криптовалют, отделившихся от родительской цепочки Bitcoin (BTC). Вот некоторые из них.

Название Тикер
Bitcoin Cash BCH
Bitcoin Cash Plus BRC
Bitcoin XT (Bitconnect) BCC
Bitcoin Pizza BPA
Bitcoin Interest BCI
Bitcoin Gold BTG
Bitcoin God GOD
Bitcoin Cash BCH
Bitcoin Smart BCS
Quantum Bitcoin QBTC
Bitcoin Unlimited BU
Bitcoin Diamond BCD
Bitcoin Dollar BTD
Bitcoin Lite BTCL
Bitcoin Atom BTA
Bitcoin HUSH BTCH
Super Bitcoin SBTC
World Bitcoin WBTC
Bitcoin Candy CDY

И многие другие. А в этой таблице приведены некоторые криптовалюты на базе Ethereum.

Название Тикер
Ethereum Classic ETC
EtherZero ETZ
Ethereum Uranium ETHUC
Ethereum Star ETHS
Ethereum Cash ECASH
Ethereum Dark ETHD
Ethereum Lite ELITE

Всего существует более 20-ти хардфорков Эфира, и большинство из них не пользуются спросом.

Вот еще несколько хардфорков топовых криптовалют.

Родительский блокчейн Форк
Litecoin (LTC) Litecoin Cash (LCC)
Dogecoin (DOGE)
Monero (XMR) Monero V (XMV)
Ripple (XRP) Stellar (XLM)
Zcash (ZEC) Zclassic (ZCL)

Что такое гибридные хардфорки?

Схема

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

Например, гибридный хардфорк Bitcoin Private (BTCP) основан на блокчейне Zclassic (ZCL) и Bitcoin (BTC).

Что такое пользовательский софтфорк, как происходят софтфорки и хардфорки?

Сообщество

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

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

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

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

Проблема заключается в двух аспектах:

  1. Предсказуемость выполнения кода, совместимость с предыдущими версиями. Устранение ошибок и тестирование – это длительный и непростой процесс, даже такие крупные сети как Ethereum регулярно сталкиваются с чрезвычайными ситуациями. В результате этих недочетов люди теряют доступ к своим деньгам, происходят сбои в работе системы и так далее. Код пользовательского софтфорка, написанный неизвестным программистом, может вызвать большое количество неприятностей.
  2. Защита от хакеров. Человек, вводящий обновление, может быть мошенником, либо может не продумать какой-то нюанс в системе безопасности. В результате чего капиталы владельцев криптовалюты могут быть похищены.

По этим причинам пользовательский софтфорк навряд ли введут в ближайшее время.

Как заработать на хардфорках?

Валюта

Запуск новой криптовалюты на базе уже существующего блокчейна происходит таким образом:

  1. Определяется и заранее сообщается дата хардфорка.
  2. В установленный день делается снимок сети, копия всей информации на новый пустой блокчейн.
  3. После разделения цепочек на определенном блоке на кошельки владельцев старой криптовалюты начисляется релевантное количество новых монет. Пропорции бывают разными, 1:1, 1:10, 1:50 и так далее.
  4. В кошельке можно отправить заявку, claim, потребовать новые монеты.
  5. В заявке указывается, какую сумму требуется обменять на новую криптовалюту.

Процесс всегда происходит одинаково. На видео блогер показывает получение форков на примере Bitcoin BTC.

После получения монет есть несколько вариантов, как на них заработать:

  1. Продать, обменять на другую криптовалюту. Этим способом одновременно начинают пользоваться очень много людей сразу после хардфорка, в результате цена на актив падает, и никто не может сразу отыграть свои деньги.
  2. Заняться трейдингом, продать на выгодном курсе. Иногда разумное решение – это немного подождать, пока появится растущий тренд, и уже тогда избавиться от новых монет.

В большинстве случаев хардфорки – это потеря денег, менее 10% новых криптовалют оказываются прибыльными для своих покупателей. Особенно грустная ситуация с биткоином при обмене 1:1. Если человек отдает 1 BTC за 1 форк, а потом цена форка резко падает до нескольких центов и годами не поднимается выше этого значения, то вернуть свои вложения оказывается невозможно.

При покупке форков нужно внимательно анализировать перспективы нового проекта.

Каковы последствия хардфорков?

Forking Bitcoins

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

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

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

Календарь форков на 2018 год

Официальный ресурс

Есть несколько источников, из которых можно узнавать о форках:

  1. Календари криптовалют. Хороших русскоязычных ресурсов с полными календарями нет, но вот относительно неплохой пример – coindar.org/ru. Из англоязычных можно пользоваться coincalendar.info., coinscalendar.com.
  2. Социальные сети, мессенджеры (Телеграмм-каналы), новостные агентства. Об интересных и ожидаемых форках обычно много пишут.

По данным Bloomberg в 2018 году планируется более 40 хардфорков Биткоин, но названия и даты релизов есть только по выпущенным криптовалютам. Отсутствие конкретной информации в прессе связано с тем, что разработчики часто меняют названия монет, переносят даты запуска, объявляют релиз за 3-4 недели. Единого мониторинга форков с календарем и удобным для поиска интерфейсом нет. Очевидно, что кому-то пора сделать такой сервис, потому что он был бы очень удобен инвесторам.

Источник: crypta.guru

Рейтинг
( Пока оценок нет )
Загрузка ...
Заработок в интернете или как начать работать дома