Найти тему
Крипто разбор

Что такое консенсус в блокчейне?

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

Протокол — это правила работы блокчейна, по которым происходит взаимодействие нод сети, передаются данные о транзакциях и подтверждается добыча блока.

Алгоритм консенсуса — это механизм проверки выполнения правил: верны ли балансы и подписи, все ли транзакции корректны. Это проверка верности правил соблюдения протокола.

Так, например, Bitcoin и Ethereum — это протоколы, а Proof-of-Work и Proof-of-Stake — это консенсусные алгоритмы.

PoW (Proof-of-Work —Доказательство работы)

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

Хэш (hash) —или хеш функция это функция которая осуществляет преобразование массива входных данных произвольной длины в выходную строку установленной длины, выполняемое . Преобразование, производимое хеш-функцией, называется хешированием. Результат преобразования называется хешем.

Благодаря доказательству работы операции с биткоинами и другими криптовалютами могут обрабатываться в одноранговой сети безопасным образом без необходимости в третьей стороне. В данном протоколе можно выделить 2 недостатка:

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

2- Участники данного протокола заинтересованы больше в получении выгоды, чем в развитии сети и поддержании справедливости сети, что в будущем может сказаться на безопасности.

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

Proof-of-Stake создан как альтернатива Proof-of-Work и стремится перекрыть его недостатки, например, огромное энергопотребление. Данный механизм уменьшает объем вычислительной работы, необходимой для проверки блоков и транзакций, которые обеспечивают безопасность блокчейна. Вычислительная мощность (проверка блоков) заменяется стейкингом, в результате чего способность майнинга человека рандомизируется сетью. Владельцы предлагают свои монеты в качестве залога за возможность проверки блоков и становятся «валидаторами». Валидатор проверяет правильность транзакций в блоке. Если все сделано правильно, они добавляет блок к цепочке блоков и получают награду за свой вклад. Однако, если валидатор предлагает добавить заведомо неверный блок, он теряет часть своих стейкинговых активов в качестве штрафа. Примеры использования – NXT, Tezos, Peercoin, Blackcoin.

Отличие от Proof of Work (POW):

1- Proof of Work (POW) использует метод конкурентной проверки для подтверждения транзакций и добавления новых блоков в блокчейн.

2- Proof of Stake (POS) использует случайно выбранных участников сети для проверки транзакций. 

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

Delegated Proof-of-Stake схож по работе с PoS, за исключением того, что он включает в себя механизм голосования и делегирования, чтобы стимулировать пользователей защищать сеть и проверять блоки с помощью монет, оставленных в качестве залога. Благодаря данному залогу пользователи могут участвовать в голосовании, где выбирают делегатов, которые будут ответственны за все аспекты проведения транзакций. Когда делегаты наконец избраны, важно, чтобы они смогли договориться о том, какие транзакции следует отклонить, а какие — одобрить. Применяется в Cosmos, Tron, EOS.

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

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

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

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

Proof-of-Authority (PoA)

Proof-of-Authority (доказательство полномочий, PoA) — это алгоритм консенсуса, учитывающий «заслуги» и рейтинг валидаторов. Он считается эффективным механизмом для частных блокчейнов, впервые был представлен в 2014 году одним из создателей Ethereum Гэвином Вудом и уже несколько лет используется в облачной платформе Microsoft Azure, которая включает более 200 продуктов и служб. 

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

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

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

Leased Proof-of-Stake (LPoS арендованное доказательство доли владения) — еще один вариант PoS-алгоритма, разработанный специально для блокчейна Waves. 

LPoS призван решить проблему «имущественного ценза» в классическом PoS, в рамках которого пользователи с недостаточным балансом не могут участвовать в стейкинге и зарабатывать новые монеты. Это оборачивается централизацией. 

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

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

Proof-of-Space (PoSpace доказательство пространства также встречается название Proof-of-Capacity, доказательство работоспособности, PoC)

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

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

Преимущества PoC — это низкая энергозатратность и возможность майнить с любого устройства, даже со смартфона. 

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

Это алгоритм, альтернативный классическим PoW и PoS. 

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

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

Главный недостаток PoB — он подходит только для зрелых проектов, в которых основная эмиссия монет уже завершена, и им есть что сжигать. Поэтому алгоритм не популярен, но все же иногда используется, например, в блокчейне Counterparty (XCP).

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

Это алгоритм консенсуса от компании Intel. Считается одним из самых сбалансированных и совершенных консенсусных алгоритмов и используется в основном корпоративными блокчейнами, например, Hyperledger.

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

Главный недостаток PoET — он требует обязательного использования процессора Intel, поддерживающего SGX.