Два этих механизма консенсуса позволяют блокчейн-сетям работать стабильно и слажено, оставаясь при этом безопасными.
Хотя история транзакций Биткоина надежно выстраивается с помощью метода доказательства работы (proof-of-work, PoW), он потребляет много электроэнергии, а количество транзакций, которые он может обрабатывать одновременно, ограничено. В результате появились новые механизмы консенсуса, ориентированные на менее энергоемкий метод, одним из которых является Proof-of-Stake (PoS).
Для эффективного функционирования распределенных сетей необходимо решить несколько проблем. Децентрализованные криптовалютные сети, в которых нет центрального органа, такого как банки или FinTech-компании, должны гарантировать, что ни один из участников сети не потратит одни и те же деньги несколько раз. Кроме того, механизм консенсуса предотвращает разрушение сети в результате хард форка.
В централизованной организации, такой как банк, подобная деятельность контролируется советом директоров или регуляторами. Поскольку криптовалюта основана на поддержке сообщества, блокчейн должен достигать консенсуса для проверки транзакций и блоков другими методами.
Proof-of-Work и Proof-of-Stake — два основных механизма, которые в настоящее время используются в DeFi для криптографического достижения консенсуса. Когда Сатоши Накамото создавал Биткоин (первую криптовалюту), ему нужно было придумать способ проверки транзакций без участия третьей стороны. Для этого был использован механизм консенсуса Proof-of-Work, позволяющий сетям договариваться о том, какие транзакции являются действительными.
Proof-of-Stake (PoS) — это современный метод консенсуса, который используется в новых DeFi проектах и криптовалютах. Некоторые сразу начинают работать с PoS или переходят на PoS с PoW. Однако построение PoS-сети сразу — это серьезная технологическая проблема, и это не так просто, как использование PoW для достижения консенсуса.
Что такое Proof of Work (PoW)
Впервые, концепция Proof-of-Work была предложена в 1993 году для борьбы со спамом в сети и атаками типа "отказ в обслуживании". Затем концепция PoW была популяризирована Сатоши Накамото для подтверждения новых блоков в сети Биткоин в 2008 году.
PoW основана на способности пользователей сети доказать, что вычисляемая задача решена. Для ответа на математическое уравнение узлом (нодой) задействуется некоторая вычислительная мощность, и после решения уравнения новый блок в цепи подтверждается. Узел — это любое физическое устройство, например персональный компьютер, которое может принимать, отправлять или пересылать данные в сети, состоящей из других устройств.
Тот, кто быстрее всех решит математическую головоломку, создаст криптографическую связь между текущим и предыдущим блоками и заработает несколько свежих криптомонет. Этот процесс известен как майнинг, а вычислительные мощности — как майнеры. Именно благодаря их совместным усилиям блокчейн становится безопасным для всех участников.
Как работает PoW
Блокчейн — это система, состоящая из серии блоков, расположенных в хронологическом порядке на основе порядка транзакций. Генезис-блок, или нулевой блок, — это первый блок в PoW-блокчейне, который жестко закодирован в программном обеспечении. Этот блок по определению не ссылается на предыдущий блок. Последующие блоки, загружаемые в блокчейн, всегда ссылаются на предыдущие блоки и содержат полную и обновленную копию распределенного реестра.
В результате конкурентной борьбы, в которой майнеры затрачивают вычислительные ресурсы для представления легитимных блоков, соответствующих правилам сети, алгоритмы PoW определяют, кто получит право вносить новые записи в реестр. Этот реестр, блокчейн, отслеживает все транзакции и организует их в последовательные блоки, чтобы ни один пользователь не мог потратить свои средства дважды. Для предотвращения фальсификации реестр является распределенным, что позволяет другим пользователям быстро отклонить измененную версию.
На практике пользователи выявляют фальсификацию с помощью хэшей — длинных строк чисел, выполняющих функцию доказательства работы. Хеш-функция является односторонней, то есть ее можно использовать только для проверки соответствия данных, сгенерировавших хеш, исходным данным.
После этого узлы проверяют транзакции, предотвращают двойные траты и решают, следует ли добавлять предложенные блоки в цепочку. Действие, при котором дважды совершаются платежи в одной и той же валюте с целью обмана получателя этих средств, известно как двойная трата (Double-spending). Двойные траты могут привести к хаосу в сети и лишить ее одного из наиболее ценных свойств: неизменяемости, децентрализации и надежности.
Proof-of-work делает двойную трату невероятно сложной, поскольку изменение любой части блокчейна потребует повторного майнинга всех последующих блоков. Поскольку оборудование и электроэнергия, необходимые для выполнения хэш-функций, стоят дорого, это не позволяет монополизировать вычислительные мощности сети.
Для достижения консенсуса и обеспечения легитимности транзакций, записанных в блокчейн, протокол PoW сочетает в себе вычислительную мощность и криптографию. Майнеры соревнуются в поиске правильных ответов на математические задачи в процессе хеширования для создания новых блоков. Для этого майнеры разгадывают хэш, который представляет собой строку псевдослучайных чисел. Криптографический хэш (например, SHA-256) — это разновидность подписи текста или файла данных. Для текста SHA-256 обеспечивает практически уникальную 256-битную (32-байтную) подпись.
Соединяясь с данными в блоке и обрабатываясь хэш-функцией, хэш должен генерировать результат, удовлетворяющий заявленным требованиям протокола. Майнеры, получившие хэш, затем транслируют его в сеть, позволяя другим майнерам проверить правильность ответа. Если ответ верен, блок добавляется в блокчейн, а майнер получает вознаграждение за блок. В настоящее время вознаграждение за блок Биткоина составляет 6,25 BTC.
Плюсы и минусы PoW
Плюсы PoW
В PoW майнеры должны платить большие деньги за электроэнергию, чтобы решить сложные математические головоломки и обработать блок в сети. Электроэнергия используется для питания машин, которые генерируют цифровые активы в процессе проверки транзакций, называемом майнингом. Это имеет решающее значение для безопасности сети, поскольку позволяют вести точный учет транзакций и придерживаться определенной, заслуживающей доверия системы.
Для того, чтобы обмануть блокчейн, злоумышленнику потребуется завладеть 51% вычислительной мощности сети. Если в системе proof-of-work происходит форк блокчейна, майнерам приходится выбирать, переходить ли на новую сеть после форка или продолжать поддерживать исходный блокчейн.
Чтобы поддерживать оба блокчейна, майнеру придется разделить свои вычислительные ресурсы между двумя результатами форка. Благодаря экономическим стимулам, система proof-of-work естественным образом предотвращает постоянные форки и побуждает майнеров выбирать тот, который не наносить вред сети.
Эти характеристики вписываются в теорию игр, в которой майнеры должны действовать стратегически, чтобы оптимизировать прибыль. В условиях ограниченной рациональности люди всегда будут выбирать самое простое решение. Переход на новую цепочку усложняет ситуацию. Поэтому теория игр помогает олигополиям избегать внутренней коррупции и принимать логичные решения.
Минусы PoW
Несмотря на перечисленные преимущества, PoW может быть достаточно затратным и неэффективным с точки зрения использования ресурсов. Майнерам приходится нести множество расходов, в том числе на новейшее оборудование, которое быстро изнашивается. При майнинге выделяется большое количество тепла, и в зависимости от местоположения майнера может потребоваться непомерно большое количество электроэнергии. Кроме того, при перегрузке сети резко возрастает плата за транзакции.
Если блокчейн-сеть молодая и слабая, то она подвержена атаке 51% и более крупные майнеры могут обратить свое оборудование против сети, выводя из игры более мелких майнеров, в результате чего они больше не смогут получать вознаграждение за транзакции и блоки.
Что такое Proof of Stake (PoS)
В 2011 году на форуме Bitcointalk был предложен новый подход, призванный устранить неэффективность механизма консенсуса PoW и снизить объем вычислительных ресурсов, необходимых для работы блокчейн-сети. Вместо выполнения ощутимой работы эта концепция основана на наличии верифицируемой доли в экосистеме.
Другими словами, для подтверждения транзакций в криптосети пользователю достаточно показать, что он владеет определенным количеством криптовалюты, которое является собственностью блокчейна. Такой механизм консенсуса, используемый в блокчейн-сетях для достижения распределенного консенсуса, называется механизмом консенсуса Proof-of-Stake (PoS) — доказательство доли владения. А валидаторы сети — стейкеры.
Например, стейкер A стейкает 30 монет, стейкер B — 50 монет, стейкер C — 75 монет, а стейкер D — 15 монет. В этом случае стейкер C получит приоритет на запись и подтверждение следующего блока.
Как работает PoS
Генезис-блок — это начальный блок в PoS-блокчейне, который также жестко закодирован в программе. Последующие блоки, загружаемые в блокчейн, всегда ссылаются на предыдущие блоки и содержат полную и обновленную копию распределенного реестра.
Добычу блоков в PoS-сетях называют "чекана", "минтинг" или "форджинг"
В PoS-сетях участники не конкурируют за право добывать блоки. PoS-блокчейн, в отличие от PoW-блокчейна, не ограничивает тех, кто может предлагать блоки. Такие механизмы консенсуса как proof-of-stake, позволяют отказаться от майнинга.
Система proof-of-stake имеет ряд преимуществ перед схемой proof-of-work, в том числе большую энергоэффективность, поскольку чеканка блоков не потребляет много энергии и не требует самого современного оборудования. Proof-of-stake способствует увеличению числа узлов в сети, а следовательно, децентрализации.
Большее количество узлов в сети способствует выработке норм управления, обеспечивающих более надежный иммунитет к централизации. В системах PoS это становится возможным благодаря более высокой степени независимости оборудования. Proof-of-stake часто рассматривается как алгоритм консенсуса, который с наименьшей вероятностью приведет к централизации сети.
Пользователи, желающие участвовать в процессе чеканки блоков в PoS-блокчейнах должны иметь определенную сумму криптовалюты сети. Шансы быть выбранными в качестве следующего производителя блоков определяются количеством криптоактивов, которые используются в качестве стейка. Участники, действующие недобросовестно, в результате своих нечестных действий могут потерять свой стейк.
PoS может включать и другие определяющие элементы, которые не всегда выгодны самым богатым узлам, в том числе продолжительность времени, в течение которого узел удерживает стейк, а также чистую рандомизацию. Под вознаграждением за блок в PoS понимается субсидия, которую блокчейн предоставляет тому, кто подает действительный блок.
В PoS выбор блока основан на владении монетами (стейком), поэтому биржи предлагают услуги стейкинга, позволяющую стейкать криптовалюту от своего имени в обмен на более стабильное вознаграждение. Несколько участников могут присоединиться к стейкинг-пулу, чтобы объединить свои стейки и максимизировать шансы на вознаграждение.
Плюсы и минусы PoS
Плюсы PoS
В PoS решена проблема больших энергозатрат. Системы на базе PoS гораздо более масштабируемы, чем системы на базе PoW, и транзакции в них утверждаются гораздо быстрее. Масштабируемость означает, что система обрабатывает больше транзакций в секунду (TPS).
Масштабируемость сети PoS достигается за счет установления консенсуса перед созданием блоков, что позволяет обрабатывать тысячи запросов в секунду с задержкой менее миллисекунды.
Минусы PoS
С другой стороны, Proof-of-stake имеет свои сложности. Например, в сети по-прежнему действует правило "у кого больше стейк, тот в приоритете". Это дает больше власти ранним последователям и тем, у кого больше денег. Поскольку концепция еще относительно нова, она может иметь недостатки, которые пока не очевидны. Кроме того, система proof-of-stake не препятствует форкам. При разделении блокчейна валидатор получит дубликат своего стейка в новом блокчейне, что позволяет ему потенциально дважды потратить свои монеты и получить взамен двойную комиссию за транзакцию.
Proof-of-Work против Proof-of-Stake
Из приведенных выше описаний следует, что оба механизма консенсуса имеют свои преимущества и недостатки. Все они преследуют одну и ту же основную цель, но используют для ее достижения разные методы.
Критическое различие между различными механизмами консенсуса заключается в том, как они делегируют полномочия и вознаграждают проверку транзакций.
Когда следует использовать PoW и PoS
Механизм консенсуса имеет решающее значение для распределенной структуры блокчейн-сети, поскольку он снижает централизацию, при подтверждении транзакций.
Для сохранения неизменяемости и распределенности сети необходим полноценно функционирующий механизм консенсуса.
Тип консенсуса зависит от потребностей сети. Например, proof-of-work необходим для предотвращения мошенничества, обеспечения безопасности и укрепления доверия в сети. Майнеры не могут быть введены в заблуждение относительно транзакции благодаря защите, обеспечиваемой PoW. Proof-of-work — это метод защиты истории транзакций криптоактива, одновременно повышающий сложность изменения данных с течением времени.
Требование к участвующему узлу продемонстрировать, что работа выполнена и передана, дает ему право добавлять новые транзакции в блокчейн, защищая от любых злоумышленных действий.
Если в сети существует множество копий блокчейна, PoW помогает определить наиболее легитимную копию. Наконец, proof-of-work позволяет майнерам свободно входить и выходить из сети, поддерживая при этом постоянную скорость работы.
Аналогичным образом, производительность и безопасность сети являются существенными аспектами использования механизма, основанного на PoS. PoS используется в тех случаях, когда требуется высокая скорость транзакций. Валидаторы, скорее всего, будут владеть значительным количеством сетевых монет, что финансово стимулирует их к поддержанию безопасности цепи.
Однако существуют определенные сомнения в надежности защиты PoS и PoW от угроз, которые смогут развеять приверженцы движения Шифропанк, путем разработки и внедрения новых методов защиты распределенных блокчейн-сетей.