Какими бывают алгоритмы консенсуса в блокчейне. И почему это важно

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

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

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

Proof of Work (PoW)

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

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

Суть алгоритма PoW — в том, что хэш найти сложно и затратно, но проверить, что именно он является (либо не является) решением задачи, очень просто.

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

Фактически в PoW-блокчейнах майнеры одновременно пытаются найти очередной блок. Соревнуются они за счёт мощностей своего оборудования.

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

Proof of Stake (PoS)

Алгоритм доказательства доли владения, который стал первой альтернативой PoW. Он не требует строительства мощных майнинг-ферм. Эффективность майнинга определяется тем, сколько монет находится у майнера в кошельке.

Каждый узел в PoS-блокчейне имеет определенный адрес.

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

Впервые PoS-алгоритм использовали в блокчейне криптовалюты PPCoin (позднее её переименовали в PeerCoin). Одна из самых популярных PoS-валют сегодня — Nxt.

Алгоритм PoS не требует высоких затрат энергии и колоссальных средств на строительство майнинг-ферм и обеспечивает пассивный доход от хранения монет в кошельке. Но он подходит только для платформ с фиксированной эмиссией (количеством выпускаемых монет) и предполагает крайне низкие шансы на добычу очередного блока майнерами с небольшим количеством монет в кошельке.

Leased Proof of Stake (LPoS)

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

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

В LPoS мелкие держатели монет могут сдавать свои балансы в аренду стековым узлам.

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

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

Одна из самых популярных криптовалют на базе алгоритма LPoS — это Waves.

Delegated Proof of Stake (DPoS)

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

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

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

В DPoS предполагается, что сеть принадлежит всем пользователям. Держатели монет могут голосовать за изменение параметров сети.

DPoS использует, к примеру, BitShares.

Proof of Importance (PoI)

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

Чем пользователь «полезнее» для блокчейна, тем выше его шансы на успех.

Алгоритм консенсуса PoI применяется в блокчейне NEM.

Proof of Service

Чтобы получить награду за майнинг в этом случае, нужно приобрести определённое количество монет и запустить мастерноду (мастер-узел).

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

Впервые алгоритм Proof of Service использовали в криптовалюте DASH. Для участия в майнинге необходимо приобрести 1000 монет (около 20 биткоинов по курсу). Как только вы лишитесь хотя бы части этой суммы, перестанете участвовать в распределении вознаграждения.

Выводы

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

В чистом виде описанные алгоритмы в новых криптовалютах применяются всё реже. Так, сейчас PeerCoin и Reddcoin используют алгоритм PoW для первоначального распределения, а PoS — для подтверждения транзакций. Ethereum собирается перейти от PoW к PoS для снижения затрат энергии, необходимой для работы блокчейна.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.