Виды алгоритмов консенсуса

100
0
Дарья Боброва
Rate this post

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

Одним из основных принципов работы блокчейна является открытость. Поэтому в принятии решения о верности транзакции, которая представляет собой блок данных, всегда принимает участие более одного узла (ноды)*. Ноды должны прийти к согласию о верности транзакции, то есть к консенсусу. Для достижения консенсуса необходимо согласие как минимум 51% узлов в сети.

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

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

Самыми известными примерами являются Proof of Work (PoW) или доказательство работы и Proof of Stake (PoS) или доказательство доли. Однако мало кто знает, что существуют и другие алгоритмы. Давайте разберемся, чем они отличаются и почему они не так популярны как PoW и PoS. 

Proof of Work (PoW) или доказательство работы

Proof of Work — самый первый механизм консенсуса. Сам термин появился еще в 1999 году в в статье «Proofs of Work and Bread Pudding Protocols»  Маркуса Якобссона и Ари Джуелса. Всем хорошо известно, что данный алгоритм используется для майнинга биткоина. PoW считается наиболее безопасным, но менее масштабируемым. 

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

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

Пример блокчейнов, использующих PoW-алгоритм: биткоин, Ethereum, Dogecoin

Proof of Stake (PoS) или доказательство доли

На сегодняшний день, в связи с переходом Ethereum на Proof of Stake, этот алгоритм очень популярен.  

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

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

Пример блокчейнов, использующих PoS-алгоритм: Solana и Tezos. Возможно, Ethereum в сентябре 2022. 

Delegated Proof of Stake (DPoS) или делегированное доказательство доли 

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

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

Несмотря на то, что DPoS менее известен, чем PoS, многие считают, что этот механизм более эффективен и демократичен. Более того, он более масштабируемый, поэтому обрабатывает больше транзакций в секунду, чем Proof of Stake и Proof of Work.

Пример блокчейнов, использующих DPoS-алгоритм: Cardano, EOS и TRON

Proof of Importance (PoI) или доказательство важности 

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

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

Пример блокчейнов, использующих PoI-алгоритм: алгоритм был представлен проектом NEM. 

Proof of Authority (PoA) или подтверждение полномочий 

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

В Proof of Authority выбирается ограниченное количество валидаторов, поэтому главными его плюсами являются меньшие вычислительные мощности и дешевизна по сравнению с многими другими механизмами.

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

Пример блокчейнов, использующих PoA-алгоритм: VeChain и Xodex 

Proof of Activity (PoA) или доказательство активности 

Данный механизм консенсуса был разработан, чтобы объединить сильные стороны PoW и PoS. Однако он часто критикуется за то, что объединил главный недостаток PoW — энергоемкость, и главный недостаток PoS — выбор валидаторов на основе размера заблокированных средств. Посмотрим, как работает данный алгоритм. 

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

Пример блокчейнов, использующих PoA-алгоритм: Decred и Espers

Proof of Burn (PoB) или доказательство сжигания

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

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

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

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

Пример блокчейнов, использующих PoB-алгоритм: Slimcoin, Counterparty и Factom

Proof of Capacity / Proof of Space (PoC/PoSpace) или доказательство емкости/доказательство пространства

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

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

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

Кстати, Proof of Stake and Time, предлагаемый Chia Network, имеет схожую идею, но расширенное название. 

Пример блокчейнов, использующих PoC-алгоритм: Signum и Storj

Proof of Elapsed Time (PoET) или доказательство прошедшего времени 

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

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

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

Пример блокчейнов, использующих PoET-алгоритм: Sawtooth от Hyperledger

Proof of History (PoH) или доказательство истории

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

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

Главным достоинством такого метода является скорость и низкая стоимость транзакций при сохранении децентрализации. 

Пример блокчейнов, использующих PoH-алгоритм: алгоритм был разработан Solana. Также это самый молодой алгоритм, который пока не используется другими блокчейнами. 

Станут ли популярны другие механизмы консенсуса, кроме PoW и PoS?

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