Украина, г. Донецк, Донецкий национальный университет, 2012 |
Примеры использования блокчейн вне сети Биткоин
Развилки Биткоин и "Раздельное подтверждение" (Segregated Witness или SegWit)
В этой лекции обсудим развилки: "жесткие" и "мягкие", а также разницу между ними.
Интересно, что Биткоин прошел через оба вида развилок, причем в один и тот же месяц. Биткоин прошел через Жесткую развилку, которая привела к возникновению Биткоин Кэш - новой криптовалюты, порожденной обычной Биткоин. И сейчас он активировал SegWit, используя Мягкую развилку.
Что такое развилка?
"Развилка происходит, когда блокчейн расщепляется на два различных направления движения". Представьте, что Вы идете по дороге и встретили развилку, и теперь должны сделать выбор: повернуть направо или налево? Развилка обычно означает, что блокчейн расщепляется на два различных направления движения. И существует много причин, по которым это может произойти.
Жесткая развилка против мягкой
Давайте сравним жесткую и мягкую развилки. Жесткая развилка в блокчейне (в данном случае - в блокчейне Биткоин) выполняет изменение, которое заставляет обновиться (сделать апгрейд) каждого. Мягкая развилка выполняет изменение, которое обратно совместимо. Это означает, что нет необходимости делать апгрейд. Не будет возможности делать некоторые вещи из-за того, что не прошло обновление, но развилка сможет продолжаться и можно принять в ней участие, даже если не было обновления.
Интересные факты о развилках
Развилки в Биткоине случаются на регулярной основе. Реально всякий раз, когда два и более майнеров (добытчиков) решают какой-нибудь блок в одно и то же время, в этот момент существуют раздельные цепочки. Потому что майнер может найти решение в то же самое время, как и другой майнер и в этот момент существуют два победителя.
Так что в этот момент они оба возглавляют цепочку. В итоге, одна из цепочек побеждает другую. И это потому, что другим майнерам надо проверить правильность и после этого продолжить строить свои цепочки. Так система саморегулируется. В результате больше майнеров присоединяться к одной конкретной цепочке вместо другой, и побеждает наиболее длинная цепочка. После этого каждый последует за наиболее длинной цепочкой.
Когда такое случается, блок, который хоть и победил, но не оказался в наиболее длинной цепочке, называется блоком-сиротой. Эти блоки реализуются заново: транзакции помещаются в область памяти (Mempool), которая является местом, где транзакции дожидаются подтверждения. Но они не теряются.
Жесткая развилка 1 августа: Биткоин Кэш
Поговорим о Жесткой развилке с точки зрения Биткоин Кэш. 1 августа от Жесткой развилки родился Биткоин Кэш. Фактически это была жесткая развила, рожденная пользователями. И это произошло конкретно на блоке 478,558. Когда Биткоин Кэш активировал новый протокол, это вызвало расщепление в цепочке. И это была жесткая развилка, поскольку уже никто не мог выполнить апгрейд, чтобы пройти вдоль новой цепочки. Биткоин Кэш ушел на новый путь, в то время как Биткоин продолжил двигаться в том же направлении. Очень многие майнеры, которые были в блокчейне Биткоин, не апгрейдились до протокола Биткоин Кэш.
Давайте посмотрим с другой точки зрения. Наблюдая за цепочкой блоков, можно увидеть, что блокчейн Биткоин - это постоянно обновляемый журнал транзакций по всему пути, вплоть до начального блока.
Это блок с номером 0. Он находится там, где вся сеть Биткоин и блокчейн Биткоин начинается. Новые блоки добавляются примерно раз в 10 минут и каждый из этих блоков содержит криптографический хэш-код предыдущего блока. Так формируется блокчейн.
Все блоки криптографически связаны друг с другом. 1 августа был создан новый тип блока, размером 1.9 Мб, потому что сообщество ViaBTC запустило протокол Биткоин Кэш.
Это вызвало расщепление, потому что протокол Биткоин Кэш действительно позволял блоки размером 8 Мб, а оставшийся протокол Биткоин не позволял блоки в 8 Мб.
Это вызвало расщепление цепочки. Некоторые подписались на блоки в 8 Мб, а другие по-прежнему остались с протоколом, имеющим ограничение размера блоков в 1 Мб в блокчейне Биткоин.
Теперь давайте рассмотрим мягкую развилку, исследуя, как в Биткоин активировалось Раздельное подтверждение.